摘要音频
本节课没有语音摘要。
学习笔记
🤖 Claude 工具调用与多块消息 (Tool Calling & Multi-Block Messages)
一、工具集成机制 (Tool Integration Mechanism)
- 目的: 通过向 Claude 提供工具的 JSON 模式 (JSON Schema),告知模型可用的功能。
- 请求结构: 在向 Claude 发送请求时,除了包含用户消息外,必须包含一个 tools 关键字参数。
- tools 参数: 这是一个列表,其中包含所有已定义的工具 JSON 模式规范(例如 get current datetime schema)。
二、响应结构变化 (Response Structure Change)
- 多块消息 (Multi-Block Message): 当 Claude 决定使用工具时,返回的助手消息 (Assistant Message) 不再是单一的文本块,而是包含多个内容块的结构。
- 内容列表 (Content List) 组成:
- 文本块 (Text Block): 供用户阅读的文本,用于解释当前正在发生的事情(例如:“我将为您查找当前时间”)。
- 工具使用块 (Tool Use Block): 供开发者(系统)执行的指令。它列出了 Claude 希望调用的函数名称,以及需要传入的参数(Arguments)。
三、对话历史管理 (Conversation History Management)
- 核心原则: Claude 不会自行存储或维护对话历史。
- 开发者责任: 必须手动管理整个对话历史。
- 历史记录更新: 当系统执行工具调用后,必须将完整的对话历史(包括包含多块内容的响应)重新发送给 Claude,以维持对话的连贯性。
- 数据收集要点: 在构建历史记录时,必须确保捕获整个消息对象中的 content 列表(即所有内容块),而不仅仅是文本内容。
Takeaways
- 工具通过提供 JSON 模式(Schema)在 tools 参数中集成,告知模型可用功能。
- 当模型决定使用工具时,助手消息变为多块消息,包含文本块(解释)和工具使用块(函数调用指令)。
- 对话历史必须由开发者手动管理,Claude 不会自行存储或维护历史记录。
- 为维持对话连贯性,系统必须将包含所有内容块的完整历史记录重新发送给 Claude。
抽认卡 7 张卡片
问题
点击显示 · ←/→
答案
点击翻回
知识检测 0 题
No quiz for this lesson yet.