AI 应用框架 · 01

LangChain 详细解析· AI 应用编排框架(工具箱 + 编排层)

让 LLM 更强大,构建可靠的 AI 应用。

LangChain 详细解析全景图
一句话总结

LangChain 是连接大语言模型与外部世界的桥梁,帮你快速构建强大、可靠、可扩展的 AI 应用。

1. LangChain 是什么?

LLM(大语言模型)

能力有限:无记忆、无工具、无联网、无结构化输出

LangChain(编排层)

能力增强:记忆(Memory)、工具(Tools)、流程(Chain/Agent)、结构化输出(Parser)

AI 应用

更智能、更可靠、更可控、可扩展

2. 核心模块详解

Prompts 提示模板

管理和复用提示模板,支持动态变量

示例:ChatPromptTemplate
Models 模型管理

统一管理多个 LLM,支持切换和配置

示例:OpenAI / ChatGLM / Llama2
Memory 记忆管理

在对话中保留上下文和历史信息

示例:ConversationBufferMemory
Tools 工具集

连接外部工具和 API,扩展能力

示例:搜索、计算器、API 调用
Chains 链式编排

按顺序编排各个步骤完成任务

示例:LLMChain / SequentialChain
Agents 智能体

根据目标自主选择工具并执行

示例:ReAct Agent / AgentExecutor
Retrievers 检索器

从外部知识库中检索相关信息

示例:VectorStoreRetriever
Output Parsers 输出解析

将 LLM 输出解析为结构化格式

示例:JsonOutputParser

3. 典型工作流程(Chain)

Step 1
输入
用户问题
Step 2
提示 Prompt
组装 Prompt
Step 3
模型
调用 LLM
Step 4
处理
解析输出
Step 5
输出
返回结果

4. Agent 执行流程(ReAct 思想)

思考
Thought
行动
Action
观察
Observation
再思考
Thought
→ 循环直到完成目标

5. 代码示例(快速上手)

from langchain.chat_models import ChatOpenAI
from langchain.prompts import ChatPromptTemplate
from langchain.chains import LLMChain

# 1. 定义模型
llm = ChatOpenAI(temperature=0.7)

# 2. 定义 Prompt 模板
prompt = ChatPromptTemplate.from_template(
    "你是一个{role},请回答以下问题:{question}"
)

# 3. 创建链
chain = LLMChain(llm=llm, prompt=prompt)

# 4. 运行
result = chain.run(role="AI 助手", question="什么是 LangChain?")
print(result)

6. 适用场景

智能问答系统文档问答(RAG)AI Agent 应用数据分析助手自动化工作流内容生成

7. 真实案例 & 开源项目

8. LangChain vs 其他框架

框架定位核心能力灵活性易用性适合场景
LangChain编排框架(工具箱)Chain / Agent / 工具 / 记忆★★★★★★★★★构建各类 AI 应用
AutoGPT自主执行 Agent目标驱动、自主执行★★★★★★★自动化任务执行
MetaGPT多智能体协作角色分工、协作流程★★★★★★复杂项目协作开发
LlamaIndex数据连接与 RAG数据处理与检索★★★★★★★★知识库 / RAG 应用
优势

模块化设计,灵活组合;生态庞大,社区活跃;文档完善;适合从原型到生产的全流程开发。