你是否曾惊叹于ChatGPT的强大,却又苦恼于如何将其能力集成到自己的业务系统中?或者,你是否希望构建一个能联网搜索、处理私人文档的智能助手?这正是LangChain要解决的核心问题。作为一个开源框架,LangChain简化了大型语言模型应用的开发流程,让你能像搭积木一样,组合模型、数据和工具,构建功能强大的AI应用。本教程将基于我们多次项目部署的经验,带你从零开始,掌握LangChain的核心用法。
在开始构建之前,你需要准备好“工具箱”。LangChain支持Python和JavaScript,但Python生态更为成熟。以下是具体步骤:
我们从一个经典场景开始:创建一个能根据公司名称生成简短宣传口号的AI应用。这个过程将清晰地展示LangChain的“链式”思想。

import os from langchain.llms import OpenAI os.environ["OPENAI_API_KEY"] = "你的密钥" llm = OpenAI(temperature=0.9) # temperature控制创造性
from langchain.prompts import PromptTemplate
prompt = PromptTemplate(
input_variables=["company"],
template="你是一家顶级营销公司的AI助手。请为{company}创作一句朗朗上口的品牌宣传口号。"
)
from langchain.chains import LLMChain
chain = LLMChain(llm=llm, prompt=prompt)
result = chain.run("一家专注于环保材料的科技公司")
print(result)
运行后,你可能会得到类似“绿色科技,重塑未来——为地球而创新”的结果。这个简单的链条,已经实现了业务逻辑与模型调用的分离。
基础链只是开始。在实际项目中,我们常遇到三个挑战:模型需要最新知识、要处理长文本、以及需要执行具体操作。以下是经过验证的解决方案。
语言模型的知识有截止日期。通过“代理”和“工具”,你可以让模型主动获取实时信息。例如,集成SerpAPI进行网络搜索:

from langchain.agents import load_tools, initialize_agent
from langchain.agents import AgentType
tools = load_tools(["serpapi"], llm=llm) # 需单独注册SerpAPI
agent = initialize_agent(tools, llm, agent=AgentType.ZERO_SHOT_REACT_DESCRIPTION, verbose=True)
agent.run("查询今天北京到上海的机票最新价格趋势,并总结。")
模型会自主决定先搜索,再分析结果。verbose=True参数能让你看到其思考过程,这在调试时至关重要。
模型有上下文长度限制。处理长PDF或文章时,你需要“文本分割器”和“向量数据库”。流程是:分割文本 -> 嵌入为向量 -> 存储 -> 检索相关片段。以下是简化示例:

from langchain.text_splitter import CharacterTextSplitter
from langchain.embeddings import OpenAIEmbeddings
from langchain.vectorstores import Chroma
# 假设你有一段长文本 `long_text`
text_splitter = CharacterTextSplitter(chunk_size=1000, chunk_overlap=0)
texts = text_splitter.split_text(long_text)
# 创建向量数据库
embeddings = OpenAIEmbeddings()
docsearch = Chroma.from_texts(texts, embeddings)
# 提问
docs = docsearch.similarity_search("文档中提到了哪些关键数据?")
print(docs[0].page_content)
我们常在客户项目中推荐使用Chroma(轻量级)或Pinecone(云端托管)作为向量存储。
根据我们的部署经验,新手常踩两个坑:一是忽略token成本,二是错误设置temperature。对于持续运行的链,务必添加日志和用量监控。temperature参数并非越高越好,对于事实问答,应设置为接近0;对于创意生成,则可设为0.7-1.0。另一个关键点是错误处理,网络请求和API调用必须用try-except包裹,并为用户提供友好的降级回复。

通过本教程,你已经掌握了LangChain的核心:用链组合模型与提示,用代理赋予模型行动力,用检索处理长文本数据。LangChain的真正力量在于其模块化设计,让你能灵活替换其中的任何一个组件。现在,你可以立即行动:
构建AI应用不再需要从零造轮子。LangChain提供了坚实的脚手架,而你的创意和具体业务逻辑,才是最终应用脱颖而出的关键。开始搭建吧,下一个颠覆性的AI应用也许就诞生在你的手中。