概述
LangChain 的create_agent 底层运行在 LangGraph 的运行时上。
LangGraph 暴露了一个 Runtime 对象,包含以下信息:
- 上下文:静态信息,如用户 ID、数据库连接或代理调用的其他依赖项
- 存储:一个 BaseStore 实例,用于长期记忆
- 流写入器:一个对象,用于通过
"custom"流模式流式传输信息 - 执行信息:当前执行的身份和重试信息(线程 ID、运行 ID、尝试次数)
- 服务器信息:在 LangGraph 服务器上运行时的特定元数据(助手 ID、图 ID、已认证用户)
访问
使用create_agent 创建代理时,你可以指定 context_schema 来定义存储在代理 Runtime 中的 context 的结构。
调用代理时,传递 context 参数并包含运行的相关配置:
在工具中
你可以在工具中访问运行时信息,以:- 访问上下文
- 读取或写入长期记忆
- 写入自定义流(例如,工具进度/更新)
ToolRuntime 参数在工具内访问 Runtime 对象。
工具中的执行信息和服务器信息
通过runtime.execution_info 访问执行身份(线程 ID、运行 ID),在 LangGraph 服务器上运行时通过 runtime.server_info 访问服务器特定元数据(助手 ID、已认证用户):
server_info 为 None。
需要
deepagents>=0.5.0(或 langgraph>=1.1.5)才能使用 runtime.execution_info 和 runtime.server_info。在中间件中
你可以在中间件中访问运行时信息,以创建动态提示、修改消息或根据用户上下文控制代理行为。 使用Runtime 参数在节点式钩子内访问 Runtime 对象。对于包装式钩子,Runtime 对象在 ModelRequest 参数内可用。
中间件中的执行信息和服务器信息
中间件钩子也可以访问runtime.execution_info 和 runtime.server_info:
需要
deepagents>=0.5.0(或 langgraph>=1.1.5)。将这些文档通过 MCP 连接到 Claude、VSCode 等,以获取实时答案。

