跳到内容

LangGraph 服务器更新日志

LangGraph Server 是一个用于创建和管理基于代理的应用程序的 API 平台。它提供内置持久化、任务队列,并支持大规模部署、配置和运行助手(代理工作流)。本更新日志记录了 LangGraph Server 版本的所有重要更新、功能和修复。


v0.2.89 (2025-07-15)

  • 通过移除外键,将检查点写入与线程/运行状态解耦,并更新了日志记录器,以防止超时相关的故障。

v0.2.88 (2025-07-14)

  • 移除了 `run` 表中 `thread` 的外键约束,以简化数据库模式。

v0.2.87 (2025-07-14)

  • 为 Redis 工作程序信号添加了更详细的日志,以改进调试。

v0.2.86 (2025-07-11)

  • 遵守了 `/mcp` 端点中的工具描述,以与预期功能保持一致。

v0.2.85 (2025-07-10)

  • 为 `runs/wait` 添加了 `on_disconnect` 字段支持,并包含了断开连接日志,以便更好地调试。

v0.2.84 (2025-07-09)

  • 移除了不必要的状态更新,以简化线程处理,并将版本更新到 0.2.84。

v0.2.83 (2025-07-09)

  • 将可恢复流的默认生存时间缩短至 2 分钟。
  • 增强了数据提交逻辑,根据许可证配置将数据发送到 Beacon 和 LangSmith 实例。
  • 当端点配置好后,支持将自托管数据提交到 Langsmith 实例。

v0.2.82 (2025-07-03)

  • 通过使用 join 实现锁机制,解决了后台运行中的竞态条件,确保了 CTE 上的可靠执行。

v0.2.81 (2025-07-03)

  • 通过减少初始等待时间来优化运行流,以提高对旧的或不存在的运行的响应能力。

v0.2.80 (2025-07-03)

  • 更正了 `logger.ainfo()` API 调用中的参数传递,以解决 TypeError。

v0.2.79 (2025-07-02)

  • 通过修正 JSON 序列化以正确处理尾部斜杠,修复了远程图检查点中的 JsonDecodeError。
  • 引入了一个配置标志,用于在全球范围内禁用所有路由的 Webhook。

v0.2.78 (2025-07-02)

  • 为 Webhook 调用增加了超时重试机制,以提高可靠性。
  • 添加了 HTTP 请求指标,包括请求计数和延迟直方图,以增强监控能力。

v0.2.77 (2025-07-02)

  • 添加了 HTTP 指标以改进性能监控。
  • 更改了 Redis 缓存分隔符,以减少与子图消息名称的冲突,并更新了缓存行为。

v0.2.76 (2025-07-01)

  • 更新了 Redis 缓存分隔符,以防止与子图消息冲突。

v0.2.74 (2025-06-30)

  • 在独立的循环中调度 Webhook,以确保线程安全操作并防止 PYTHONASYNCIODEBUG=1 时的错误。

v0.2.73 (2025-06-27)

  • 修复了无限帧循环问题,并由于 structlog 的意外行为而移除了 dict_parser。
  • 在运行取消过程中发生死锁时抛出 409 错误,以优雅地处理锁冲突。

v0.2.72 (2025-06-27)

  • 确保与未来 langgraph 版本的兼容性。
  • 实现了 409 响应状态,以处理取消过程中的死锁问题。

v0.2.71 (2025-06-26)

  • 改进了日志记录,以提高日志类型的清晰度和细节。

v0.2.70 (2025-06-26)

  • 改进了错误处理,以更好地区分和记录由用户引起的 TimeoutErrors 和内部运行超时。

v0.2.69 (2025-06-26)

  • 为 cron API 添加了排序和分页功能,并更新了模式定义以提高准确性。

v0.2.66 (2025-06-26)

  • 修复了使用 `on_not_exist="create"` 创建具有相同 thread_id 的多个运行时出现的 404 错误。

v0.2.65 (2025-06-25)

  • 确保只在必要时返回 `assistant_versions` 中的字段。
  • 确保内存中用户和 PostgreSQL 用户的数据类型一致,从而改进内部身份验证处理。

v0.2.64 (2025-06-24)

  • 为版本条目添加了描述,以提高清晰度。

