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

# Model Providers

> Add model providers to your workspace so your apps can use LLMs, embedding models, and other AI services

Every Dify app needs at least one model provider. Install a provider, add your API key, and all apps in the workspace can use its models.

<Warning>
  API keys grant workspace-wide model access and trigger direct billing through each provider's account. Only the workspace owner and admins can manage providers.
</Warning>

## Add a Provider

1. In **Settings** > **Model Provider**, browse the **Install model providers** section or visit the [Marketplace](https://marketplace.dify.ai/) for more options.

2. After installing, click **Setup** on the provider card and enter your API key (and any other required credentials, such as a custom endpoint URL or organization ID). Dify validates the credentials before making the provider available.

## Add a Custom Model

Most providers bring their own models, so once you authorize one, its models are ready to use. You add a model yourself only when the one you need isn't there, typically in two situations:

* You run your own inference server, such as Ollama or Xinference, and Dify has no way to know which models you've loaded.
* A provider lists its models, but the specific one you want, such as a newly released or fine-tuned model, is missing.

Click **Add Model** on the provider card, then give the model a name and its credentials. If a provider only serves a fixed set of models, it won't offer this option.

## Load Balancing

Load balancing lets you configure multiple sets of credentials for a model and distribute requests across them automatically, so no single credential hits its rate limit under heavy use.

By default, Dify uses a round-robin strategy, routing each request to the next credential in the pool. If a credential triggers a rate limit, it is taken out of rotation for one minute before Dify retries it.

To set it up:

1. Find the model, click **Configure**, and open **Load Balancing**.
2. Add credentials to the load balancing pool.
3. Enable at least two credentials, then click **Save**. Models using load balancing are marked with a dedicated icon.

<Frame>
  <img src="https://mintcdn.com/dify-enterprise-docs/5auvTYL_hjrCYTVu/images/add_load_balancing_credential.png?fit=max&auto=format&n=5auvTYL_hjrCYTVu&q=85&s=dad45529596776c598d2139f323728b0" alt="Add credentials to the load balancing pool" width="1194" height="872" data-path="images/add_load_balancing_credential.png" />
</Frame>

<Frame>
  <img src="https://mintcdn.com/dify-enterprise-docs/1MakDj0gpfYoNPPL/images/load_balancing_icon.png?fit=max&auto=format&n=1MakDj0gpfYoNPPL&q=85&s=b67e728200de0c7bb0de033ac6b3cad0" alt="A model marked with the load balancing icon" width="1564" height="358" data-path="images/load_balancing_icon.png" />
</Frame>

## Set Default Models

Click **System Model Settings** in the toolbar to assign the fallback model for each category. Apps and nodes that don't specify a model use these:

* **System Reasoning Model**: the default LLM.
* **Embedding Model**: used for knowledge base indexing and retrieval.
* **Rerank Model**: re-ranks retrieval results by relevance.
* **Speech-to-Text Model**: converts audio input to text.
* **Text-to-Speech Model**: converts text responses to audio.
