2026/7/7 10:25:36

155、LangChain Tool 与 Memory:自定义工具、对话记忆、向量记忆与摘要记忆

155、LangChain Tool 与 Memory:自定义工具、对话记忆、向量记忆与摘要记忆 155、LangChain Tool 与 Memory:自定义工具、对话记忆、向量记忆与摘要记忆一个让我熬夜到凌晨三点的Bug上周五晚上,一个客户的生产环境突然报错——Agent在调用自定义工具时,明明传入了正确的参数,却总是返回“工具不存在”的错误。我盯着日志看了两个小时,最后发现是Memory模块把工具调用的历史记录截断了,导致Agent在后续轮次中丢失了工具注册信息。这个坑让我意识到,很多人对LangChain的Tool和Memory的理解还停留在“会用”层面,一旦遇到复杂场景就抓瞎。今天这篇笔记,我就把这两个模块的底层逻辑和实战踩坑经验一次性说清楚。自定义工具:别被官方文档带偏了LangChain的工具机制本质上是一个函数注册表,但很多人写自定义工具时犯的第一个错误就是——把工具写成了普通函数。fromlangchain.toolsimportBaseToolfromtypingimportOptional