LangChain 从入门到企业级 AI 应用开发

张开发
2026/5/3 1:23:34 15 分钟阅读
LangChain 从入门到企业级 AI 应用开发
目录一、什么是 LangChain二、LangChain 核心架构三、LangChain 核心模块解析1 LLM大模型接口2 Prompt提示词工程3 Memory记忆系统4 Tools工具调用四、RAG企业AI的核心技术五、AgentAI自动决策系统六、LangChain 企业级应用场景1 企业知识库2 AI数据分析助手3 AI自动化工作流七、LangChain 进阶LangGraph八、LangChain 学习路线第一阶段基础第二阶段核心能力第三阶段工程化九、一个完整 AI 项目架构示例十、总结在大模型时代单纯调用 LLM API 已经无法满足复杂业务需求。企业级 AI 应用需要连接企业数据调用外部工具构建自动化工作流设计复杂 Agent而LangChain正是为此而生。本文将系统介绍LangChain 核心架构核心模块解析RAG 应用开发Agent系统企业级AI应用架构帮助你从0到1掌握 AI 应用开发。一、什么是 LangChainLangChain 是一个大模型应用开发框架用于将 LLM 与数据、工具、业务逻辑、工作流连接起来从而构建复杂 AI 应用。LangChain 让大模型真正具备“行动能力”。二、LangChain 核心架构LangChain 的整体架构可以理解为五个核心模块┌─────────────┐ │ LLM │ └──────┬──────┘ │ ┌─────────────┼─────────────┐ │ │ │ Prompt Memory Tools │ │ │ └─────────────┼─────────────┘ │ Agent │ 应用核心模块包括模块作用Prompt提示词管理LLM大模型接口Memory对话记忆Tools工具调用AgentAI决策系统三、LangChain 核心模块解析1、 LLM大模型接口LangChain 通过统一的LLM接口抽象层LLM Wrapper可以接入几乎所有主流大模型包括国际主流模型GPT-4、Claude、Llama国内主流模型DeepSeek、Qwen、ERNIE Bot本地开源模型Mistral、Gemma、Yi因此LangChain 可以作为统一的大模型应用开发框架。示例代码调用大模型from langchain_openai import ChatOpenAI # 初始化模型 llm ChatOpenAI( modelgpt-4o, temperature0.7 ) # 调用模型 response llm.invoke(介绍一下 LangChain 的作用) print(response.content)输出示例LangChain 是一个用于构建大语言模型应用的框架 可以帮助开发者将大模型与外部数据源、工具和 业务逻辑结合从而构建复杂的 AI 应用系统。示例调用 DeepSeek如果使用国内模型例如DeepSeekfrom langchain_openai import ChatOpenAI llm ChatOpenAI( modeldeepseek-chat, base_urlhttps://api.deepseek.com, api_keyyour_api_key ) response llm.invoke(LangChain 的核心模块有哪些) print(response.content)示例调用本地开源模型如果使用本地模型例如 Ollamafrom langchain_community.chat_models import ChatOllama llm ChatOllama( modelllama3 ) response llm.invoke(LangChain 的作用是什么) print(response.content)2、LangChain 模型适配架构LangChain 的核心思想是统一接口 模型适配层LangChain │ ┌───────┼────────┐ │ │ │ OpenAI DeepSeek Ollama │ │ │ GPT4 V3 Llama32.1 Prompt提示词工程Prompt 是 AI 应用开发最核心的能力。示例from langchain.prompts import PromptTemplate template 你是一名AI专家。 问题 {question} 回答 prompt PromptTemplate( templatetemplate, input_variables[question] )2.2 Memory记忆系统让 AI 具备上下文记忆能力。示例from langchain.memory import ConversationBufferMemory memory ConversationBufferMemory() memory.save_context( {input: 你好}, {output: 你好} )2.3 Tools工具调用大模型可以调用外部系统例如搜索、数据库、API示例from langchain.tools import Tool def search(query): return 搜索结果 tool Tool( namesearch, funcsearch, description用于互联网搜索 )四、RAG企业AI的核心技术RAGRetrieval Augmented Generation是当前最重要的 AI 应用模式。核心流程用户问题 ↓ 向量检索 ↓ 相关知识 ↓ 大模型生成答案典型架构文档 ↓ 文本切分 ↓ Embedding ↓ 向量数据库 ↓ 相似度搜索 ↓ LLM回答常见向量数据库FAISS、Chroma、Milvus、Pinecone、Weaviate、QdrantLangChain 提供统一的 VectorStore 抽象接口可以接入绝大多数主流向量数据库。LangChain 通过统一 API使得开发者只需替换 VectorStore即可切换数据库。1、FAISS 示例代码本地向量库from langchain_community.vectorstores import FAISS from langchain_openai import OpenAIEmbeddings texts [ LangChain 是一个 LLM 应用开发框架, RAG 是检索增强生成技术, 向量数据库用于语义搜索 ] # embedding embeddings OpenAIEmbeddings() # 创建向量库 db FAISS.from_texts(texts, embeddings) # 相似度搜索 docs db.similarity_search(什么是 LangChain) for doc in docs: print(doc.page_content)2、Chroma 示例代码from langchain_community.vectorstores import Chroma from langchain_openai import OpenAIEmbeddings embeddings OpenAIEmbeddings() vectorstore Chroma.from_texts( texts[LangChain框架, RAG技术], embeddingembeddings, persist_directory./chroma_db ) docs vectorstore.similarity_search(什么是RAG) print(docs[0].page_content)3、Milvus 示例代码企业级向量库from langchain_community.vectorstores import Milvus from langchain_openai import OpenAIEmbeddings embeddings OpenAIEmbeddings() vector_db Milvus.from_texts( texts[LangChain介绍, AI知识库], embeddingembeddings, connection_args{ host: localhost, port: 19530 } ) docs vector_db.similarity_search(LangChain是什么) print(docs[0].page_content)4、Pinecone 示例代码云向量数据库import pinecone from langchain_pinecone import PineconeVectorStore from langchain_openai import OpenAIEmbeddings pinecone.init( api_keyyour_api_key, environmentus-east-1 ) embeddings OpenAIEmbeddings() vectorstore PineconeVectorStore.from_texts( texts[AI应用开发, LangChain教程], embeddingembeddings, index_namelangchain-demo ) docs vectorstore.similarity_search(AI应用) print(docs)5、Qdrant 示例代码from langchain_community.vectorstores import Qdrant from langchain_openai import OpenAIEmbeddings embeddings OpenAIEmbeddings() vectorstore Qdrant.from_texts( texts[AI Agent, LangChain框架], embeddingembeddings, urlhttp://localhost:6333 ) docs vectorstore.similarity_search(什么是AI Agent) print(docs)6、LangChain 向量数据库统一接口LangChain 所有向量数据库都遵循同一套接口vectorstore.add_documents() vectorstore.similarity_search() vectorstore.similarity_search_with_score() vectorstore.delete()例如docs vectorstore.similarity_search( LangChain是什么, k3 )五、AgentAI自动决策系统Agent 是 LangChain 最强大的能力。Agent 可以自动选择工具分解任务执行复杂流程示例用户帮我分析股票趋势 Agent 1 搜索股票数据 2 计算指标 3 生成分析报告LangChain Agent 架构用户问题 ↓ Agent ↓ 选择工具 ↓ 执行任务 ↓ 返回结果六、LangChain 企业级应用场景LangChain 已经在大量企业 AI 系统中应用。典型场景包括1 企业知识库企业文档 ↓ 向量数据库 ↓ RAG问答例如企业内部知识助手技术文档问答客服机器人2 AI数据分析助手自然语言 ↓ SQL Agent ↓ 数据库查询 ↓ 自动生成分析报告3 AI自动化工作流用户任务 ↓ Agent拆解任务 ↓ 调用工具 ↓ 执行流程七、LangChain 进阶LangGraph目前 LangChain 正在向Agent 工作流系统演进。代表框架LangGraphLangGraph 可以构建多 Agent 协作AI自动化流程AI工作流系统架构示例用户请求 ↓ Planner Agent ↓ Worker Agent ↓ Tool Agent ↓ 结果八、LangChain 学习路线推荐学习路线第一阶段基础Prompt Engineering、LLM、Embedding、Vector DB第二阶段核心能力RAG系统、Agent系统、Tools第三阶段工程化LangGraph、AI Workflow、企业级AI系统架构九、一个完整 AI 项目架构示例企业 AI 知识助手前端Vue │ ▼ APIFastAPI │ ▼ LangChain │ ▼ 向量数据库Milvus │ ▼ LLMDeepSeek / GPT十、总结LangChain 已经成为AI应用开发的核心框架之一。核心能力包括LLM调用RAG知识库Agent系统AI自动化工作流未来的 AI 系统本质都是大模型 数据 工具 工作流而 LangChain 正是连接这些能力的AI应用操作系统。

更多文章