> ## Documentation Index
> Fetch the complete documentation index at: https://langwatch.ai/docs/llms.txt
> Use this file to discover all available pages before exploring further.

> ## Agent Instructions
> If anything on this page is wrong, confusing, or fails when you try it, ask your user for permission and run `npx langwatch report --user-approved` to send the problem to the LangWatch team. No login is needed and secrets are redacted locally. `npx langwatch report --help` has the details.

# Model Providers

> Store the LLM credentials that LangWatch uses for evaluators, Workflows, the playground, Agent Testing and Langy once, at the organization, team or project scope.

## What a model provider is

A model provider is a saved credential for one LLM vendor, with the scopes that can use it. LangWatch uses it whenever a feature calls a model on your behalf: online evaluators, Workflows, the prompt playground, Agent Testing, topic clustering, embeddings, trace AI search, Langy and the LangWatch AI Gateway.

Manage them at **Settings > Model Providers**. The table lists each configuration with its **Scope** chips, broadest scope first. The row menu has **Edit Provider**, **Test Connection** and **Delete Provider**. On a self-hosted deployment, a vendor whose key is set in the server environment shows as a row with a **System** chip and no menu.

![The Add Model Provider menu with the provider types](https://mintcdn.com/langwatch/MjC98pQzFpMBr6tu/images/platform/model-providers-add-menu.png?fit=max\&auto=format\&n=MjC98pQzFpMBr6tu\&q=85\&s=41220ec8a162133878af6f18c986153d)

## Supported providers

**Add Model Provider** opens a menu with one entry per vendor:

| Provider | Credentials |
| - | - |
| OpenAI | API key, or a base URL for an endpoint that needs none |
| Codex (OpenAI account) | Sign in with your OpenAI account. Used by coding features only |
| Anthropic | API key, or a base URL |
| Gemini | API key. Add a project and a location to use Gemini through Vertex AI |
| Azure OpenAI | API key and endpoint, optional API version. **Use API Gateway** switches to an API gateway base URL and version. Optional **Decisions Deployment** and **Microsoft Decision 1 Deployment** name the deployments [Instant Evals can run on](https://langwatch.ai/docs/features/instant-evals/own-model.md#azure) |
| Bedrock | AWS access key id, secret access key and region |
| Vertex AI | Service account JSON, project and location |
| DeepSeek, Doubleword, xAI, Cerebras, Groq, Voyage AI | API key |
| ElevenLabs | API key, optional webhook secret. See [Voice Agents](https://langwatch.ai/docs/agent-testing/voice-agents.md#before-you-start) for the key permissions it needs |
| Azure Safety | Content Safety endpoint and key, for the Azure safety evaluators |
| Inception, Perplexity, TypeSafe, OpenRouter, Fireworks | API key, for the decision models [Instant Evals can run on](https://langwatch.ai/docs/features/instant-evals/own-model.md) |
| Cloudflare Workers AI | Account id and API token, for the decision models [Instant Evals can run on](https://langwatch.ai/docs/features/instant-evals/own-model.md) |
| Custom (OpenAI-compatible) | Base URL and optional API key, for a LiteLLM proxy, vLLM or any endpoint that serves `/chat/completions` |

You can save several configurations of the same vendor, for example one OpenAI account per region, and tell them apart by **Name**.

## Add a provider

**1. Pick the vendor**

Click **Add Model Provider** and choose the vendor. The drawer opens.

**2. Name it**

**Name** is required, up to 128 characters. It is how the configuration appears in model pickers and in the LangWatch AI Gateway.

**3. Pick the scope**

**Scope** is a multi-select of the organization, teams and projects. It starts on the widest scope you can manage. The helper text states who can use the configuration, for example "Only this project can use this provider." You need `organization:manage`, `team:manage` or `project:manage` for each scope you pick.

**4. Enter the credentials**

Fill in the vendor's fields. Below them: **Extra Headers** sent with every request, the routing handle line ("Requests reach this provider as `openai/<model>`") for the LangWatch AI Gateway, **Custom Models**, and **Advanced (Gateway)** for rate limits and fallback priority.

**5. Save and test**

Save, then open the row menu and click **Test Connection**. The verdict appears under the provider name in its row: **Connection works**, the vendor's refusal message, or a note that the provider cannot be tested automatically and is checked on first use. The test runs on the server with the saved key; the browser never receives it.

![The provider drawer with the Scope picker open](https://mintcdn.com/langwatch/MjC98pQzFpMBr6tu/images/platform/model-providers-scope.png?fit=max\&auto=format\&n=MjC98pQzFpMBr6tu\&q=85\&s=26cd1f04bf0a4b7ff78805a4099fbf2e)

![The OpenAI row with Connection works under the provider name after Test Connection](https://mintcdn.com/langwatch/MjC98pQzFpMBr6tu/images/platform/model-providers-test-connection.png?fit=max\&auto=format\&n=MjC98pQzFpMBr6tu\&q=85\&s=f70749917f2055ff2b922382edb2c93a)

Bedrock, Vertex AI, Azure OpenAI, Azure Safety, Voyage AI and Codex cannot be tested automatically. Their settings are checked the first time a feature uses them.

Scope is fixed after creation. To move a configuration to another scope, delete it and create it again at the new scope.

Keys are encrypted at rest with AES-GCM. After save the drawer shows a masked placeholder instead of the key; type a new value to replace it, or leave the placeholder to keep it.

## Custom models

Every LLM provider has a **Custom Models** section. Click **Add**, choose a chat model or an embeddings model, and enter the model id. The entry appears in the model pickers next to the vendor's known models, which **See all models** lists. Use it for fine-tuned models, new releases and the models behind a Custom (OpenAI-compatible) endpoint.

## Who can see and use a configuration

A project sees every configuration scoped to the project itself, to its team or to its organization. Each one is a separate entry in the model pickers under its own name.

| Scope | Create, edit and delete | See |
| - | - | - |
| Organization | `organization:manage` | `organization:view` |
| Team | `team:manage` | `team:view` |
| Project | `project:manage` | `project:view` |

The **All you can see** filter above the table narrows the list and the default models to one scope. Every save and delete is written to the [Audit Log](https://langwatch.ai/docs/platform/audit-log.md) as `modelProvider.update` or `modelProvider.delete`.

## Default models

The **Default Models** section on the same page sets the model each feature uses unless the user picks one in the feature itself. A config sets a model per role (**Default**, **Fast**, **Langy**, **Embeddings**, **Instant Evals**) and per feature, for example the model a new prompt or evaluator starts with, the Langy chat model, trace AI search, workflow commit messages, and the topic clustering model and embeddings.

Click **Add config**, pick the scopes and the models. A project config beats a team config, which beats an organization config. A feature that no config names inherits from the wider scope.

The **Instant Evals** column takes only decision models: LangWatch Evals Preview, the default, or one on your own key. See [Run Instant Evals on your own decision model](https://langwatch.ai/docs/features/instant-evals/own-model.md).

![The Default Models section with one config and the Add config button](https://mintcdn.com/langwatch/MjC98pQzFpMBr6tu/images/platform/model-providers-default-models.png?fit=max\&auto=format\&n=MjC98pQzFpMBr6tu\&q=85\&s=108c2bc753be4871d6b9e16981d852d5)

## Self-hosted deployments

Set vendor keys as environment variables to get **System** configurations available to every project. See [self-hosting](https://langwatch.ai/docs/self-hosting/overview.md) for the variable names. Configurations added in the settings page work alongside them.

**Also check:** [Access Control (RBAC)](https://langwatch.ai/docs/platform/rbac.md) for the permissions above, [Custom Models](https://langwatch.ai/docs/integration/custom-models.md) for OpenAI-compatible endpoints, and [LangWatch AI Gateway providers](https://langwatch.ai/docs/ai-gateway/providers/overview.md) for routing traffic through a saved configuration.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.