smolagents 的记忆通过 AgentMemory 对象管理,以 Python 列表形式保存完整的步骤历史。每次模型推理、工具执行或规划事件都会向列表中追加对应的步骤对象,完整的步骤序列在每次模型调用前被序列化为聊天消息,使大语言模型感知到持续的对话上下文。
当前版本(v1.26.0)的记忆仅存在于进程内存中,不具备以下能力:
社区已多次请求持久化功能,但目前仍作为开放特性请求跟踪。
开发者可以直接访问和检查 Agent 的记忆:
result = agent.run("你的任务")
for step in agent.memory.steps:
print(step.step_number, step.tool_calls or step.code_action)AgentMemory 支持 succinct_steps() 方法,可在规划更新时提供精简的历史上下文,避免上下文窗口溢出。此外,记忆结构适合导出到 Langfuse、OpenTelemetry 等可观测性平台进行日志记录和分析。