GPT Actions入门指南!
GPT Actions入门指南!
月伴飞鱼官方文档:https://platform.openai.com/docs/actions/getting-started
美国国家气象局(National Weather Service,NSW)维护了一个公共 API。
用户可以通过该 API 查询任何经纬度点的天气预报。
要获取天气预报,需要分两步进行:
用户向
api.weather.gov/points API
提供经纬度坐标,然后接收返回的 WFO(天气预报办公室)、grid-X 和 grid-Y 坐标。将这 3 个元素输入到
api.weather.gov/forecast API
中,以获取该坐标的天气预报。
我们构建一个自定义 GPT,用户可以输入城市名、地标或经纬度坐标,然后这个自定义 GPT 可以回答关于该位置天气预报的问题。
这是一个天气查询系统的示例,通过两步 API 调用(先查坐标信息,再查天气预报)。
最终实现一个能理解自然语言查询(如城市名)并返回天气预报的智能助手。
步骤 1:编写并测试 Open API Schema(使用 Actions GPT)
GPT Action 需要一个 Open API Schema 来描述 API 调用的参数,这是描述 API 的标准格式。
OpenAI 发布了一个公开的 Actions GPT 来帮助开发者编写这个 Schema。
例如,前往 Actions GPT 并询问:访问 https://www.weather.gov/documentation/services-web-api 并阅读该页面上的文档。
为 /points/{latitude},{longitude} 和 /gridpoints/{office}/{gridX},{gridY}/forecast 这两个 API 调用构建一个 Open API Schema。
ChatGPT 会使用顶部的信息(特别是描述部分)来判断这个 Action 是否与用户查询相关。
然后,里面的参数会进一步定义 Schema 的每个部分。
例如,我们告知 ChatGPT,office 参数指的是气象预报办公室(Weather Forecast Office,WFO)。
关键要点:
特别注意您在 Open API Schema 中使用的 Schema 名称和描述。
ChatGPT 使用这些名称和描述来理解:
应该调用哪个 API Action。
应该使用哪个参数。
如果某个字段只能使用特定值,您还可以提供带有描述性类别名称的
enum
(枚举)。虽然您可以直接在 GPT Action 中尝试 Open API Schema,但直接在 ChatGPT 中调试可能会很困难。
我们建议使用第三方服务(如 Postman)来测试您的 API 调用是否正常工作。
Postman 有以下优点:
免费注册
错误处理信息详细
支持全面的身份验证选项
甚至可以直接导入 Open API Schema(见下文)
步骤 2:确定身份验证要求
这个第三方天气服务不需要身份验证,所以您可以跳过这个自定义 GPT 的这一步。
对于其他确实需要身份验证的 GPT Actions,有两个选项:API Key 或 OAuth。
向 ChatGPT 提问可以帮助您开始处理大多数常见应用程序。
例如,如果我需要使用 OAuth 对 Google Cloud 进行身份验证,我可以提供一个截图并询问详细信息:
- 我正在通过 OAuth 构建与 Google Cloud 的连接。
请提供如何填写每个框的说明。
通常,ChatGPT 会为所有 5 个元素提供正确的配置指导。
一旦您准备好这些基础配置,请尝试在 Postman 或其他类似服务中测试和调试身份验证。
如果您遇到错误,将错误信息提供给 ChatGPT,它通常可以帮助您从那里开始调试。
步骤 3:创建 GPT Action 并测试
提供名称、描述和图片来描述您的自定义 GPT:
为 GPT 起一个清晰的名字
写一段描述说明它的功能
上传一个合适的图标或图片
进入 Action 部分并粘贴您的 Open API Schema:
- 在编写指令时,记下 Action 的名称和 JSON 参数
添加您的身份验证设置:
- 配置 API Key 或 OAuth(如果需要)
返回主页面并添加指令:
- 编写详细的使用说明和行为指引
测试 GPT Action
在每个 Action 旁边,您会看到一个 Test(测试)按钮。
为每个 Action 点击该按钮。
在测试中,您可以看到每个 API 调用的详细输入和输出。
步骤 5:评估自定义 GPT
即使您在上一步中测试了 GPT Action,您仍然需要评估 Instructions(指令)和 GPT Action 是否按用户期望的方式运行。
尝试提出至少 5-10 个具有代表性的问题(越多越好),作为询问自定义 GPT 的评估集。
关键要点: 测试自定义 GPT 是否按您期望的方式处理每一个问题。
示例问题: 这个周末去白宫旅行我应该带什么?这个问题测试自定义 GPT 的能力:
将地标转换为经纬度
运行两个 GPT Actions
回答用户的问题