The **Model Configuration** panel lets you assign AI models to different roles and add new model providers — all through the GUI, no file editing required.  ## Model roles Yao Agents uses a role-based model system. Each role serves a different purpose, and you can assign a different model (or provider) to each role: | Role | Purpose | When it's used | |------|---------|----------------| | **Default** | General-purpose tasks | Most conversations, everyday Q&A, content generation. | | **Heavy** | Complex reasoning | Deep analysis, long planning, multi-step problem solving. | | **Light** | Fast, simple tasks | Quick replies, classification, short summaries. | | **Vision** | Image understanding | Reading screenshots, analyzing charts, OCR tasks. | | **Audio** | Speech-to-text | Voice input transcription. | | **Embedding** | Text embedding | Semantic search, document similarity. | ## Assigning models to roles 1. Open **Settings → Model Configuration**. 2. For each role, select a model from the dropdown. Available models come from your configured providers. 3. Click **Save**.  If you haven't added any providers yet, use the [Cloud Service](/docs/en-us/settings/cloud-service) — it gives you instant access to all roles without additional setup. ## Adding a model provider To use models from OpenAI, Anthropic, DeepSeek, Google, or any OpenAI-compatible service: 1. Click **Add Provider** at the bottom of the Model Configuration page. 2. Select the provider type (OpenAI, Anthropic, DeepSeek, Google, Ollama, or Custom). 3. Enter the required information: | Field | Description | |-------|-------------| | Name | A display label for this provider (e.g., "My OpenAI"). | | API Host | The base URL of the provider's API. Pre-filled for known providers. | | API Key | Your API key from the provider. | | Models | The specific model identifiers to make available (e.g., `gpt-4o`, `claude-sonnet-4-5-20250929`). | 4. Click **Save**. The new models appear in the role dropdowns immediately.  ## Editing or removing a provider Click the provider card to edit its settings. Use the delete button to remove a provider. Removing a provider unassigns any roles that were using its models — you'll need to reassign those roles. ## Supported providers | Provider | Type | Notes | |----------|------|-------| | OpenAI | `openai` | GPT-4o, GPT-4.1, o3, o4-mini, etc. | | Anthropic | `anthropic` | Claude Opus 4, Claude Sonnet 4.5, etc. | | DeepSeek | `openai` | DeepSeek V4, R1, etc. OpenAI-compatible endpoint. | | Google | `openai` | Gemini models via OpenAI-compatible gateway. | | Ollama | `openai` | Local models. Set host to `http://127.0.0.1:11434/v1/`. | | Any OpenAI-compatible | `openai` | vLLM, LiteLLM, Azure OpenAI, Groq, Together, etc. | ## Advanced: manual connector files For advanced use cases (custom capabilities, thinking mode configuration, Azure deployments), you can still create connector files manually. See [Environment Variables](/docs/en-us/settings/env-vars) for the underlying `.conn.yao` file format and directory structure.