Skip to main content
深度智能体 CLI 支持任何与 LangChain 兼容的聊天模型提供商,使几乎所有支持工具调用的大语言模型(LLM)都可以使用。任何暴露 OpenAI 兼容或 Anthropic 兼容 API 的服务也可以直接使用 — 参见兼容 API

快速开始

CLI 自动与以下模型提供商集成:除了安装相关的提供商包外,无需额外配置。
  1. 安装提供商包 每个模型提供商需要安装其对应的 LangChain 集成包。这些作为安装 CLI 时的可选附加项提供,有意保持应用轻量:
  2. 设置凭证 将 API 密钥存储在 ~/.deepagents/.env 中使其在所有项目中可用,或在 shell 中导出:
    要配置模型参数,参见模型参数 你也可以使用 DEEPAGENTS_CLI_ 前缀将凭证范围限定到 CLI。

提供商参考

使用的提供商不在此列表中?参见任意提供商:任何 LangChain 兼容的提供商都可以通过额外设置在 CLI 中使用。
你可以通过添加 DEEPAGENTS_CLI_ 前缀将任何凭证限定到 CLI。例如,DEEPAGENTS_CLI_OPENAI_API_KEY 在 CLI 中优先于 OPENAI_API_KEY,而不影响其他工具。参见 DEEPAGENTS_CLI_ 前缀了解详情。
**模型配置文件**是与提供商包一起发布的元数据包(模型名称、默认参数、能力等),主要由 models.dev 项目驱动。包含模型配置文件的提供商会将其模型自动列在交互式 /model 切换器中,受过滤条件约束(特别是 tool_calling 必须启用)。没有模型配置文件的提供商需要你直接指定模型名称或通过 config.toml 添加模型。

模型路由器和代理

模型路由器如 OpenRouterLiteLLM 通过单一端点提供对多个提供商模型的访问。 使用这些服务的专用集成包: OpenRouter 是内置提供商 — 安装包并直接使用:
LiteLLM 也是内置提供商:

切换模型

要在 CLI 中切换模型,可以:
  1. 使用 /model 命令使用交互式模型切换器。这会显示从每个已安装 LangChain 提供商包的模型配置文件获取的可用模型。
    并非所有模型都会出现在这里。如果你的模型缺失,直接传递模型名称(例如 /model gpt-5.5)。参见哪些模型出现在切换器中了解详情。
  2. 作为参数直接指定模型名称,例如 /model gpt-5.5。你可以使用所选提供商支持的任何模型,无论它是否出现在选项 1 的列表中。模型名称将传递给 API 请求。
  3. 通过 --model 在启动时指定模型,例如
当 CLI 启动时,它按以下顺序解析要使用的模型:
  1. --model 标志在提供时始终优先。
  2. ~/.deepagents/config.toml 中的 [models].default — 用户有意设置的长期偏好。
  3. ~/.deepagents/config.toml 中的 [models].recent — 通过 /model 最后切换到的模型。自动写入;永远不会覆盖 [models].default
  4. 环境自动检测:回退到第一个可用的启动凭证,按顺序检查:OPENAI_API_KEYANTHROPIC_API_KEYGOOGLE_API_KEYGOOGLE_CLOUD_PROJECT(Vertex AI)。
此启动回退有意仅检查这四个凭证。其他支持的提供商(例如 Groq)仍然可通过 --model/model 和保存的默认值([models].default / [models].recent)使用。

哪些模型出现在切换器中

/model 选择器从已安装的提供商包动态构建其列表。展开下方了解完整条件和故障排除。
交互式 /model 选择器动态构建其列表 — 它不是烘焙到 CLI 中的硬编码列表。当以下所有条件为真时,模型出现在切换器中:
  1. 提供商包已安装。 每个提供商(例如 langchain-anthropiclangchain-openai)必须与 deepagents-cli 一起安装 — 作为安装附加项(例如 uv tool install 'deepagents-cli[ollama]')或稍后使用 uv tool install deepagents-cli --with <package> 添加。如果包缺失,其整个提供商部分在切换器中不存在。
  2. 模型有启用 tool_calling 的配置文件。 CLI 需要工具调用支持,因此配置文件中没有 tool_calling: true 的模型被排除。这是模型从列表中缺失的最常见原因。对于不捆绑配置文件的提供商(参见提供商参考表),你可以在 config.toml 中定义:
    这并非模型出现在切换器中的严格要求 — 将其添加到 models 列表也有效且更简单。当你希望 CLI 了解模型的上下文窗口和能力以用于自动摘要等功能时,配置文件很有用。参见配置文件覆盖了解所有可覆盖字段。
  3. 模型接受和产生文本。 配置文件明确将 text_inputstext_outputs 设为 false 的模型(例如嵌入或图像生成模型)被排除。
config.toml[models.providers.<name>].models 下定义的模型绕过配置文件过滤器 — 它们无论配置文件元数据如何都始终出现在切换器中。这是添加列表中缺失模型的推荐方式。
凭证状态影响模型是否被列出。切换器显示所有符合条件的模型,并在每个提供商标题旁显示凭证指示器:确认凭证的复选标记、缺失凭证的警告或凭证状态未知的问号。你仍然可以选择缺失凭证的模型 — 提供商会在请求时报告认证错误。

排查缺失模型

设置默认模型

你可以设置一个持久的默认模型,用于所有未来的 CLI 启动:
  • 通过模型选择器: 打开 /model,导航到所需模型,按 Ctrl+S 将其固定为默认值。再次在当前默认值上按 Ctrl+S 清除它。
  • 通过命令: /model --default provider:model(例如 /model --default anthropic:claude-opus-4-7
  • 通过配置文件:~/.deepagents/config.toml 中设置 [models].default(参见配置)。
  • 从 shell:
查看当前默认值:
清除默认值:
  • 从 shell:
  • 通过命令: /model --default --clear
  • 通过模型选择器: 在当前固定的默认模型上按 Ctrl+S
没有默认值时,CLI 将默认使用最近使用的模型。

模型参数

向模型传递额外的构造关键字参数 — 采样控制、推理/思考预算、上下文窗口大小、请求超时以及底层聊天模型类接受的任何其他参数。三个设置位置,按优先级排序(从高到低):
  1. 启动时通过 --model-params 一次性设置。 JSON 字符串,仅限会话:
  2. 会话中途通过 /model --model-params 相同的 JSON 语法 — 无需重启即可切换参数(和可选模型):
  3. config.toml 中持久化。 提供商级默认值(带可选的按模型子表),在每次启动时应用:
CLI 标志覆盖配置文件的 params 且仅限会话(会话中途的更改不持久化)。config.toml 中的按模型子表覆盖提供商级键(浅合并 — 参见模型构造参数了解完整语义)。--model-params 不能与 --default 组合。
底层聊天模型构造函数接受的任何关键字参数都是有效的。参阅提供商的参考文档了解完整列表 — 例如 ChatAnthropicChatOpenAIChatOllama。未知的关键字参数被转发到上游 API 请求,因此新发布的参数无需 CLI 更新即可使用。
不要在 params 中放置凭证(api_key) — 使用 api_key_env 指向环境变量。
要覆盖模型运行时配置文件中的字段(max_input_tokenstool_calling、能力标志)— 与构造参数不同 — 参见配置文件覆盖

高级配置

有关提供商参数、配置文件覆盖、自定义基础 URL、兼容 API、任意提供商和生命周期钩子的详细配置,参见配置