- 日期
- 作者
- LangChain 团队
LangGraph
🐍 LangGraph Python 库的性能增强和 CI 基准测试
日期:
作者: LangChain 团队
我们已向 LangGraph Python 库发布了多项更新! 这些更新包括以下内容:
性能增强: 我们已做出重大改进,以简化处理流程并减少开销,从而在确保向后兼容性的同时提高整体性能。
减少了对同一对象和不从中受益的对象的
langchain.load.dumps
的冗余调用。使用带有自定义扩展类型的 MsgPack 替换了 JSON 序列化,从而提高了速度和效率。
避免了字典、列表和检查点中不必要的对象副本,除非严格要求。
将
BaseChannel
和所有子类切换为使用slots
,从而优化了内存使用。
代码优化和简化: 我们的重点是消除低效率并简化工作流程,以实现更快的执行速度。
当现有
CallbackManager
实例可用时,不再创建新的实例。重新实现了
langchain_core.runnables.ensure_config
和merge_configs
,以避免不必要的调用。使用伪随机数而不是加密安全的字节简化了检查点和任务 ID 的生成。
CI 基准测试和缓存改进: 为了保持高性能,我们引入了 CI 基准测试并改进了缓存机制。
添加了在 CI 上运行的性能基准测试,以跟踪和保持改进。
缓存了
RunnableCallable
中的函数签名检查,减少了不必要的查找。避免了条件边缘中动态
ChannelWrite
runnable 的创建,从而改善了执行流程。
这些更新共同增强了 LangGraph 的性能和可靠性,使其对用户而言更快、更高效。