# Model Clients
Loki supports a large number of model providers (referred to as `clients` since Loki is a client of these providers). In
order to use them, you must configure each one in the `clients` array in the global Loki configuration file.
The location of the global Loki configuration file varies between systems, so you can use the following command to
locate your configuration file:
```shell
loki --info | grep 'config_file' | awk '{print $2}'
```
## Quick Links
- [Supported Clients](#supported-clients)
- [Client Configuration](#client-configuration)
- [Extra Settings](#extra-settings)
---
## Supported Clients
Loki supports the following model client types:
* Azure AI Foundry
* AWS Bedrock
* Anthropic Claude
* Cohere
* Google Gemini
* OpenAI
* OpenAI-Compatible
* GCP Vertex AI
In addition to the settings detailed below, each client may have additional settings specific to the provider. Check the
[example global configuration file](../../config.example.yaml) to verify that your client has all the necessary fields
defined.
## Client Configuration
Each client in Loki has the same configuration settings available to them, with only special authentication fields added
for specific clients as necessary. They are each placed under the `clients` array in your global configuration file:
```yaml
clients:
- name: client1
# ... client configuration ...
- name: client2
# ... client configuration ...
```
### Metadata
The client metadata uniquely identifies the client in Loki so you can reference it across your configurations. The
available settings are listed below:
| Setting | Description |
|----------|-----------------------------------------------------------------------------------------------|
| `name` | The name of the client (e.g. `openai`, `gemini`, etc.) |
| `models` | See the [model settings](#model-settings) documentation below |
| `patch` | See the [client patch configuration](./PATCHES.md#client-configuration-patches) documentation |
| `extra` | See the [extra settings](#extra-settings) documentation below |
Be sure to also check provider-specific configurations for any extra fields that are added for authentication purposes.
### Model Settings
The `models` array lists the available models from the model client. Each one has the following settings:
| Setting | Required | Model Type | Description |
|-----------------------------|----------|-------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `name` | * | `all` | The name of the model |
| `real_name` | | `all` | You can define model aliases via the `name` field. However, Loki still needs to know the real name
of the model so it can query it. For example: If you have `name: gpt-alias`, then you must
also define `real_name: gpt-oss:latest` |
| `type` | * | `all` | The type of model. Loki supports only 3 types of models: