什么是 LangGraph?

作者

Bryan Clark

Senior Technology Advocate

什么是 LangGraph?

LangGraph 由 LangChain 创建,是一个开源的 AI 智能体框架,旨在构建、部署和管理复杂的生成式 AI 智能体工作流。它提供了一系列工具和库,使用户能够以可扩展和高效的方式创建、运行和优化大型语言模型 (LLM)。从本质上讲,LangGraph 利用基于图形的架构的强大功能来建模和管理 AI 智能体工作流的各个组件之间的复杂关系。

所有这些信息意味着什么?以下示例可以让我们更清楚地了解 LangGraph:将这些基于图形的架构视为强大的可配置地图,即“超级地图”。用户可以将 AI 工作流想象成这个“超级地图”的“导航员”。最后,在该示例中,用户是“制图师”。从这个意义上说,导航员在“超级地图”上绘制出各点之间的最佳路线,而所有这些路线都是由“制图师”绘制的。

简而言之,通过使用 AI 工作流(“导航员”),在基于图形的架构 (“超级地图”)中绘制和探索最佳路线。这个比喻是理解 LangGraph 的绝佳起点,如果您也喜欢地图,还能额外收获一个惊喜:顺便看到有人用上“制图师”这个词。

LangGraph 工作流
LangGraph 工作流

LangGraph 阐明了 AI 工作流中的过程,使智能体的状态完全透明。在 LangGraph 中,“状态”功能就像一个记忆库,记录和跟踪 AI 系统处理的所有有价值的信息。它类似于数字笔记本,当数据在工作流或图表分析的各个阶段移动时,系统会捕捉并更新数据。

例如,如果您运行智能体来监控天气,此功能可以跟踪下雪的次数并根据不断变化的降雪趋势提出建议。这种对系统如何完成复杂任务的可观测性,有助于初学者进一步了解状态管理。状态管理有助于调试,因为它可以集中管理应用进程的状态,从而缩短整个调试过程。

这种方法可以实现更有效的决策、提高可扩展性和增强整体性能。这种方法还能让更多人参与进来,因为他们可能是新手,或者更希望更清楚地了解幕后的情况。

LangGraph 还建立在几项关键技术之上,其中包括用于构建 AI 应用程序的 Python 框架 LangChain。LangChain 包含一个用于构建和管理 LLM 的库。LangGraph 也采用了人机回圈方法。通过将这些技术与一系列 API 和工具相结合,LangGraph 为用户提供了开发 AI 解决方案和工作流的多功能平台,包括聊天机器人、状态图和其他基于智能体的系统。

通过探索 LangGraph 的关键功能、优点和用例,更深入地了解 LangGraph 的世界。阅读完本文后,您将掌握使用 LangGraph 采取下一步行动的知识和资源。

LangGraph 的主要组件

让我们首先了解构成 LangGraph 的关键组件。框架围绕几个关键组件构建,这些组件协同工作,使用户能够创建和管理复杂的 AI 工作流。这些组件包括:

监控机制

人机回圈:人机回圈 (HITL) 是指在过程中某个时刻需要人机交互。在机器学习 (ML) 领域,HITL 指的是一种协作过程,在这一过程中,人类增强了机器的计算能力,从而在创建模型的同时做出明智的决策。通过使用最关键的数据点,HITL 提高了机器学习算法的准确性,超越了随机抽样方法。

图形架构

状态图:图中的每个节点代表计算中的一个步骤的概念,本质上是设计一个状态图。这种有状态的方法允许图形保留有关之前步骤的信息,从而在计算展开时能够对信息进行连续的上下文处理。用户可以使用其 API 管理 LangGraph 的所有状态图。

循环图:循环图是指包含至少一个循环的图,对于智能体运行时至关重要。这意味着存在一条起点和终点都在同一节点的路径,从而在图中形成一个循环。复杂的工作流往往涉及循环依赖关系,其中一个步骤的结果取决于循环中的前几个步骤。

节点 :在 LangGraph 中,节点代表 AI 工作流中的各个组件或智能体。节点可以被认为是以特定方式相互交互的“参与者”。例如, 要添加用于工具调用的节点,可以使用 ToolNode。另一个例子是“下一个节点”,指的是当前节点之后要执行的节点。

边缘:边缘是 Python 中的一种函数,用于根据当前状态确定接下来要执行的节点。边缘可以是条件分支或固定转换。

工具

RAG检索增强生成 (RAG) 通过检索相关文档,将 LLM 的强大功能与外部来源的上下文信息相结合,然后将这些文档用作答案生成的输入。

工作流:工作流是定义 AI 工作流的节点交互序列。通过将节点排列到工作流中,用户可以利用各个组件的优势创建更复杂、更动态的工作流。

API:LangGraph 提供了一组 API ,使用户能够以编程方式与其组件进行交互。用户可以使用 API 密钥,添加新节点,修改现有的工作流,以及从 AI 工作流中检索数据。

LangSmith:LangSmith 是一种专门用于在 LangGraph 中构建和管理 LLM 的 API。它提供了用于初始化 LLM、添加条件边缘和优化性能的工具。通过以创新的方式组合这些组件,用户可以利用各个组件的优势,构建更复杂的 AI 工作流。

专家为您带来最新的 AI 趋势

获取有关最重要且最有趣的 AI 新闻的精选洞察分析。订阅我们的每周 Think 时事通讯。请参阅 IBM 隐私声明

谢谢!您已订阅。

