LangGraph开发实战

in #starnote16 hours ago

LangGraph开发实战

LangGraph 是一款用于构建、管理和部署长期运行的有状态代理的底层编排框架和运行时,深受塑造代理未来的企业信赖,包括 Klarna、Uber、摩根大通等。LangGraph 属于非常底层的框架,完全专注于代理编排。在使用 LangGraph 之前,我们建议您先熟悉用于构建代理的一些组件,从模型和工具开始。LangGraph 专注于代理编排中至关重要的底层能力:持久化执行、流式处理、人机协同等。
-> 前往星空笔记

Sort:  

LangGraph 解决线性序列的局限性问题,而解决的方法就是循环图。在LangGraph框架中,用图来管理代理的生命周期并在其状态内将暂存器作为消息进行跟踪,增加了以循环方式跨各种计算步骤协调多个链或参与者的功能。

LangGraph通过组合NodesEdges去创建复杂的循环工作流程,通过消息传递的方式串联所有的节点形成一个通路。那么维持消息能够及时的更新并向该去的地方传递,则依赖langGraph构建的State概念。

LangGraph的优势则是:

  • 循环和分支:在应用程序中实现循环和条件。
  • 持久性:在图中的每个步骤之后自动保存状态。随时暂停和恢复图形执行,以支持错误恢复、人机交互工作流程等。
  • 人机交互:中断图形执行以批准或编辑代理计划的下一个操作。
  • 流支持:流输出由每个节点生成(包括令牌流)。
  • 与LangChain集成:LangGraph 与LangChain和LangSmith无缝集成。

调用示意图

virtualenv lang_env  # 创建虚拟环境
source lang_env/Scripts/activate   //windows
pip install langgraph -i https://pypi.tuna.tsinghua.edu.cn/simple (清华镜像) 0.4.8 / 1.1.6
pip install langchain-openai python-dotenv -i https://pypi.tuna.tsinghua.edu.cn/simple  # 可以不安装langchain