LangChain 为您提供单一、统一的 API 来使用来自任何提供者的模型。安装提供者包,选择模型名称,然后开始构建——无论您使用 OpenAI、Anthropic、Google 还是任何其他支持的提供者,同样的代码都可以工作。
graph LR
subgraph "Your code"
A["LangChain API<br/>(invoke, stream, bind_tools)"]
end
subgraph "Providers"
B["OpenAI"]
C["Anthropic"]
D["Google"]
E["AWS Bedrock"]
F["...and more"]
end
A --> B
A --> C
A --> D
A --> E
A --> F
classDef code fill:#E5F4FF,stroke:#006DDD,stroke-width:2px,color:#030710
classDef provider fill:#EBD0F0,stroke:#885270,stroke-width:2px,color:#441E33
class A code
class B,C,D,E,F provider
一个 API 适用于任何模型
每个 LangChain 聊天模型,无论提供者是谁,都实现相同的接口。这意味着您可以:
from langchain.chat_models import init_chat_model
openai_model = init_chat_model("openai:gpt-5.5")
anthropic_model = init_chat_model("anthropic:claude-opus-4-8")
google_model = init_chat_model("google-genai:gemini-3.1-pro-preview")
for model in [openai_model, anthropic_model, google_model]:
response = model.invoke("Explain quantum computing in one sentence.")
print(response.text)
什么是提供者?
A **提供者** 是托管 AI 模型并通过 API 公开它们的公司或平台。例如包括 OpenAI、Anthropic、Google 和 AWS Bedrock。
在 LangChain 中,每个提供者都有专门的 **集成包** (例如 langchain-openai, langchain-anthropic),它为该提供者的模型实现标准 LangChain 接口。这意味着:
- 每个提供者都有专用包 具有适当的版本控制和依赖管理
- 特定提供商的特性 在需要时可用(例如 OpenAI 的 Responses API、Anthropic 的扩展思考功能)
- 自动处理 API 密钥 通过环境变量
uv add langchain-openai # For OpenAI models
uv add langchain-anthropic # For Anthropic models
uv add langchain-google-genai # For Google models
有关提供商包的完整列表,请参阅 集成页面.
查找模型名称
每个提供商支持特定的模型名称,您在初始化聊天模型时传递这些名称。指定模型有两种方式:
from langchain.chat_models import init_chat_model
model = init_chat_model("openai:gpt-5.5")
from langchain_openai import ChatOpenAI
model = ChatOpenAI(model="gpt-5.5")
使用 init_chat_model 和 provider:model 格式时,LangChain 会自动解析提供商并加载正确的集成包。如果模型名称明确,您也可以省略提供商前缀(例如, "gpt-5.5" 会解析为 OpenAI)。
要查找某个提供商的可用模型名称,请参阅该提供商的文档。以下是一些热门提供商:
| 提供商 | 在哪里查找模型名称 |
|---|---|
| OpenAI | OpenAI 模型页面 |
| Anthropic | Anthropic 模型页面 |
| Google AI 模型页面 | |
| AWS Bedrock | Bedrock 支持的模型 |
| Ollama | Ollama 模型库 |
| Groq | Groq 支持的模型 |
立即使用新模型
因为 LangChain provider 包会直接将模型名称传递给提供商的 API,所以您可以在提供商发布新模型的瞬间使用它们(无需 LangChain 更新)。只需传递新模型名称:
model = init_chat_model("google_genai:gemini-mythos")
只要您的 provider 包版本支持模型所需的 API 版本,新模型名称即可立即生效。在大多数情况下,模型发布是向后兼容的,无需包更新。
模型能力
不同的提供商和模型支持不同的功能。 有关聊天模型集成及其功能的列表,请参阅 聊天模型集成页面.
路由器和代理
路由器 (也称为代理或网关)通过单一 API 和凭证让您访问来自多个提供商的模型。它们可以简化计费,让您在不更改集成的情况下切换模型,并提供自动故障转移和负载均衡等功能。
| 提供商 | 集成 | 描述 |
|---|---|---|
| OpenRouter | ChatOpenRouter | 统一访问 OpenAI、Anthropic、Google、Meta 等的模型 |
| LiteLLM | ChatLiteLLM | 100+ 提供商的统一接口,具有路由、故障转移和支出跟踪功能 |
路由器在以下情况下很有用:
- 访问多个提供商 使用单一 API 密钥和计费账户
- 动态切换模型 无需管理多个提供商凭证
- 使用备用模型 如果主模型失败,自动使用不同模型重试
from langchain.chat_models import init_chat_model
model = init_chat_model("openrouter:anthropic/claude-sonnet-4-6")
response = model.invoke("Hello!")
OpenAI 兼容端点
许多提供商提供与 OpenAI 的 聊天补全 API兼容的端点。您可以使用 ChatOpenAI 连接这些端点,并使用自定义 base_url:
from langchain_openai import ChatOpenAI
model = ChatOpenAI(
base_url="https://your-provider.com/v1",
api_key="your-api-key",
model="provider-model-name",
)
后续步骤
Models guide
了解如何使用模型:调用、流式处理、批处理、工具调用等。
Chat model integrations
浏览所有聊天模型集成及其功能。
All providers
查看完整的 provider 包和集成列表。
Agents
构建使用模型作为推理引擎的代理。