LangGraph v0.2 通过新检查点器库增强定制功能

realtime news  Aug 09, 2024 04:38  UTC 20:38

1 Min Read

根据 LangChain 博客,LangChain 宣布稳定发布 LangGraph v0.2,这次更新引入了新的检查点器库。这些库旨在简化检查点器的创建和定制,从而增强大型语言模型 (LLM) 应用的弹性和功能。

为什么开发 LangGraph v0.2

LangGraph 的核心功能是其内置的持久层,通过检查点器实现。这些检查点器在每一步保存图的状态,使其具有会话记忆、错误恢复、人类参与功能和时间旅行等能力。自成立以来,LangGraph 的设计就与数据库无关,允许用户实现自己的检查点器适配器。

然而,对于用户如何为 Postgres、Redis 和 MongoDB 等流行数据库创建定制检查点器,并没有明确的蓝图。LangGraph v0.2 通过提供专用的检查点器库解决了这个问题。

LangGraph v0.2 中的新检查点器库

新版本包括一套检查点器库,使创建和定制检查点器变得更加容易:

  • langgraph_checkpoint:检查点器保存和序列化/反序列化的基本接口。
  • langgraph_checkpoint_sqlite:基于 SQLite 的检查点器,适合本地工作流和实验。
  • langgraph_checkpoint_postgres:为生产环境优化的 Postgres 检查点器,现已开源供社区使用。

这些实现可以互换使用,允许用户根据他们的具体需求定制他们的应用。

用于生产的 LangGraph Postgres 检查点器

langgraph_checkpoint_postgres 实现为创建优化的、生产准备好的检查点器提供了蓝图。它包括一些优化,例如使用 Postgres 管道模式减少数据库往返,并分别存储每个通道值以最小化存储需求。

开始使用 LangGraph v0.2

要开始使用,用户可以导入必要的检查点接口和实现:

  • from langgraph.checkpoint.base import BaseCheckpointSaver
  • from langgraph.checkpoint.memory import MemorySaver
  • from langgraph.checkpoint.sqlite import SqliteSaver
  • from langgraph.checkpoint.postgres import PostgresSaver

SQLite 和 Postgres 检查点器需要通过 pip install langgraph-checkpoint-sqlitepip install langgraph-checkpoint-postgres 分别安装。LangGraph 检查点库遵循语义版本控制,确保主库中的重大更改会导致相应的检查点库主要版本更新。

使用 LangGraph Cloud 扩展运行代理

LangGraph v0.2 还引入了 LangGraph Cloud,这是一个用于大规模部署代理的运行环境。LangGraph Cloud 管理任务队列、服务器,并包括强大的 Postgres 检查点器来处理并发用户和大数据状态。它支持实世界中的交互模式,如双消息、异步后台作业和定时任务。

LangGraph Studio 是一个用于可视化和调试代理轨迹的桌面应用,现在对所有 LangSmith 用户开放。LangGraph Cloud 目前处于 Plus 和 Enterprise 计划用户的公开测试阶段。

LangGraph v0.2 的其他更改

最新版本还包括几处重大更改和弃用:

重大更改

  • thread_tsparent_ts 重命名为 checkpoint_idparent_checkpoint_id
  • 由于使用命名空间包,重新导出导入已不可用。
  • SQLite 检查点器已移至单独的库。

弃用项

  • 移除 langgraph.prebuilt.chat_agent_executor.create_function_calling_executor
  • 移除 langgraph.prebuilt.agent_executor

结论

LangChain 对其社区的反馈和支持表示感谢。通过 LangGraph v0.2,用户可以期待更容易定制和维护检查点器实现,开创更具有弹性和更丰富功能的 LLM 应用。



Read More