摘要音频
本节课没有语音摘要。
学习笔记
🤖 学习笔记:工具(Tools)的应用
一、 核心目标与挑战
- 目标: 训练 Claude 能够设置未来提醒(例如:“提醒我下周四的医生预约”)。
- 实现方法: 通过实现一系列专门的工具(Tools)。
- 需要解决的挑战(Tools 的必要性):
- 时间精度问题: Claude 知道当前日期,但不能总是准确知道当前时间(只知道日期,不知道精确到小时/分钟的时间)。
- 时间计算问题: Claude 在处理时间加法时(如“从 1974 年 1 月 13 日开始计算 379 天”)可能出错。
- 功能缺失问题: Claude 本身没有内置设置未来提醒的机制或概念。
二、 解决方案:工具设计
- 工具数量: 需要创建至少三个独立的工具来解决上述问题。
- 工具功能列表:
- getCurrentDate / getCurrentDateTime:获取当前的日期和时间。
- addDurationToDate:将一个时间段(Duration)加到特定的日期时间上。
- 提醒设置工具:最终负责执行提醒设置的工具。
三、 工具函数实现步骤
- 实现流程:
- 编写工具函数(Tool Function):这是一个纯 Python 函数,将在服务器端被自动调用。
- (后续步骤)编写 JSON Schema 规范来描述该工具函数。
- 当前重点: 实现 getCurrentDateTime 函数。
- 输入参数: date format (日期格式),默认值通常为 %Y-%m-%d %H:%M:%S。
- 输出: 返回当前格式化后的日期时间字符串。
四、 工具函数编写的最佳实践
- 命名规范: 必须使用命名清晰、描述性强的参数(Well-named and descriptive arguments)。
- 输入验证: 尽可能验证传入函数的输入参数,如果验证失败,应立即抛出错误(Raise an error)。
- 示例: 如果位置参数为空字符串,应报错,因为无法获取未知位置的天气信息。
Takeaways
- Claude 缺乏精确的时间和日期处理能力,以及设置未来提醒的内置机制。
- 解决方案是通过创建一系列专门的工具(Tools)来弥补功能和时间计算上的缺失。
- 关键工具函数包括获取当前日期时间(getCurrentDateTime)和将时间段加到日期上(addDurationToDate)。
- 工具函数设计必须遵循最佳实践:参数命名清晰,并对输入进行严格的验证(验证失败应抛出错误)。
抽认卡 8 张卡片
问题
点击显示 · ←/→
答案
点击翻回
知识检测 0 题
No quiz for this lesson yet.