v0.2.62 (2025-06-23)

  • 改进了 JS Studio 中自定义身份验证的用户处理。
  • 为指标端点添加了 Prometheus 格式的运行统计信息,以实现更好的监控。
  • 为指标端点添加了 Prometheus 格式的运行统计信息。

v0.2.61 (2025-06-20)

  • 为 Redis 连接设置了最大空闲时间,以防止不必要的开放连接。

v0.2.60 (2025-06-20)

  • 增强了错误日志记录,以包含字典操作的回溯详细信息。
  • 添加了 `/metrics` 端点,以公开队列工作程序指标进行监控。

v0.2.57 (2025-06-18)

  • 从可重试异常中移除了 CancelledError,以允许本地中断,同时保持工作程序的重试能力。
  • 引入了中间件,以便在收到 SIGINT 后,在完成进行中的请求后优雅地关闭服务器。
  • 减少了检查点中存储的元数据,仅包含必要信息。
  • 改进了 join 运行中的错误处理,以便在存在错误时返回错误详细信息。

v0.2.56 (2025-06-17)

  • 通过添加 SIGTERM 信号处理器,提高了应用程序的稳定性。

v0.2.55 (2025-06-17)

  • 改进了队列入口点中取消的处理。
  • 改进了队列入口点中的取消处理。

v0.2.54 (2025-06-16)

  • 增强了许可证验证期间 LuaLock 超时的错误消息。
  • 通过要求显式 ::text 转换并相应地更新测试,修复了自定义身份验证中的 $contains 过滤器。
  • 确保项目和租户 ID 格式为 UUID,以保持一致性。

v0.2.53 (2025-06-13)

  • 解决了时序问题,确保队列仅在图注册后启动。
  • 通过在单个查询中设置线程和运行状态来提高性能,并增强了检查点写入期间的错误处理。
  • 将默认后台宽限期缩短至 3 分钟。

v0.2.52 (2025-06-12)

  • 现在,当省略图时会记录预期的图,以提高可追溯性。
  • 为可恢复流实现了生存时间 (TTL) 功能。
  • 通过添加唯一索引和优化行锁定,提高了查询效率和一致性。

v0.2.51 (2025-06-12)

  • 通过将任务标记为准备重试来处理 `CancelledError`,从而改进了工作程序进程中的错误管理。
  • 将 LG API 版本和请求 ID 添加到元数据和日志中,以便更好地跟踪。
  • 将 LG API 版本和请求 ID 添加到元数据和日志中,以提高可追溯性。
  • 通过并发创建索引来提高数据库性能。
  • 确保仅在设置 Redis 运行标记后才提交 PostgreSQL 写入,以防止竞态条件。
  • 通过在 thread_id/running 上添加唯一索引、优化行锁并确保确定性运行选择,提高了查询效率和可靠性。
  • 通过确保仅在设置 Redis 运行标记后才发生 PostgreSQL 更新,解决了竞态条件。

v0.2.46 (2025-06-07)

  • 为每个操作引入了新连接,同时在 Threads 状态的 `update()` 和 `bulk()` 命令中保留了事务特性。

v0.2.45 (2025-06-05)

  • 通过整合跟踪上下文增强了流式传输功能。
  • 从 Crons.search 函数中移除了不必要的查询。
  • 解决了为多个 cron 作业调度下一次运行时连接重用问题。
  • 移除了 Crons.search 函数中不必要的查询以提高效率。
  • 通过改进连接重用,解决了调度下一次 cron 运行的问题。

v0.2.44 (2025-06-04)

  • 增强了工作程序逻辑,以便在达到 Redis 消息限制时在继续之前退出管道。
  • 引入了 Redis 消息大小的上限,并提供了跳过大于 128 MB 消息的选项,以提高性能。
  • 确保管道始终正确关闭,以防止资源泄漏。

v0.2.43 (2025-06-04)

  • 通过在元数据调用中省略日志并确保值流中的输出模式合规性来提高性能。
  • 确保使用后连接已正确关闭。
  • 将输出格式严格对齐到指定的模式。
  • 停止在元数据请求中发送内部日志以提高隐私性。

v0.2.42 (2025-06-04)

  • 添加了时间戳以跟踪请求运行的开始和结束。
  • 将跟踪器信息添加到配置设置中。
  • 添加了对带有跟踪上下文的流式传输的支持。

v0.2.41 (2025-06-03)

  • 添加了锁定机制,以防止管道执行中的错误。