跳到内容

模型

本页描述如何配置智能体使用的聊天模型。

工具调用支持

为了启用工具调用智能体,底层LLM必须支持工具调用

兼容模型可以在LangChain集成目录中找到。

按名称指定模型

您可以使用模型名称字符串来配置智能体。

API参考: create_react_agent

from langgraph.prebuilt import create_react_agent

agent = create_react_agent(
    model="anthropic:claude-3-7-sonnet-latest",
    # other parameters
)

使用 init_chat_model

init_chat_model 工具通过可配置参数简化了模型初始化。

API参考: init_chat_model

from langchain.chat_models import init_chat_model

model = init_chat_model(
    "anthropic:claude-3-7-sonnet-latest",
    temperature=0,
    max_tokens=2048
)

有关高级选项,请参阅API参考

使用特定提供商的LLM

如果模型提供商无法通过 init_chat_model 获取,您可以直接实例化该提供商的模型类。该模型必须实现 BaseChatModel 接口并支持工具调用。

API参考: ChatAnthropic | create_react_agent

from langchain_anthropic import ChatAnthropic
from langgraph.prebuilt import create_react_agent

model = ChatAnthropic(
    model="claude-3-7-sonnet-latest",
    temperature=0,
    max_tokens=2048
)

agent = create_react_agent(
    model=model,
    # other parameters
)

示例

上面的示例使用了 ChatAnthropic,它已被 init_chat_model 支持。显示此模式是为了说明如何手动实例化无法通过 init_chat_model 获取的模型。

禁用流式传输

要禁用单个LLM令牌的流式传输,请在初始化模型时设置 disable_streaming=True

from langchain.chat_models import init_chat_model

model = init_chat_model(
    "anthropic:claude-3-7-sonnet-latest",
    disable_streaming=True
)
from langchain_anthropic import ChatAnthropic

model = ChatAnthropic(
    model="claude-3-7-sonnet-latest",
    disable_streaming=True
)

有关 disable_streaming 的更多信息,请参阅API参考

添加模型回退

您可以使用 model.with_fallbacks([...]) 为不同的模型或不同的LLM提供商添加回退。

from langchain.chat_models import init_chat_model

model_with_fallbacks = (
    init_chat_model("anthropic:claude-3-5-haiku-latest")
    .with_fallbacks([
        init_chat_model("openai:gpt-4.1-mini"),
    ])
)
from langchain_anthropic import ChatAnthropic
from langchain_openai import ChatOpenAI

model_with_fallbacks = (
    ChatAnthropic(model="claude-3-5-haiku-latest")
    .with_fallbacks([
        ChatOpenAI(model="gpt-4.1-mini"),
    ])
)

有关模型回退的更多信息,请参阅此指南

附加资源

评论