摘要

1) 一句话总结

本文档总结了 Claude Tool Use Cookbook 下篇的核心内容,聚焦于通过代码化调用、工具检索、上下文压缩、记忆管理和视觉结合等技术,解决复杂场景下 Agent 的可控性、可扩展性与可观测性,实现工具调用能力的生产化落地。

2) 关键要点

  • 核心目标:解决工具数量增多、上下文变长、会话变复杂时的 Agent 管理问题,推动工具调用从“可用”走向“可上线”。
  • 代码化工具调用 (PTC):将工具调度逻辑从 Prompt 中外置为可维护的代码。
  • 工具检索 (Tool Search):通过 Embeddings 检索候选工具,解决企业内部“工具市场”(如上百个工具并存)的动态路由与大规模工具选择问题。
  • 上下文压缩 (Context Compaction):自动压缩上下文,降低 Token 消耗,确保在长周期多轮对话中保持关键信息而不超出上下文限制。
  • 记忆管理 (Memory):沉淀跨轮次经验,减少重复探索成本。
  • 视觉与工具结合 (Vision + Tools):实现多模态执行链路,将图像识别结果接入外部工具链并完成结构化结果回写。
  • 架构解耦建议:将“工具选择”和“工具执行”分离,以便于独立进行调优和审计。
  • 工程实践建议:为上下文压缩与记忆管理设计显式的触发条件(避免隐式魔法化),并对工具调用链增加日志与指标以复盘失败路径。

正文

下篇聚焦 Tool Use 的生产化能力:当工具数量变多、上下文变长、会话变复杂时,如何让 Agent 依然可控、可扩展、可观测。这组 notebook 是从“可用”走向“可上线”的关键补充。

能力主线

  • Programmatic Tool Calling:把工具调度逻辑从 prompt 外置为可维护代码。
  • Tool Search:通过 embeddings 检索候选工具,解决大规模工具库选择问题。
  • Context Compaction:自动压缩上下文,降低 token 消耗并延长会话寿命。
  • Memory 管理:沉淀跨轮次经验,减少重复探索成本。
  • Vision + Tools:将图像理解结果接入外部工具链完成后续动作。

典型场景

  • 企业内部“工具市场”:上百工具并存时的动态路由。
  • 长周期任务:多轮对话中保持关键信息而不爆上下文。
  • 多模态执行链路:视觉识别 + 工具调用 + 结构化结果回写。

示例代码

import json
 
import anthropic
from utils.team_expense_api import get_custom_budget, get_expenses, get_team_members
 
client = anthropic.Anthropic()
 
tools = [
    {
        "name": "get_team_members",
        "description": "Returns a list of team members for a given department.",
        "input_schema": {
            "type": "object",
            "properties": {
                "department": {"type": "string"}
            },
            "required": ["department"],
        },
    },
]

使用建议

  • 将“工具选择”和“工具执行”分离,便于独立调优和审计。
  • 给 compaction 与 memory 设计显式触发条件,不要隐式魔法化。
  • 对工具调用链增加日志与指标,便于复盘失败路径。

相关文档

关联主题