首页 / 详情
Site icon

LangChain

基本信息

LangChain 网站截图预览

工具详情

LangChain 全指南

一、平台介绍

LangChain 是 2022 年创立、基于 MIT 开源协议的大模型应用开发生态框架。

  • 官网地址:https://www.langchain.com
  • 核心定位:主打模型无关、模块化积木式开发,是 RAG 知识库、AI 智能体行业的通用开发底座。
  • 开发语言:支持 Python 和 JavaScript 双语言。
  • 生态规模:全球集成 700+ 生态组件。

1. 四大核心产品

  • LangChain:高封装的链式框架,适合快速搭建线性流程应用(如 RAG、普通对话机器人)。
  • LangGraph:底层有向图框架,适合构建带循环/分支/断点续跑的复杂智能体(生产级自主 Agent)。
  • LangSmith:云端观测调试平台(唯一付费模块),用于追踪调用链路、评测 Agent 效果。
  • LangServe:一键部署工具,将开发好的 Chain/Agent 转为 HTTP 接口,开源免费。

二、核心主要功能

1. 统一模型接入(模型 I/O)

  • 多模型支持:一套代码可对接国内外 100+ 大模型。
  • 包含模型:OpenAI/GPT、Claude、Gemini、文心一言、通义千问、ChatGLM、Ollama 本地开源模型等。
  • 优势:切换模型仅需修改一行配置,无厂商锁定。

2. Prompt 提示词工程

  • 内置模板:提供基础模板、少样本 FewShot、对话 Chat 模板、多级流水线模板。
  • 管理功能:统一管理提示词、动态变量填充。
  • 优化工具:配套 LangSmith PromptHub 在线调试优化提示词。

3. Memory 对话记忆管理

  • 短时记忆:使用内存缓存、滑动窗口(仅保留最近 N 轮对话)。
  • 长时记忆:对话落库至向量库,实现跨会话检索历史,解决大模型上下文窗口限制。

4. Chain 链式编排(LCEL 语法)

  • 核心语法:prompt | llm | parser 管道式写法。
  • 原生支持:流式输出、异步处理、批处理、失败重试。
  • 编排类型:支持顺序链、并行链、路由分支链。
  • 应用场景:快速搭建 RAG、文档摘要、数据解析流水线。

5. RAG 检索增强生成

  • 落地知识库核心:开箱即用的全流程组件。
  • 全链路处理:文档加载 (PDF/Word/网页/数据库) → 文本切块 → Embedding 向量化 → 存入向量库 (Chroma/Pinecone/FAISS) → 检索 → 拼接上下文喂给大模型。
  • 优势:无需自研文档解析与向量逻辑。

6. Agent 自主智能体

  • LangChain Agent:零样本 Agent、ReAct 思考 + 工具调用(联网查资料、调用计算器/API)。
  • LangGraph Agent:有状态 Agent,支持循环、自主规划、人工介入、断点保存(适合自动化办公、数据分析机器人)。

7. 生态集成(700+ 插件)

  • 覆盖范围:文档加载器、全品类向量数据库、搜索引擎 (谷歌/SerpAPI)、第三方 API、SQL 数据库、代码解析工具。

三、适用人群

  1. AI 个人开发者/学生:自学大模型落地、快速做知识库问答、小型 AI 工具原型,低成本验证想法。
  2. 算法/后端工程师:企业落地 RAG 知识库、智能客服、内部 AI 助手,避免重复封装大模型接入代码。
  3. 产品/创业团队:快速 MVP 验证 AI 产品,低成本搭建 Agent 产品,缩短开发周期。
  4. 政企数字化团队:私有知识库落地、业务系统嵌入 AI 能力、自动化流程 Agent。
  5. AI 科研人员:快速组合模型 + 工具,验证 Agent 算法、RAG 优化方案。
注意:不适合纯无代码小白(需要 Python 基础)、只想要现成成品 AI 软件的用户。

四、免费与付费详情

