> ## Documentation Index
> Fetch the complete documentation index at: https://cndoc-langchain.site/llms.txt
> Use this file to discover all available pages before exploring further.

# LangChain 概述

> LangChain 是一个开源框架，具有预构建的代理架构以及与任何模型或工具的集成——因此您可以构建能够随着生态系统演进而快速适应的代理

在不到 10 行代码中构建完全自定义的、由 LLM 驱动的代理和应用程序，并集成 [OpenAI、Anthropic、Google 等](/oss/python/integrations/providers/overview)。
LangChain 提供了预构建的代理架构和模型集成，帮助您快速入门，并将 LLM 无缝集成到您的代理和应用程序中。

<Tip>
  **LangChain vs. LangGraph vs. Deep Agents**

  从 [Deep Agents](/oss/python/deepagents/overview/) 开始，获取一个“开箱即用”的代理，它具有自动上下文压缩、虚拟文件系统和子代理生成等功能。Deep Agents 构建于 LangChain [代理](/oss/python/langchain/agents/) 之上，您也可以直接使用 LangChain。

  对于需要结合确定性和代理工作流的高级需求，请使用 [LangGraph](/oss/python/langgraph/overview)，我们的底层编排框架。
</Tip>

## <Icon icon="wand" /> 创建代理

<CodeGroup>
  ```python OpenAI theme={"theme":{"light":"catppuccin-latte","dark":"catppuccin-mocha"}}
  # pip install -qU langchain "langchain[openai]"
  from langchain.agents import create_agent

  def get_weather(city: str) -> str:
      """获取给定城市的天气。"""
      return f"It's always sunny in {city}!"

  agent = create_agent(
      model="openai:gpt-5.4",
      tools=[get_weather],
      system_prompt="You are a helpful assistant",
  )

  result = agent.invoke(
      {"messages": [{"role": "user", "content": "What's the weather in San Francisco?"}]}
  )
  print(result["messages"][-1].content_blocks)
  ```

  ```python Google Gemini theme={"theme":{"light":"catppuccin-latte","dark":"catppuccin-mocha"}}
  # pip install -qU langchain "langchain[google-genai]"
  from langchain.agents import create_agent

  def get_weather(city: str) -> str:
      """获取给定城市的天气。"""
      return f"It's always sunny in {city}!"

  agent = create_agent(
      model="google_genai:gemini-2.5-flash-lite",
      tools=[get_weather],
      system_prompt="You are a helpful assistant",
  )

  result = agent.invoke(
      {"messages": [{"role": "user", "content": "What's the weather in San Francisco?"}]}
  )
  print(result["messages"][-1].content_blocks)
  ```

  ```python Claude (Anthropic) theme={"theme":{"light":"catppuccin-latte","dark":"catppuccin-mocha"}}
  # pip install -qU langchain "langchain[anthropic]"
  from langchain.agents import create_agent

  def get_weather(city: str) -> str:
      """获取给定城市的天气。"""
      return f"It's always sunny in {city}!"

  agent = create_agent(
      model="claude-sonnet-4-6",
      tools=[get_weather],
      system_prompt="You are a helpful assistant",
  )

  result = agent.invoke(
      {"messages": [{"role": "user", "content": "What's the weather in San Francisco?"}]}
  )
  print(result["messages"][-1].content_blocks)
  ```

  ```python OpenRouter theme={"theme":{"light":"catppuccin-latte","dark":"catppuccin-mocha"}}
  # pip install -qU langchain langchain-openrouter
  from langchain.agents import create_agent

  def get_weather(city: str) -> str:
      """获取给定城市的天气。"""
      return f"It's always sunny in {city}!"

  agent = create_agent(
      model="openrouter:anthropic/claude-sonnet-4-6",
      tools=[get_weather],
      system_prompt="You are a helpful assistant",
  )

  result = agent.invoke(
      {"messages": [{"role": "user", "content": "What's the weather in San Francisco?"}]}
  )
  print(result["messages"][-1].content_blocks)
  ```

  ```python Fireworks theme={"theme":{"light":"catppuccin-latte","dark":"catppuccin-mocha"}}
  # pip install -qU langchain langchain-fireworks
  from langchain.agents import create_agent

  def get_weather(city: str) -> str:
      """获取给定城市的天气。"""
      return f"It's always sunny in {city}!"

  agent = create_agent(
      model="fireworks:accounts/fireworks/models/qwen3p5-397b-a17b",
      tools=[get_weather],
      system_prompt="You are a helpful assistant",
  )

  result = agent.invoke(
      {"messages": [{"role": "user", "content": "What's the weather in San Francisco?"}]}
  )
  print(result["messages"][-1].content_blocks)
  ```

  ```python Baseten theme={"theme":{"light":"catppuccin-latte","dark":"catppuccin-mocha"}}
  # pip install -qU langchain langchain-baseten
  from langchain.agents import create_agent

  def get_weather(city: str) -> str:
      """获取给定城市的天气。"""
      return f"It's always sunny in {city}!"

  agent = create_agent(
      model="baseten:zai-org/GLM-5",
      tools=[get_weather],
      system_prompt="You are a helpful assistant",
  )

  result = agent.invoke(
      {"messages": [{"role": "user", "content": "What's the weather in San Francisco?"}]}
  )
  print(result["messages"][-1].content_blocks)
  ```

  ```python Ollama theme={"theme":{"light":"catppuccin-latte","dark":"catppuccin-mocha"}}
  # pip install -qU langchain langchain-ollama
  from langchain.agents import create_agent

  def get_weather(city: str) -> str:
      """获取给定城市的天气。"""
      return f"It's always sunny in {city}!"

  agent = create_agent(
      model="ollama:devstral-2",
      tools=[get_weather],
      system_prompt="You are a helpful assistant",
  )

  result = agent.invoke(
      {"messages": [{"role": "user", "content": "What's the weather in San Francisco?"}]}
  )
  print(result["messages"][-1].content_blocks)
  ```

  ```python Azure theme={"theme":{"light":"catppuccin-latte","dark":"catppuccin-mocha"}}
  # pip install -qU langchain "langchain[openai]"
  import os
  from langchain.agents import create_agent

  def get_weather(city: str) -> str:
      """获取给定城市的天气。"""
      return f"It's always sunny in {city}!"

  agent = create_agent(
      model="azure_openai:gpt-5.4",
      tools=[get_weather],
      system_prompt="You are a helpful assistant",
      azure_deployment=os.environ["AZURE_OPENAI_DEPLOYMENT_NAME"],
  )

  result = agent.invoke(
      {"messages": [{"role": "user", "content": "What's the weather in San Francisco?"}]}
  )
  print(result["messages"][-1].content_blocks)
  ```

  ```python AWS Bedrock theme={"theme":{"light":"catppuccin-latte","dark":"catppuccin-mocha"}}
  # pip install -qU langchain langchain-aws
  from langchain.agents import create_agent

  def get_weather(city: str) -> str:
      """获取给定城市的天气。"""
      return f"It's always sunny in {city}!"

  agent = create_agent(
      model="anthropic.claude-3-5-sonnet-20240620-v1:0",
      model_provider="bedrock_converse",
      tools=[get_weather],
      system_prompt="You are a helpful assistant",
  )

  result = agent.invoke(
      {"messages": [{"role": "user", "content": "What's the weather in San Francisco?"}]}
  )
  print(result["messages"][-1].content_blocks)
  ```

  ```python HuggingFace theme={"theme":{"light":"catppuccin-latte","dark":"catppuccin-mocha"}}
  # pip install -qU langchain "langchain[huggingface]"
  from langchain.agents import create_agent

  def get_weather(city: str) -> str:
      """获取给定城市的天气。"""
      return f"It's always sunny in {city}!"

  agent = create_agent(
      model="microsoft/Phi-3-mini-4k-instruct",
      model_provider="huggingface",
      tools=[get_weather],
      system_prompt="You are a helpful assistant",
      temperature=0.7,
      max_tokens=1024,
  )

  result = agent.invoke(
      {"messages": [{"role": "user", "content": "What's the weather in San Francisco?"}]}
  )
  print(result["messages"][-1].content_blocks)
  ```
