- 使用 logging、analytics 和 debugging 跟踪代理行为。
- 转换 prompts、tool selection 和输出格式。
- 添加 retries、fallbacks 和提前终止逻辑。
- 应用 rate limits、guardrails 和 PII detection。
create_agent 来添加:
代理循环
核心代理循环包括调用模型、让模型选择要执行的 tools,然后在模型不再调用 tools 时结束:
Middleware 会在每个步骤前后暴露 hooks:
在 LangGraph workflow 中使用 middleware
Middleware 不是单独的 runtime:hooks 会在create_agent 返回的已编译 LangGraph 内运行。你可以将整个 agent(包括 middleware)作为节点或 subgraph 放入更大的 StateGraph 中,并且每个 middleware hook 都会继续运行。
当周围拓扑不只是标准的“循环直到完成”时,可以使用这种模式:例如在路由到多个 agents 之一之前对输入分类,并行扇出工作,或用确定性步骤串接 agent calls。
HumanInTheLoopMiddleware 会根据每个 tool 的 .name 进行匹配。在 Python 中,使用 @tool 装饰的函数会从函数名获取名称(因此下面的 key 是 "send_email");在 TypeScript 中,key 会匹配你传给 tool({...}, { name }) 的 name。
其他资源
Built-in middleware
探索常见用例的内置 middleware。
Custom middleware
使用 hooks 和 decorators 构建自己的 middleware。
Middleware API reference
Middleware 的完整 API reference。
Middleware integrations
Anthropic、AWS、OpenAI 等 provider-specific middleware。
Testing agents
使用 LangSmith 测试 agents。
Connect these docs to Claude, VSCode, and more via MCP for real-time answers.

