跳到主要内容

文档索引

在以下地址获取完整的文档索引:https://docs.langchain.org.cn/llms.txt

在进一步探索之前,请使用此文件发现所有可用页面。

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

支持的模型

请以 provider:model 格式指定模型(例如 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-preview, gemini-3-flash-preview
OpenAIgpt-5.4, gpt-4o, gpt-5.4, o4-mini, gpt-5.2-codex, gpt-4o-mini, o3
Anthropicclaude-opus-4-6, claude-opus-4-5, claude-sonnet-4-6, claude-sonnet-4, claude-sonnet-4-5, claude-haiku-4-5, claude-opus-4-1
开源权重模型GLM-5, Kimi-K2.5, MiniMax-M2.5, qwen3.5-397B-A17B, devstral-2-123B
开源权重模型可通过 BasetenFireworksOpenRouterOllama 等提供商获取。

模型评估

Deep Agents 评估套件测试了主流模型
模型文件操作检索工具使用内存对话总结
google_genai:gemini-3.1-pro-preview100%100%25%54%48%80%
openai:gpt-5.4100%100%18%51%38%100%
openai:gpt-5.592%100%20%64%52%80%
anthropic:claude-opus-4-692%100%26%69%22%100%
anthropic:claude-opus-4-7100%100%18%52%100%
baseten:moonshotai/Kimi-K2.6100%100%20%60%
baseten:zai-org/GLM-592%100%87%44%29%60%
ollama:minimax-m2.7:cloud92%90%82%38%29%60%
openrouter:deepseek/deepseek-v4-pro100%100%25%80%
openrouter:minimax/minimax-m2.792%100%20%60%
openrouter:nvidia/nemotron-3-super-120b-a12b0%0%0%0%0%0%
openrouter:z-ai/glm-5.192%100%25%33%80%
有关更多信息,请参阅 评估运行记录

配置模型参数

将模型字符串以 provider:model 格式传递给 create_deep_agent,或者为了完全控制,传递一个已配置的模型实例。在底层,模型字符串通过 init_chat_model 进行解析。 要配置特定于模型的参数,请使用 init_chat_model 或直接实例化提供商模型类:
from langchain.chat_models import init_chat_model
from deepagents import create_deep_agent

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

提供商配置

ProviderProfile 封装了当您在创建智能体时提供 provider:model 字符串时所应用的初始化参数。当您使用 init_chat_model 传递预配置模型时,它不适用。 您可以在两个级别进行注册,且两者可以并存:
  • 提供商级别 — 像 "openai" 这样的基本提供商键应用于该 openai 提供商的所有模型。
  • 模型级别 — 像 "openai:gpt-5.4" 这样的 provider:model 键仅应用于该特定模型,并在匹配的提供商级别配置文件之上进行合并。
from deepagents import ProviderProfile, register_provider_profile

# Provider-wide default: every openai model gets temperature=0.
register_provider_profile(
    "openai",
    ProviderProfile(init_kwargs={"temperature": 0}),
)

# Model-level override: gpt-5.4 additionally gets a specific reasoning effort.
# Inherits temperature=0 from the provider-level profile above.
register_provider_profile(
    "openai:gpt-5.4",
    ProviderProfile(init_kwargs={"reasoning_effort": "medium"}),
)
有关字段列表、合并语义和插件打包的完整信息,请参阅配置文件 (Profiles)
要塑造智能体在模型构建完成后的行为,请使用控制框架配置文件 (harness profile)

运行时选择模型

如果您的应用程序允许用户选择模型(例如在 UI 中使用下拉菜单),请使用中间件在运行时切换模型,而无需重新构建智能体。 通过运行时上下文传递用户的模型选择,然后使用 wrap_model_call 中间件,通过 @wrap_model_call 装饰器在每次调用时覆盖模型:
from dataclasses import dataclass
from langchain.chat_models import init_chat_model
from langchain.agents.middleware import wrap_model_call, ModelRequest, ModelResponse
from deepagents import create_deep_agent
from typing import Callable


@dataclass
class Context:
    model: str

@wrap_model_call
def configurable_model(
    request: ModelRequest,
    handler: Callable[[ModelRequest], ModelResponse],
) -> ModelResponse:
    model_name = request.runtime.context.model
    model = init_chat_model(model_name)
    return handler(request.override(model=model))

agent = create_deep_agent(
    model="google_genai:gemini-3.1-pro-preview",
    middleware=[configurable_model],
    context_schema=Context,
)

# Invoke with the user's model selection
result = agent.invoke(
    {"messages": [{"role": "user", "content": "Hello!"}]},
    context=Context(model="openai:gpt-5.4"),
)
有关更动态的模型模式(例如基于对话复杂性或成本优化进行路由),请参阅 LangChain 智能体指南中的动态模型

了解更多


© . This site is unofficial and not affiliated with LangChain, Inc.