01—langchain 架构

langchain 架构

结构 1: LangChain

  • langchain :构成应用程序认知架构的 Chains, Agents, Retrieval strategies 等
    构成应用程序的链、智能体、RAG。
  • langchain-community :第三方集成
    比如:Model I/O、Retrieval、Tool & Toolkit;合作伙伴包 langchain-openai, langchain-anthropic 等。
  • langchain-Core:基础抽象和 LangChain 表达式语言 (LCEL)

LangChain,就是 AI 应用组装套件,封装了一堆的 API。langchain 框架不大,但是里面琐碎的知识点特别多。就像玩乐高,提供了很多标准化的乐高零件(比如,连接器、轮子等)

结构 2: LangGraph

LangGraph 可以看做基于 LangChain 的 api 的进一步封装,能够协调多个 Chain、Agent、Tools 完成更复杂的任务,实现更高级的功能。

结构 3: LangSmith

链路追踪。提供了 6 大功能,涉及 Debugging (调试)、Playground (沙盒)、Prompt Management (提示管理)、Annotation (注释)、Testing (测试)、Monitoring (监控)等。与 LangChain 无缝集成,帮助你从原型阶段过渡到生产阶段。

正是因为 LangSmith 这样的工具出现,才使得 LangChain 意义更大,要不仅靠一些 API(当然也可以不用,用原生的 API)。

结构 4: LangServe

将 LangChain 的可运行项和链部署为 REST API,使得它们可以通过网络进行调用。

Java 怎么调用 langchain 呢?就通过这个 langserve。将 langchain 应用包装成一个 rest api,对外暴露服务。同时,支持更高的并发,稳定性更好。

总结

LangChain 当中,最有前途的两个模块就是:LangGraph,LangSmith。

LangChain 能做 RAG,其它的一些框架也能做,而且做的也不错,比如 LlamaIndex。所以这时候 LangChain 要在 Agent 这块发力,那就需要 LangGraph。而 LangSmith,做运维、监控。故,二者是 LangChain 里最有前途的。

核心组件层次

txt 复制代码
┌───────────────────────────────────────────┐
│               应用层(Applications)         │
├───────────────────────────────────────────┤
│                链层(Chains)                │
├───────────────────────────────────────────┤
│               组件层(Components)           │
│  ┌──────────┬──────────┬──────────┐       │
│  │  Models  │ Prompts  │  Memory  │       │
│  ├──────────┼──────────┼──────────┤       │
│  │  Indexes │  Agents  │ Callbacks│       │
│  └──────────┴──────────┴──────────┘       │
├───────────────────────────────────────────┤
│               基础层(Foundation)           │
└───────────────────────────────────────────┘

核心组件

模块 作用 示例
Prompt 设定提示模板 "请分析以下文本情感:{text}"
LLM 调用大模型(如 OpenAI、Qwen、Claude) ChatOpenAI()
Parser 解析模型输出为结构化结果 StrOutputParser()with_structured_output()
Chain (LCEL) 用管道符把各模块串联起来 Prompt - LLM - Parser
Memory 保存历史对话,实现上下文记忆 RunnableWithMessageHistory()
Tool 工具调用,例如计算、查天气 @tool
RAG 检索增强问答,结合向量数据库 FAISS / Chroma
Fallback 模型或链出错时的自动回退 .with_fallbacks()

主要模块说明

🤖 Models(模型层)

-- LLM 接口:OpenAI、Anthropic、Hugging Face 等

-- Chat Models:专门用于对话的模型接口

-- Embeddings:文本向量化模型

📝 Prompts(提示层)

  • Prompt Templates:动态提示模板
  • Few-shot Examples:少样本学习示例
  • Output Parsers:结构化输出解析

🧠 Memory(记忆层)

  • Conversation Memory:对话记忆
  • Vector Store Memory:向量存储记忆
  • Summary Memory:摘要记忆

🔍 Indexes(索引层)

  • Document Loaders:文档加载器
  • Text Splitters:文本分割器
  • Vector Stores:向量数据库

🤖 Agents(代理层)

  • Tool Integration:工具集成
  • Decision Making:决策制定
  • Action Execution:动作执行
相关推荐
大模型真好玩1 天前
大模型训练全流程实战指南工具篇(七)——EasyDataset文档处理流程
人工智能·langchain·deepseek
勇气要爆发2 天前
吴恩达《LangChain LLM 应用开发精读笔记》1-Introduction_介绍
笔记·langchain·吴恩达
勇气要爆发2 天前
吴恩达《LangChain LLM 应用开发精读笔记》2-Models, Prompts and Parsers 模型、提示和解析器
android·笔记·langchain
SunnyRivers2 天前
LangChain中间件详解
中间件·langchain
fish_study_csdn2 天前
LangChain学习二:LangChain使用之Model I/O
langchain·大模型·ai agent
ZaneAI2 天前
🚀 Claude Agent SDK 使用指南:文件检查点与回退 (File Checkpointing)
langchain·agent·claude
chaors2 天前
Langchain入门到精通0x00:hello Langchain
人工智能·langchain·aigc
神秘的猪头2 天前
🖐️ 手写 Mini Cursor:用 Node.js Spawn 和 LangChain 打造全栈编程 Agent
langchain·llm·agent
心本无晴.2 天前
LangChain 完全指南:从入门到生产级智能体构建
langchain