本页面描述了如何配置代理使用的聊天模型。

要启用工具调用代理,底层 LLM 必须支持工具调用

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

您可以使用模型名称字符串配置代理

<span id="__span-0-1">import os
<span id="__span-0-2">from langgraph.prebuilt import create_react_agent
<span id="__span-0-3">
<span id="__span-0-4">os.environ["OPENAI_API_KEY"] = "sk-..."
<span id="__span-0-5">
<span id="__span-0-6">agent = create_react_agent(
<span id="__span-0-7">    model="openai:gpt-4.1",
<span id="__span-0-8">    # other parameters
<span id="__span-0-9">)

init_chat_model 工具简化了模型初始化,并提供了可配置参数。

<span id="__span-5-1">pip install -U "langchain[openai]"
<span id="__span-6-1">import os
<span id="__span-6-2">from langchain.chat_models import init_chat_model
<span id="__span-6-3">
<span id="__span-6-4">os.environ["OPENAI_API_KEY"] = "sk-..."
<span id="__span-6-5">
<span id="__span-6-6">model = init_chat_model(
<span id="__span-6-7">    "openai:gpt-4.1",
<span id="__span-6-8">    temperature=0,
<span id="__span-6-9">    # other parameters
<span id="__span-6-10">)

请参阅 API 参考了解高级选项。

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

API 参考:ChatAnthropic | create_react_agent

<span id="__span-15-1">from langchain_anthropic import ChatAnthropic
<span id="__span-15-2">from langgraph.prebuilt import create_react_agent
<span id="__span-15-3">
<span id="__span-15-4">model = ChatAnthropic(
<span id="__span-15-5">    model="claude-3-7-sonnet-latest",
<span id="__span-15-6">    temperature=0,
<span id="__span-15-7">    max_tokens=2048
<span id="__span-15-8">)
<span id="__span-15-9">
<span id="__span-15-10">agent = create_react_agent(
<span id="__span-15-11">    model=model,
<span id="__span-15-12">    # other parameters
<span id="__span-15-13">)

说明性示例

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

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

<span id="__span-16-1">from langchain.chat_models import init_chat_model
<span id="__span-16-2">
<span id="__span-16-3">model = init_chat_model(
<span id="__span-16-4">    "anthropic:claude-3-7-sonnet-latest",
<span id="__span-16-5">    disable_streaming=True
<span id="__span-16-6">)

请参阅 API 参考了解更多关于 disable_streaming 的信息。

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

<span id="__span-18-1">from langchain.chat_models import init_chat_model
<span id="__span-18-2">
<span id="__span-18-3">model_with_fallbacks = (
<span id="__span-18-4">    init_chat_model("anthropic:claude-3-5-haiku-latest")
<span id="__span-18-5">    .with_fallbacks([
<span id="__span-18-6">        init_chat_model("openai:gpt-4.1-mini"),
<span id="__span-18-7">    ])
<span id="__span-18-8">)

请参阅此指南了解更多关于模型回退的信息。