1. 核心规则

  • 开源库:LangChain、LangGraph、LangServe 永久免费(MIT 协议,商用无限制)。
  • 云服务:仅 LangSmith 云端服务分级收费。
  • 第三方成本:大模型 API、商用向量库由第三方单独计费,框架不抽成。

2. 开源代码(永久全免费)

  • 包含内容:LangChain Core、LangChain、LangGraph、LangServe 本地部署。
  • 权益:无版权费、无功能阉割,代码开源在 GitHub,可二次修改私有化部署。

3. LangSmith 云端服务套餐

  • Developer(免费个人版)费用:$0/月
  • 额度:1 个账号,每月 5000 条 Trace 调用日志
  • 限制:超出收费 0.5 美元/千条,数据存 14 天
  • 场景:个人开发、原型测试、学生学习
  • Plus(团队版)费用:39 美元/账号/月
  • 额度:单账号每月 10000 条 Trace,最多 10 个账号
  • 赠送:1 个 LangGraph 云部署、邮件客服
  • 场景:中小团队生产项目、多人协作开发
  • Enterprise(企业定制)费用:报价面议
  • 权益:自定义 Trace 额度、私有化部署、SSO 单点、专属技术支持、SLA 保障
  • 场景:中大型企业、合规私有化需求、大批量 Agent 上线

4. 额外隐性成本

  • 大模型 API:调用 OpenAI/通义千问等第三方模型按 token 计费。
  • 商用向量库:如 Pinecone 等云向量数据库按需付费。
  • 服务器:项目部署上线的云主机成本。

五、完整使用步骤(Python 主流)

步骤 1:环境安装

bash

# 安装核心包
pip install langchain langchain-core langchain-community langchain-openai

# RAG 额外依赖(文档 + 本地向量库)
pip install pypdf faiss-cpu chroma python-dotenv
# 安装核心包
pip install langchain langchain-core langchain-community langchain-openai

# RAG 额外依赖(文档 + 本地向量库)
pip install pypdf faiss-cpu chroma python-dotenv

步骤 2:配置模型密钥

  • 推荐方式:新建 .env 文件,禁止硬编码 Key。
  • 配置内容:
  • env
OPENAI_API_KEY=sk-xxx
OPENAI_API_BASE=https://api.openai.com/v1 # 国内代理接口必填
LANGSMITH_API_KEY=ls_xxx # 如需使用 LangSmith
LANGSMITH_TRACING=true   # 如需开启追踪
OPENAI_API_KEY=sk-xxx
OPENAI_API_BASE=https://api.openai.com/v1 # 国内代理接口必填
LANGSMITH_API_KEY=ls_xxx # 如需使用 LangSmith
LANGSMITH_TRACING=true   # 如需开启追踪
  • 代码加载:
  • python
from dotenv import load_dotenv
load_dotenv()
from dotenv import load_dotenv
load_dotenv()

步骤 3:快速入门经典案例

案例 ① 基础对话(LCEL 链式)

python

from langchain_openai import ChatOpenAI
from langchain.prompts import ChatPromptTemplate

# 初始化模型
llm = ChatOpenAI(model="gpt-3.5-turbo")
# 定义 Prompt
prompt = ChatPromptTemplate.from_template("回答问题:{question}")
# 串联链条
chain = prompt | llm
# 调用
res = chain.invoke({"question":"LangChain 是什么"})
print(res.content)
from langchain_openai import ChatOpenAI
from langchain.prompts import ChatPromptTemplate

# 初始化模型
llm = ChatOpenAI(model="gpt-3.5-turbo")
# 定义 Prompt
prompt = ChatPromptTemplate.from_template("回答问题:{question}")
# 串联链条
chain = prompt | llm
# 调用
res = chain.invoke({"question":"LangChain 是什么"})
print(res.content)

案例 ② 最简 RAG 本地知识库

python

