LangChain知识速览

LangChain知识速览

文章目录


核心概念

是什么

  • 大语言模型应用开发框架
  • Python/JS双语言支持
  • 链式调用设计哲学

核心优势

  • 模块化组件
  • 标准化接口
  • 生态丰富

核心组件

Model I/O

  • Models(模型)
    • LLMs(文本补全)
    • Chat Models(对话模型)
    • Embeddings(嵌入模型)
  • Prompts(提示词)
    • Prompt Template(模板)
    • Few-shot Prompting(少样本)
    • Example Selectors(示例选择器)
  • Output Parsers(输出解析器)
    • PydanticOutputParser
    • StructuredOutputParser
    • JSON/YAML解析

Chains(链)

  • LLMChain(基础链)
  • SequentialChain(顺序链)
  • RouterChain(路由链)
  • TransformChain(转换链)

Data Connection(数据连接)

  • Document Loaders(文档加载)
    • 文本/PDF/网页/数据库
  • Text Splitters(文本分割)
    • RecursiveCharacterTextSplitter
    • TokenTextSplitter
  • Vector Stores(向量存储)
    • Chroma/Pinecone/Milvus/FAISS
  • Retrievers(检索器)
    • similarity_search
    • MMR检索

Memory(记忆)

  • ConversationBufferMemory(缓冲记忆)
  • ConversationBufferWindowMemory(窗口记忆)
  • ConversationSummaryMemory(摘要记忆)
  • VectorStoreRetrieverMemory(向量检索记忆)

Agents(智能体)

  • Agent类型
    • Zero-shot ReAct
    • Structured Chat
    • Conversational
    • OpenAI Functions
  • Tools(工具)
    • 搜索引擎
    • 计算器
    • API调用
    • 自定义工具
  • AgentExecutor(执行器)

Callbacks(回调)

  • 日志记录
  • 流式输出
  • 监控追踪(LangSmith)

典型应用场景

RAG(检索增强生成)

  • 文档加载→分割→嵌入→检索→生成

Chatbot(对话机器人)

  • 多轮对话+记忆管理

Agents(自主代理)

  • 工具调用+任务规划

结构化数据提取

  • 从非结构化文本提取JSON

关键代码模式

基础链

chain = LLMChain(llm=llm, prompt=prompt)

result = chain.run(input)

RAG流程

加载→分割→存储→检索→问答

loader = TextLoader("doc.txt")

docs = loader.load()

splits = splitter.split_documents(docs)

vectorstore = Chroma.from_documents(splits, embeddings)

qa = RetrievalQA.from_chain_type(llm, retriever=vectorstore.as_retriever())

Agent使用

tools = search, calculator

agent = initialize_agent(tools, llm, agent="zero-shot-react-description")

agent.run("查询北京天气并计算摄氏度")

生态工具

LangSmith

  • 调试追踪
  • 性能监控
  • 提示词管理

LangServe

  • 链部署为API服务

LangGraph

  • 构建复杂多智能体工作流
相关推荐
先吃饱再说2 小时前
一篇文章被切成 100 块还怎么保持语义:RAG 分块的底层逻辑
langchain·llm
BraveWang11 小时前
【LangChain 1.x】06、Tool Calling|工具的四种定义方式与手动调用全流程
langchain
中微极客11 小时前
LangChain vs LlamaIndex:RAG框架选型深度对比
人工智能·langchain
项羽欧大哥12 小时前
LangChain 和 LangGraph 到底有什么区别?实际项目中应该怎么选
langchain·agent·langgraph
kiss strong13 小时前
AI学习-langchain
学习·langchain
又抓住你了15 小时前
LangChain概述与环境准备:从框架定位到第一个应用
langchain
海上彼尚16 小时前
Nodejs也能写Agent - 17.LangGraph篇 - Checkpointer 与 Memory
前端·javascript·人工智能·langchain·node.js
丘丘用户思思澪17 小时前
LangChain Agent 完全指南
人工智能·langchain
BreezeJiang18 小时前
我从一个最小 LangChain Demo 里,重新理清了 RAG 的主链路
langchain
phltxy18 小时前
LangChain从模型调用到应用编排
人工智能·深度学习·语言模型·langchain