外观
Deep Agents Code 支持任何与 LangChain 兼容的对话模型提供商,几乎可以为任何支持工具调用的大语言模型解锁使用。任何暴露 OpenAI 兼容或 Anthropic 兼容 API 的服务也能开箱即用——参见 兼容 API。
快速入门
Deep Agents Code 会自动与以下模型提供商集成:除安装相应的提供商包外,无需任何额外配置。
安装提供商包
每个模型提供商都需要相应的 LangChain 集成包。它们作为可选附加项提供,以保持应用轻量。OpenAI、Anthropic 与 Gemini 默认包含。在会话中用
/install,或从 shell 用dcode --install安装任何其他附加项:
txt
/install groqbash
dcode --install groq不带参数运行 `/install` 可列出有效的附加项。要在初始 CLI 安装期间预装附加项,请设置 `DEEPAGENTS_CODE_EXTRAS`:
bash
DEEPAGENTS_CODE_EXTRAS="baseten,groq" curl -LsSf https://langch.in/dcode | bash设置凭据
用
/auth凭据管理器为你的提供商添加 API 密钥:
txt
/auth`/auth` 会显示可用提供商列表,并存储凭据供跨会话复用。
对于非交互式运行、CI/CD 或任何没有 TUI 的场景,请改用 shell 中的 [`dcode auth set`](/oss/deepagents/code/credentials#manage-credentials-from-the-shell-dcode-auth) 存储相同的密钥,或设置该提供商的环境变量。完整的密钥解析顺序参见 [提供商凭据](/oss/deepagents/code/credentials),把密钥限定为 Deep Agents Code 使用参见 [`DEEPAGENTS_CODE_` 前缀](/oss/deepagents/code/configuration#deepagents_code_-prefix),各提供商的环境变量参见 [提供商参考](#provider-reference)。
要配置模型参数,参见 [模型参数](#model-parameters)。
提供商参考
这里没列到你使用的提供商?参见 任意提供商:任何与 LangChain 兼容的提供商都可以通过额外设置用于 Deep Agents Code。
| 提供商 | 包 | 凭据环境变量 | 模型配置档案 |
|---|---|---|---|
| OpenAI | langchain-openai | OPENAI_API_KEY | ✅ |
| OpenAI (Codex) | langchain-openai | 无——使用 ChatGPT 登录 | ✅ |
| Azure OpenAI | langchain-openai | AZURE_OPENAI_API_KEY | ✅ |
| Anthropic | langchain-anthropic | ANTHROPIC_API_KEY | ✅ |
| Google Gemini API | langchain-google-genai | GOOGLE_API_KEY | ✅ |
| Google Vertex AI | langchain-google-genai | GOOGLE_CLOUD_PROJECT | ✅ |
| Baseten | langchain-baseten | BASETEN_API_KEY | ✅ |
| AWS Bedrock | langchain-aws | AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY | ✅ |
| AWS Bedrock Converse | langchain-aws | AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY | ✅ |
| Hugging Face | langchain-huggingface | HUGGINGFACEHUB_API_TOKEN | ✅ |
| Ollama | langchain-ollama | OLLAMA_API_KEY(仅云端;可选) | ❌ |
| Groq | langchain-groq | GROQ_API_KEY | ✅ |
| Cohere | langchain-cohere | COHERE_API_KEY | ❌ |
| Fireworks | langchain-fireworks | FIREWORKS_API_KEY | ✅ |
| Together | langchain-together | TOGETHER_API_KEY | ❌ |
| Meta | langchain-meta | MODEL_API_KEY | ✅ |
| Mistral AI | langchain-mistralai | MISTRAL_API_KEY | ✅ |
| DeepSeek | langchain-deepseek | DEEPSEEK_API_KEY | ✅ |
| IBM (watsonx.ai) | langchain-ibm | WATSONX_APIKEY | ❌ |
| Nvidia | langchain-nvidia-ai-endpoints | NVIDIA_API_KEY | ✅ |
| xAI | langchain-xai | XAI_API_KEY | ✅ |
| Perplexity | langchain-perplexity | PERPLEXITY_API_KEY(或 PPLX_API_KEY) | ✅ |
| OpenRouter | langchain-openrouter | OPENROUTER_API_KEY | ✅ |
| LiteLLM | langchain-litellm | 因提供商而异(参见文档) | ❌ |
TIP
你可以通过添加 DEEPAGENTS_CODE_ 前缀把任何凭据限定为 Deep Agents Code 使用。例如,DEEPAGENTS_CODE_OPENAI_API_KEY 在 Deep Agents Code 中优先于 OPENAI_API_KEY,且不影响其他工具。详情参见 DEEPAGENTS_CODE_ 前缀。
TIP
模型配置档案提供交互式 /model 切换器使用的模型元数据。如果某个模型没有出现在切换器中,请直接传入模型名称,或通过 config.toml 添加。
使用 ChatGPT 登录
openai_codex 提供商让你可以使用付费的 ChatGPT 订阅来使用 OpenAI 的 Codex 模型,而无需 OPENAI_API_KEY。你用你的 ChatGPT 账户登录,它会在 /auth 和 /model 切换器中都作为独立提供商出现,与基于 API 密钥的 openai 提供商分开。
开始登录
在任意会话中运行 `/auth` 并选择 **`openai_codex`**。由于 ChatGPT 通过浏览器登录,这会启动浏览器登录流程,而不是要求输入 API 密钥。
在浏览器中授权
Deep Agents Code 会在浏览器中打开 ChatGPT 登录页。如果无法打开浏览器(例如通过 SSH 连接),它还会在屏幕上显示登录 URL,方便你复制到另一台设备的浏览器中。
选择 Codex 模型
登录后,Codex 模型会出现在 `/model` 切换器的 `openai_codex` 提供商下。直接用其标识切换:
txt
/model openai_codex:gpt-5.5你的登录状态会跨会话保留。要查看状态或注销,运行 /auth,选择 openai_codex,然后选择重新认证或注销。
INFO
openai_codex 与 openai 是分开的。要使用带标准 API 密钥的 OpenAI 模型,请改用常规的 openai 提供商(例如 /model openai:gpt-5.5)。
INFO
某些提供商专属的账户类型或密钥作用域可能无法用于 API 访问。如果某个提供商在 /auth 中显示已配置但请求仍然失败,请确认账户套餐与 API 密钥权限是否符合该提供商的 API 要求。
模型路由与代理
OpenRouter 与 LiteLLM 等模型路由器通过单个端点提供来自多个提供商的模型访问。
为这些服务使用专用的集成包:
| 路由器 | 包 | 配置 |
|---|---|---|
| OpenRouter | langchain-openrouter | openrouter:<model>(内置,参见 提供商参考) |
| LiteLLM | langchain-litellm | litellm:<model>(内置,参见 提供商参考) |
OpenRouter 是内置提供商——安装附加项并直接使用:
txt
/install openrouterbash
dcode --install openrouterLiteLLM 也是内置提供商:
txt
/install litellmbash
dcode --install litellm切换模型
要在 Deep Agents Code 中切换模型,可以:
- 使用交互式模型切换器,通过
/model命令。
INFO
并非所有模型都会出现在这里。如果你的模型缺失,请直接传入模型名称(例如 /model gpt-5.5)或将其添加到 config.toml。
- 直接指定模型名称作为参数,例如
/model gpt-5.5。无论所选提供商支持的任何模型是否出现在选项 1 的列表中,你都可以使用它。模型名称会被传给 API 请求。 - 在启动时指定模型,通过
--model,例如
txt
dcode --model openai:gpt-5.5模型解析顺序
Deep Agents Code 启动时按以下顺序解析要使用的模型:
1. **`--model` 标志** 提供时总是生效。
2. **`~/.deepagents/config.toml` 中的 `[models].default`** —— 用户有意的长期偏好。
3. **`~/.deepagents/config.toml` 中的 `[models].recent`** —— 最近通过 `/model` 切换到的模型。自动写入;绝不覆盖 `[models].default`。
4. **环境自动检测**:回退到第一个可用的启动凭据,按顺序检查:`OPENAI_API_KEY`、`ANTHROPIC_API_KEY`、`GOOGLE_API_KEY`、`GOOGLE_CLOUD_PROJECT`(Vertex AI)。
这个启动回退机制故意只检查这四个凭据。其他受支持的提供商(例如 Groq)仍可通过 `--model`、`/model` 以及已保存的默认值(`[models].default` / `[models].recent`)使用。
哪些模型会出现在切换器中
/model 选择器会根据已安装的提供商包动态构建其列表。完整条件与故障排查展开如下。
切换器如何构建模型列表
交互式 `/model` 选择器会从已安装的提供商包以及 `config.toml` 中配置的模型构建其列表。
一个模型在以下条件满足时出现:
1. 提供商包已安装。
2. 模型可从提供商包、本地提供商或你的 `config.toml` 获得。
3. 模型配置档案没有把文本输入或输出标记为不支持。
如果某个模型缺失,请直接使用 `/model <provider>:<model>` 或将其添加到 [`[models.providers.<name>].models`](/oss/deepagents/code/config-file#adding-models-to-the-interactive-switcher)。
TIP
凭据状态不会影响模型是否被列出。你仍然可以选择缺少凭据的模型。提供商会在请求时报告身份验证错误。
开源权重模型
如果你想使用开源权重模型,根据你更喜欢本地推理还是云端托管推理,有两条常见路径。
使用 Ollama 本地推理是免费开始的最简单方式,无需 API 密钥:
- 安装 Ollama 并拉取一个模型,例如:
bash
ollama pull qwen3:4b- 安装 Ollama 附加项:
txt
/install ollamabash
dcode --install ollama- 选择模型:
txt
/modelbash
dcode --model ollama:qwen3:4b使用交互式切换器,或直接传入 `/model ollama:qwen3:4b`。
通过 Groq 云端托管开源权重可以在不运行任何本地程序的情况下获得快速推理:
在 console.groq.com 获取免费 API 密钥。
安装 Groq 附加项:
txt
/install groqbash
dcode --install groq- 选择一个模型:
txt
/modelbash
GROQ_API_KEY="your-api-key" dcode --model groq:openai/gpt-oss-120b使用交互式切换器,或直接传入 `/model groq:openai/gpt-oss-120b`。
Fireworks 是另一个流行的开源权重模型云端提供商:
txt
/install fireworks
/modelbash
dcode --install fireworks
FIREWORKS_API_KEY="your-api-key" dcode --model fireworks:accounts/fireworks/models/deepseek-v4-pro使用交互式切换器,或直接传入 /model fireworks:accounts/fireworks/models/deepseek-v4-pro。
Baseten 是另一个开源权重模型的云端提供商:
txt
/install baseten
/modelbash
dcode --install baseten
BASETEN_API_KEY="your-api-key" dcode --model baseten:moonshotai/Kimi-K2.7-Code使用交互式切换器,或直接传入 /model baseten:moonshotai/Kimi-K2.7-Code。
TIP
如果你想在安装 CLI 的同时预装某个提供商,请在初始安装期间使用 DEEPAGENTS_CODE_EXTRAS:
bash
DEEPAGENTS_CODE_EXTRAS="fireworks" curl -LsSf https://langch.in/dcode | bash你可以组合多个提供商:DEEPAGENTS_CODE_EXTRAS="groq,fireworks,ollama"。如果 Deep Agents Code 已安装,请在会话中使用 /install <extra> 或从 shell 使用 dcode --install <extra>。
Together、OpenRouter 与 Hugging Face(langchain-huggingface)是云端托管开源权重的其他选择。凭据与包名称参见 提供商参考。
设置默认模型
你可以设置一个适用于所有未来 CLI 启动的持久默认模型:
- 通过模型选择器: 打开
/model,导航到所需模型,按Ctrl+S将其固定为默认。在当前默认上再次按Ctrl+S会清除它。 - 通过命令:
/model --default provider:model(例如/model --default anthropic:claude-opus-4-8) - 通过配置文件: 在
~/.deepagents/config.toml中设置[models].default(参见 配置)。 - 从 shell:
bash
dcode --default-model anthropic:claude-opus-4-8要查看当前默认:
bash
dcode --default-model要清除默认:
- 从 shell:
bash
dcode --clear-default-model- 通过命令:
/model --default --clear - 通过模型选择器: 在当前固定的默认模型上按
Ctrl+S。
没有默认值时,Deep Agents Code 会使用最近使用的模型。
模型参数
把额外的构造函数关键字参数传给模型——采样控制、推理/思考预算、上下文窗口大小、请求超时,以及底层对话模型类接受的其他任何内容。有三个设置位置,按优先级顺序(最高在前):
- 启动时一次性使用
--model-params。 JSON 字符串,仅限本次会话:
bash
# OpenAI reasoning effort
dcode --model openai:gpt-5.5 --model-params '{"reasoning": {"effort": "high"}}'
# Anthropic extended thinking
dcode --model anthropic:claude-opus-4-8 --model-params '{"thinking": {"type": "enabled", "budget_tokens": 10000}, "max_tokens": 16000}'- 会话中通过
/model --model-params。 相同的 JSON 语法——无需重启即可切换参数(并可选择切换模型):
txt
/model --model-params '{"temperature": 0.7}' anthropic:claude-opus-4-8
/model --model-params '{"num_ctx": 16384}' # opens selector, applies params to choice- 持久化在
config.toml中。 提供商级默认值(可带按模型的子表),每次启动都生效:
toml
[models.providers.anthropic.params]
thinking = { type = "enabled", budget_tokens = 10000 }
max_tokens = 16000
[models.providers.openai.params]
reasoning = { effort = "high", summary = "auto" }
output_version = "responses/v1"
[models.providers.ollama.params]
num_ctx = 16384
temperature = 0
# Per-model override—wins over provider-level keys
[models.providers.ollama.params."qwen3:4b"]
temperature = 0.5CLI 标志覆盖配置文件中的 params,并且仅限本次会话(会话中的修改不会持久化)。config.toml 中按模型的子表会覆盖提供商级键(浅合并——完整语义参见 模型构造函数参数)。--model-params 不能与 --default 组合使用。
对于重试次数,请优先使用 --max-retries 或顶层的 [retries] 配置。
TIP
底层对话模型构造函数接受的任何关键字参数都有效。完整列表请参阅提供商的参考文档——例如 ChatAnthropic、ChatOpenAI、ChatOllama。未知关键字参数会被转发到上游 API 请求,因此新发布的参数无需 CLI 更新即可使用。
INFO
不要把凭据(api_key)放在 params 中——请改用 api_key_env 指向环境变量。
要覆盖模型运行时配置档案上的字段(max_input_tokens、tool_calling、能力标志)——与构造函数参数不同——参见 配置档案覆盖。
高级配置
关于提供商参数的详细配置、配置档案覆盖、自定义 base URL、兼容 API、任意提供商与生命周期钩子,参见 配置文件 与 钩子。