</CodeGroup>

参阅[安装说明](/oss/python/langchain/install)和[快速入门指南](/oss/python/langchain/quickstart)，开始使用 LangChain 构建您自己的代理和应用程序。

<Tip>
  使用 [LangSmith](/langsmith/home) 来跟踪请求、调试代理行为并评估输出。设置 `LANGSMITH_TRACING=true` 和您的 API 密钥即可开始。
</Tip>

## <Icon icon="star" size={20} /> 核心优势

<Columns cols={2}>
  <Card title="标准模型接口" icon="refresh" href="/oss/python/langchain/models" arrow cta="了解更多">
    不同的提供商有其独特的模型交互 API，包括响应格式。LangChain 标准化了您与模型交互的方式，使您可以无缝切换提供商并避免锁定。
  </Card>

  <Card title="易于使用、高度灵活的代理" icon="wand" href="/oss/python/langchain/agents" arrow cta="了解更多">
    LangChain 的代理抽象设计易于上手，让您在不到 10 行代码中构建一个简单的代理。但它也提供了足够的灵活性，允许您进行所有期望的上下文工程。
  </Card>

  <Card title="构建于 LangGraph 之上" icon="https://mintcdn.com/other-405835d4/zfoblcQReEYa-is2/images/brand/langgraph-icon.png?fit=max&auto=format&n=zfoblcQReEYa-is2&q=85&s=4fe8f4c70fe7b1ddc099d7d83148a043" href="/oss/python/langgraph/overview" arrow cta="了解更多" width="195" height="195" data-path="images/brand/langgraph-icon.png">
    LangChain 的代理构建于 LangGraph 之上。这使我们能够利用 LangGraph 的持久执行、人在回路支持、持久化等功能。
  </Card>

  <Card title="使用 LangSmith 调试" icon="https://mintcdn.com/other-405835d4/zfoblcQReEYa-is2/images/brand/observability-icon-dark.png?fit=max&auto=format&n=zfoblcQReEYa-is2&q=85&s=a5ea23e3bf9ca95c33f73f9b2c93339d" href="/langsmith/observability" arrow cta="了解更多" width="200" height="200" data-path="images/brand/observability-icon-dark.png">
    通过可视化工具深入洞察复杂的代理行为，这些工具可以跟踪执行路径、捕获状态转换并提供详细的运行时指标。
  </Card>
</Columns>

***

<div className="source-links">
  <Callout icon="terminal-2">
    [将这些文档](/use-these-docs)通过 MCP 连接到 Claude、VSCode 等，以获取实时答案。
  </Callout>

  <Callout icon="edit">
    [在 GitHub 上编辑此页面](https://github.com/langchain-ai/docs/edit/main/src/oss/langchain/overview.mdx) 或 [提交问题](https://github.com/langchain-ai/docs/issues/new/choose)。
  </Callout>
</div>
