【Agent笔记 | 第五篇】LangChain&LangGraph

目录

[LangChain 详解](#LangChain 详解)

[1. 定义与定位](#1. 定义与定位)

[2. 核心功能](#2. 核心功能)

[3. 主要用途](#3. 主要用途)

[LangGraph 详解](#LangGraph 详解)

[1. 定义与定位](#1. 定义与定位)

[2. 核心特性](#2. 核心特性)

[3. 主要用途](#3. 主要用途)

[LangChain vs LangGraph 核心区别](#LangChain vs LangGraph 核心区别)


LangChain 详解

1. 定义与定位

LangChain 是一个用于构建基于大语言模型(LLM)应用程序的开源框架。它主要定位为工具包(Toolkit),为开发者提供了一系列可组合的组件和工具,用于将LLM与外部数据源、工具和服务连接起来。

2. 核心功能

组件化设计:LangChain采用模块化架构,包含以下核心组件:

  • Models(模型):支持各种LLM提供商的接口封装
  • Prompts(提示模板):管理和优化提示工程
  • Chains(链):将多个组件串联成工作流
  • Memory(记忆):管理对话上下文和状态
  • Indexes(索引):文档加载、分割和向量存储
  • Agents(代理):基于LLM的决策和工具调用

集成生态:LangChain提供了丰富的集成,支持:

  • 各种LLM提供商(OpenAI、Anthropic、Cohere等)
  • 向量数据库(Pinecone、Weaviate、Chroma等)
  • 工具和API(搜索引擎、计算器、代码执行器等)

3. 主要用途

  1. 文档问答系统:基于检索增强生成(RAG)的问答
  2. 聊天机器人:具有上下文记忆的对话系统
  3. 内容生成:自动化写作和摘要生成
  4. 数据分析:将自然语言转换为数据库查询
  5. 代码生成与执行:AI辅助编程

LangGraph 详解

1. 定义与定位

LangGraph 是LangChain团队开发的图结构编排框架 ,专门用于构建有状态的、多参与者(multi-actor)的应用程序。它主要定位为编排框架(Orchestration Framework),专注于解决复杂agent工作流的编排问题。

2. 核心特性

图结构工作流 :LangGraph基于有向图的概念,允许开发者定义:

  • 节点(Nodes):代表计算单元或函数
  • 边(Edges):定义执行流程和条件分支
  • 状态(State):在节点间传递和维护的共享数据

关键优势

  • 支持循环:与传统的DAG(有向无环图)不同,LangGraph支持循环和条件分支
  • 状态管理:内置的状态持久化和恢复机制
  • 人类干预:支持在执行过程中插入人工审核步骤
  • 流式处理:支持实时流式输出和中间结果

3. 主要用途

  1. 复杂Agent系统:多步骤、多工具协调的智能体
  2. 对话流程管理:复杂的多轮对话状态机
  3. 自动化工作流:业务流程自动化和决策树
  4. 人机协作系统:需要人工审核和干预的任务
  5. 实时交互应用:需要流式响应的系统

LangChain vs LangGraph 核心区别

维度 LangChain LangGraph
定位 工具包(Toolkit) 编排框架(Orchestration Framework)
架构 链式组合(Chain-based) 图结构(Graph-based)
状态管理 基础对话记忆 内置状态持久化和恢复
执行模式 线性流水线 支持循环和条件分支
复杂度 适合简单到中等复杂度任务 适合复杂多步骤工作流
人类干预 需要额外实现 内置支持
学习曲线 相对平缓 相对陡峭

实际上,LangChain和LangGraph经常协同工作

  • 使用LangChain的组件作为构建块(模型、工具、检索器等)
  • 使用LangGraph作为编排层来组织这些构建块

例如,你可以用LangChain连接向量数据库和LLM,然后用LangGraph来编排一个复杂的RAG agent,该agent能够:

  1. 分析用户查询
  2. 决定是否需要检索
  3. 执行多轮检索和推理
  4. 在需要时请求人工澄清
相关推荐
用户38845671995416 分钟前
LangChain 源码解析:HumanInTheLoopMiddleware 如何实现 Agent 人机协同
langchain
树的枝34 分钟前
【STM32】03.中断和EXTI外设
笔记·stm32·单片机·嵌入式硬件
Wang's Blog1 小时前
PostgreSQL笔记34:索引优化策略全景解析——从B-tree到HOT的核心原理与实践
数据库·笔记·postgresql
金字塔頂の蝸牛1 小时前
商务日语口语实用手册
笔记·学习笔记·日语·外语
l1258651 小时前
# RAG向量数据库优化实战:HNSW索引调参与生产级性能设计
数据库·python·mysql·langchain
HwJack202 小时前
UIAbility 生命周期全链路:从冷启动到热启动的实战笔记
笔记·华为·harmonyos
九硕智慧建筑一体化厂家2 小时前
直流智能照明|全场景节能升级!打造安全低碳的智慧建筑光环境
运维·笔记·安全·智慧城市
l1258653 小时前
# RAG噪声知识库治理:一致性与可信度的四层防线设计
数据库·人工智能·python·自然语言处理·langchain
二进制_博客4 小时前
rag面试题之rag 系统如何解决 llm 的幻觉问题
langchain·rag
Wang's Blog5 小时前
PostgreSQL笔记36:执行计划基础解读与优化器成本模型
数据库·笔记·postgresql