# 加载 PDF → 切块 → 存 Chroma → 检索问答
from langchain.document_loaders import PyPDFLoader
from langchain.vectorstores import Chroma
from langchain_openai import OpenAIEmbeddings

loader = PyPDFLoader("xxx.pdf")
docs = loader.load_and_split()

# 创建向量数据库
vectordb = Chroma.from_documents(docs, OpenAIEmbeddings(), persist_directory="./chroma_db")
# 创建检索器
retriever = vectordb.as_retriever()
# 加载 PDF → 切块 → 存 Chroma → 检索问答
from langchain.document_loaders import PyPDFLoader
from langchain.vectorstores import Chroma
from langchain_openai import OpenAIEmbeddings

loader = PyPDFLoader("xxx.pdf")
docs = loader.load_and_split()

# 创建向量数据库
vectordb = Chroma.from_documents(docs, OpenAIEmbeddings(), persist_directory="./chroma_db")
# 创建检索器
retriever = vectordb.as_retriever()

案例 ③ LangGraph 简易自主 Agent

步骤 4:接入 LangSmith 调试

  • 开启追踪:运行代码自动在 LangSmith 后台查看全链路调用日志。
  • 环境变量:确保 LANGSMITH_TRACING=true

步骤 5:项目部署上线

  • 工具:使用 LangServe 一键封装为 API。
  • 代码示例:
  • python
from langserve import add_routes
# 假设 app 为你的 FastAPI 实例
add_routes(app, runnable=chain)
from langserve import add_routes
# 假设 app 为你的 FastAPI 实例
add_routes(app, runnable=chain)
  • 配合 FastAPI:对外提供 HTTP 服务。

六、高频避坑清单(实战总结)

1. 版本大坑(最高发)

  • 问题:网上旧教程代码导入报错(路径失效),LangChain 从 0.x 到 1.0 重构了包结构(拆分 langchain-core/community/openai)。
  • 解决:固定依赖版本,使用 requirements.txt 锁定,优先看官网最新文档,不照搬 2023 年前的旧代码。

2. API 密钥与代理配置

  • 问题:国内调用 OpenAI 报错连接失败,OPENAI_API_BASE 地址配置错误。
  • 解决:统一在 .env 配置 base_url,不用代码硬写,国内转发接口务必核对域名,排查网络代理。

3. RAG 问答效果差

  • 误区:认为框架问题导致答案不准。
  • 真相:90% 问题出在文档切块不合理、Embedding 模型不匹配中文、检索 TopK 参数、Prompt 未约束模型。
  • 解决:优化 chunk_size=300~800、添加重排 Rerank、提示词强制“仅参考提供文档回答”。

4. Agent 乱调用工具

  • 问题:Agent 频繁错选工具、编造参数、无限循环调用。
  • 解决:完善 Tool 描述文案、强制入参 Schema 校验、调低模型 temperature=0(降低随机性)、添加工具调用次数上限。

5. 内存与上下文溢出

  • 问题:多轮对话超长触发 ContextWindowExceededError 超限。
  • 解决:改用滑动窗口 Memory(只保留最近 5 轮)、长对话摘要压缩、超长内容分段检索。

6. 向量库异常

  • 问题:Chroma 数据库损坏、加载失败。
  • 解决:异常时删除 chroma_db 文件夹重新入库,生产环境不用本地 Chroma,改用 PGVector 或云向量库。

7. LangSmith 计费踩坑

  • 问题:免费额度用完超额扣费,忘记关闭调试追踪。
  • 解决:开发环境开启 LANGSMITH_TRACING=true,生产环境关闭追踪避免 Trace 计费;免费版注意 14 天日志过期无法回溯排查问题。

七、官方学习入口

  1. 快速上手:https://www.langchain.com/quickstart-agents(一键跑通 Agent 示例)
  2. LangGraph 文档:https://www.langchain.com/langgraph
  3. 定价页:https://www.langchain.com/pricing-langsmith
  4. 完整文档:https://python.langchain.com/docs/introduction


评论

暂无评论