您的订阅将以英语提供。您会在每份时事通讯中找到一个取消订阅链接。您可以在此处管理您的订阅或取消订阅。有关更多信息,请参阅我们的 IBM 隐私声明

LangGraph 如何扩展

LangGraph 通过使用基于图形的架构,使用户能够扩展 AI 工作流,而不会减慢或牺牲效率。LangGraph 通过对节点之间的复杂关系建模来实现增强决策,这意味着它使用 AI 智能体来分析节点过去的行为和反馈。在 LLM 的世界中,这个过程被称为反思。

增强决策 :通过对节点之间的复杂关系进行建模,LangGraph 为构建更有效的决策系统提供了一个框架。

提高灵活性:开源特性和模块化设计,方便开发人员集成新组件并调整现有工作流。

多智能体工作流:复杂的任务可以通过多智能体工作流来解决。这种方法涉及为特定任务或领域创建专用 LangChain 智能体。将任务路由到适当的 LangChain 智能体,可以实现并行执行并高效处理多样化的工作负载。这种多智能体网络架构体现了智能体自动的去中心化 协调。

Joao Moura 创建的一个典型示例是将 CrewAI 与 LangChain 和 LangGraph 结合使用。通过 CrewAI 编排自主 AI 智能体,检查电子邮件和创建草稿的工作已经自动化,使他们能够高效地协作和执行复杂的任务。

AI 智能体

5 种类型的 AI 智能体:自主功能与现实世界的应用

了解目标驱动和基于效用的 AI 如何适应工作流和复杂环境。

LangGraph 用例

聊天机器人:用户可以构建一个用于假期规划的应用程序,该应用程序采用基于节点的工作流和有向无环图(DAG)结构。聊天机器人学习对用户的最低输入做出反应,并为用户量身定制建议。目前,Google 的 Duplex 等服务正在以类似的方式使用 LangGraph 来模仿人类对话。

智能体系统:LangGraph 提供了一个用于构建基于智能体的系统的框架,而这些系统可用于机器人、自动驾驶汽车或视频游戏等应用程序。

LLM 应用程序:通过使用 LangGraph 的功能,开发人员可以构建更复杂的 AI 模型,并随着时间的推移不断学习和改进。挪威邮轮公司使用 LangGraph 来编译、构建和完善面向游客的 AI 解决方案。这种能力允许改善和个性化的游客体验。

LLM 在 LangGraph 中的集成

LangGraph 的智能体基于 OpenAI 的一系列 GPT(生成式预训练转换器)模型 GPT-3.5 和 GPT-4。不过,LangGraph 及其开源社区已推动接入了多款可通过 LLM API 配置初始化的其他模型,包括 Anthropic 和 AzureChatOpenAI 等模型。这个相对较小的循环类似于 Auto-GPT 等项目。

LangGraph 提供了一个 YouTube 教程,方便用户在其 GitHub 文档网站上探索如何与开源 LLM 集成。集成 LLM 的第一步是设置一个推理存储库,例如 LLaMA-Factory、FastChat 和 Ollama。通过该资源库,可以部署通过其 API 凭据配置的相应 LLM 模型。

其他 AI 智能体框架

CrewAI、MetaGPT 和 AutoGen 只是众多能够处理复杂工作流的多智能体框架中的几个代表。通过这种操作,可以采用更灵活、更细致的方法来应对各种计算挑战。通过提供全面的调试功能, 这些框架使开发人员能够快速识别并解决问题,从而实现更高效的开发和优化流程。

LangGraph Studio:用于工作流开发的可视化界面

LangGraph 还推出了 LangGraph Studio,这是用于工作流开发的可视化界面。借助 LangGraph Studio,用户可以使用图形界面设计和构建工作流,而无需编写代码。LangGraph Studio 可下载的桌面应用程序更适合初学者。LangGraph Studio 还提供了以下附加功能:

平缓的学习曲线:访问 LangGraph 不需要 LangGraph Studio。不过,通过使用 LangGraph Studio 的可视化界面,用户可以专注于设计工作流程,而不必被代码所困扰。

改进协作:LangGraph Studio 支持与他人(无论是开发团队还是客户)共享工作流。

调试:这些功能不仅限于构建图表,还包括调试功能,以确保图表准确可靠。LangGraph Studio凭借其先进的集成开发环境 (IDE),有助于可视化和调试 LangGraph 应用程序。

未来开发

增强自然语言处理 (NLP):LangGraph 将拥有更先进的 NLP 功能,使其能够更好地理解自然语言并提供更准确的响应。

改进的机器学习:LangGraph 将具备更强的机器学习能力,能够随着时间的推移不断学习和改进。

支持新平台:LangGraph 将支持移动设备和边缘计算等新平台,使其技术更易于使用。

相关解决方案
IBM AI 智能体开发

借助 IBM watsonx.ai 开发平台,让开发人员能够构建、部署和监控 AI 代理。

 

深入了解 watsonx.ai
人工智能 (AI) 解决方案

借助 IBM 业界领先的人工智能专业知识和解决方案组合,让人工智能在您的业务中发挥作用。

深入了解人工智能解决方案
AI 咨询与服务

通过增加 AI 重塑关键工作流程和运营,最大限度提升体验、实时决策和商业价值。

深入了解人工智能服务
采取下一步行动

无论您是选择定制预构建的应用程序和技能,还是使用 AI 开发平台构建和部署定制代理服务,IBM watsonx 平台都能满足您的需求。

探索 watsonx Orchestrate 深入了解 watsonx.ai