These docs track the main branch and may describe unreleased features. The stable documentation lives at docs.docker.com.

Model Providers

docker-agent supports multiple AI model providers. Choose the right one for your use case, or use multiple providers in the same configuration.

Supported Providers

Quick Comparison

Provider Key Local? Strengths
OpenAI openai No Broad model selection, tool calling, multimodal
Anthropic anthropic No Strong coding, extended thinking, large context
Google google No Fast inference, competitive pricing, multimodal
AWS Bedrock amazon-bedrock No Enterprise features, multiple models, AWS integration
Docker Model Runner dmr Yes No API costs, data privacy, offline capable

Additional Built-in Providers

docker-agent also includes built-in aliases for these providers:

Provider Alias API Key / Env Variable
ChatGPT (OpenAI account) chatgpt None (sign in via docker agent setup)
OpenCode Zen opencode-zen OPENCODE_API_KEY
OpenCode Go opencode-go OPENCODE_API_KEY
Mistral mistral MISTRAL_API_KEY
xAI (Grok) xai XAI_API_KEY
Nebius nebius NEBIUS_API_KEY
NVIDIA NIM nvidia NVIDIA_API_KEY
MiniMax minimax MINIMAX_API_KEY
Baseten baseten BASETEN_API_KEY
OVHcloud ovhcloud OVH_AI_ENDPOINTS_ACCESS_TOKEN
Groq groq GROQ_API_KEY
Fireworks AI fireworks FIREWORKS_API_KEY
DeepSeek deepseek DEEPSEEK_API_KEY
Cerebras cerebras CEREBRAS_API_KEY
Together AI together TOGETHER_API_KEY
Hugging Face huggingface HF_TOKEN
Cloudflare Workers AI cloudflare-workers-ai CLOUDFLARE_API_TOKEN + CLOUDFLARE_ACCOUNT_ID
Moonshot AI moonshot MOONSHOT_API_KEY
Vercel AI Gateway vercel AI_GATEWAY_API_KEY
Cloudflare AI Gateway cloudflare-ai-gateway CLOUDFLARE_API_TOKEN + CLOUDFLARE_ACCOUNT_ID + CLOUDFLARE_GATEWAY_ID
Requesty requesty REQUESTY_API_KEY
OpenRouter openrouter OPENROUTER_API_KEY
Azure OpenAI azure AZURE_API_KEY + base_url
Ollama ollama None (local; optional base_url)
GitHub Copilot github-copilot GITHUB_TOKEN (PAT with copilot scope)
# Use built-in providers inline
agents:
  root:
    model: mistral/mistral-large-latest
Multi-provider teams

Use expensive models for complex reasoning and cheaper/local models for routine tasks. See the example below.

Using Multiple Providers

Different agents can use different providers in the same configuration:

models:
  claude:
    provider: anthropic
    model: claude-sonnet-4-5
    max_tokens: 64000
  gpt:
    provider: openai
    model: gpt-5
  local:
    provider: dmr
    model: ai/qwen3

agents:
  root:
    model: claude # coordinator uses Claude
    sub_agents: [coder, helper]
  coder:
    model: gpt # coder uses GPT-5
  helper:
    model: local # helper runs locally for free