Skip to main content
Deep Agents 可与任何支持工具调用LangChain 聊天模型配合使用。

支持的模型

提供商:模型 格式指定模型(例如 google_genai:gemini-3.1-pro-previewopenai:gpt-5.4anthropic:claude-sonnet-4-6)。提供商前缀选择 LangChain 集成,冒号后的所有内容将作为模型标识符传递给该提供商。有关有效的提供商字符串,请参阅 init_chat_modelmodel_provider 参数。有关提供商特定配置,请参阅聊天模型集成 模型标识符必须符合提供商预期的格式。某些提供商使用简单名称,如 gpt-5.4;其他提供商使用带命名空间的 ID 或部署路径,如 zai-org/GLM-5.1,因此完整的 Deep Agents 字符串将是 baseten:zai-org/GLM-5.1。请查阅提供商的模型目录或集成文档以获取当前标识符。

推荐模型

这些模型在 Deep Agents 评估套件中表现良好,该套件测试基本代理操作。通过这些评估是必要条件,但不足以确保在更长、更复杂的任务中表现出色。
提供商模型
Googlegemini-3.1-pro-previewgemini-3-flash-preview
OpenAIgpt-5.4gpt-4ogpt-5.4o4-minigpt-5.2-codexgpt-4o-minio3
Anthropicclaude-opus-4-6claude-opus-4-5claude-sonnet-4-6claude-sonnet-4claude-sonnet-4-5claude-haiku-4-5claude-opus-4-1
开放权重GLM-5Kimi-K2.5MiniMax-M2.5qwen3.5-397B-A17Bdevstral-2-123B
开放权重模型可通过 OpenRouterFireworksOllama 等提供商使用。

配置模型参数

将模型字符串以 提供商:模型 格式传递给 createDeepAgent,或传递已配置的模型实例以进行完全控制。在底层,模型字符串通过 init_chat_model 解析。 要配置模型特定参数,请使用 init_chat_model 或直接实例化提供商模型类:
import { initChatModel } from "langchain/chat_models/universal";
import { createDeepAgent } from "deepagents";

const model = await initChatModel("google_genai:gemini-3.1-pro-preview", {
    reasoningEffort: "medium",
});
const agent = createDeepAgent({ model });
可用参数因提供商而异。有关提供商特定的配置选项,请参阅聊天模型集成页面。

提供商配置文件

ProviderProfile 打包了在创建深度代理时提供 提供商:模型 字符串时应用的初始化参数。当您传递使用 init_chat_model 预配置的模型时,它不适用。 您可以在两个级别注册,两者可以共存:
  • 提供商级别 — 裸提供商键(如 "openai")适用于来自 openai 提供商的每个模型。
  • 模型级别提供商:模型 键(如 "openai:gpt-5.4")仅适用于该特定模型,并在任何匹配的提供商级别配置文件之上合并。
from deepagents import ProviderProfile, register_provider_profile

# 提供商范围默认值:每个 openai 模型都获得 temperature=0。
register_provider_profile(
    "openai",
    ProviderProfile(init_kwargs={"temperature": 0}),
)

# 模型级别覆盖:gpt-5.4 额外获得特定的推理努力。
# 从上面的提供商级别配置文件继承 temperature=0。
register_provider_profile(
    "openai:gpt-5.4",
    ProviderProfile(init_kwargs={"reasoning_effort": "medium"}),
)
有关完整字段列表、合并语义和插件打包,请参阅配置文件
要塑造模型构建后代理的行为方式,请使用工具集配置文件

在运行时选择模型

如果您的应用程序允许用户选择模型(例如在 UI 中使用下拉菜单),请使用中间件在运行时交换模型,而无需重建代理。
import { initChatModel, createMiddleware } from "langchain";
import { createDeepAgent } from "deepagents";
import * as z from "zod";

const contextSchema = z.object({
  model: z.string(),
});

const configurableModel = createMiddleware({
  name: "ConfigurableModel",
  wrapModelCall: async (request, handler) => {
    const modelName = request.runtime.context.model;
    const model = await initChatModel(modelName);
    return handler({ ...request, model });
  },
});

const agent = await createDeepAgent({
  model: "google_genai:gemini-3.1-pro-preview",
  middleware: [configurableModel],
  contextSchema,
});

// 使用用户选择的模型进行调用
const result = await agent.invoke(
  { messages: [{ role: "user", content: "Hello!" }] },
  { context: { model: "openai:gpt-5.4" } },
);
有关更多动态模型模式(例如基于对话复杂性或成本优化进行路由),请参阅 LangChain 代理指南中的动态模型

了解更多