# Providers

Voxcode supports multiple model providers so you can pick the best model per task.

## Provider Matrix

| Provider | Environment Variable(s) | Example Models | Notes |
| --- | --- | --- | --- |
| Anthropic | `ANTHROPIC_API_KEY` | `claude-sonnet-4-5`, `claude-opus-4-1` | Strong coding and reasoning |
| OpenAI | `OPENAI_API_KEY` | `gpt-4o`, `gpt-5` | General purpose and multimodal |
| Google Gemini | `GEMINI_API_KEY` | `gemini-2.5-pro`, `gemini-2.5-flash` | Fast and broad model family |
| Mistral | `MISTRAL_API_KEY` | `mistral-large`, `codestral-latest` | Coding-focused options |
| Amazon Bedrock | `AWS_ACCESS_KEY_ID`, `AWS_SECRET_ACCESS_KEY`, `AWS_REGION` | `anthropic.claude-3-7-sonnet`, `meta.llama3-70b-instruct` | Uses AWS credentials |
| Azure OpenAI | `AZURE_OPENAI_API_KEY`, `AZURE_OPENAI_BASE_URL` | Deployment-specific GPT models | Enterprise Azure setup |
| Groq | `GROQ_API_KEY` | `llama-3.3-70b-versatile` | Low latency inference |
| OpenRouter | `OPENROUTER_API_KEY` | `anthropic/claude-sonnet-4.5`, `openai/gpt-4o` | Unified access across vendors |
| Together AI | `TOGETHER_API_KEY` | `meta-llama/Llama-3.3-70B-Instruct-Turbo` | Broad OSS model catalog |
| xAI | `XAI_API_KEY` | `grok-code-fast-1` | xAI model access |

## Setup Examples

### macOS/Linux

```bash
export ANTHROPIC_API_KEY="your-key"
export OPENAI_API_KEY="your-key"
```

### Windows PowerShell

```powershell
$env:ANTHROPIC_API_KEY="your-key"
$env:OPENAI_API_KEY="your-key"
```

> [!IMPORTANT]
> Keep API keys out of git. Do not commit secrets to `.env` files tracked by your repository.

## Choosing a Provider

- Use **higher-capability models** for architecture, refactors, or debugging deep issues.
- Use **faster/lower-cost models** for routine edits and repo navigation tasks.
- Keep a default provider, then override per task when needed.

## Troubleshooting

- `401` / `403`: check key validity and account access
- model not found: verify exact model id spelling
- timeout: switch to a faster model or reduce prompt size

See also [settings.md](settings.md) and [usage.md](usage.md).
