本指南将引导您完成使用 Cloudflare API 将人工反馈添加到 AI 网关请求的步骤。您将学习如何检索相关的请求日志,并使用 API 提交反馈。
如果您希望通过仪表板添加人工反馈,请参阅添加人工反馈。
- 创建 API 令牌,具有以下权限:
AI 网关 - 读取
AI 网关 - 编辑
获得令牌后,您可以通过将其作为持有者令牌添加到授权标头中,在 API 请求中使用它。以下是在请求中使用它的示例:
curl "https://api.cloudflare.com/client/v4/accounts/{account_id}/ai-gateway/gateways/{gateway_id}/logs" \--header "Authorization: Bearer {your_api_token}"
在上面的请求中:
- 将
{account_id}
和{gateway_id}
替换为您的特定 Cloudflare 账户和网关详细信息。 - 将
{your_api_token}
替换为您刚刚创建的 API 令牌。
cf-aig-log-id
是您要添加反馈的特定日志条目的唯一标识符。以下是获取此标识符的两种方法。
此方法允许您直接在 AI 网关返回的响应标头中找到 cf-aig-log-id
。如果您可以访问原始 API 响应,这是最直接的方法。
以下步骤概述了如何执行此操作。
- 向 AI 网关发出请求:这可能是您的应用程序发送到 AI 网关的请求。一旦发出请求,响应将包含各种元数据。
- 检查响应标头:响应将包含一个名为
cf-aig-log-id
的标头。这是您提交反馈所需的标识符。
在下面的示例中,cf-aig-log-id
是 01JADMCQQQBWH3NXZ5GCRN98DP
。
{ "status": "success", "headers": { "cf-aig-log-id": "01JADMCQQQBWH3NXZ5GCRN98DP" }, "data": { "response": "Sample response data" }}
如果您在响应正文中没有 cf-aig-log-id
,或者您需要在事后访问它,您可以通过使用 Cloudflare API 查询日志来检索它。
以下步骤概述了如何执行此操作。
- 发送 GET 请求以检索日志:您可以查询特定时间范围或特定请求的 AI 网关日志。该请求将返回一个日志列表,每个日志都包含其自己的
id
。 以下是示例请求:
GET https://api.cloudflare.com/client/v4/accounts/{account_id}/ai-gateway/gateways/{gateway_id}/logs
将 {account_id}
和 {gateway_id}
替换为您的特定账户和网关详细信息。
- 搜索相关日志:在 GET 请求的响应中,找到您希望提交反馈的特定日志条目。每个日志条目都将包含
id
。
在下面的示例中,id
是 01JADMCQQQBWH3NXZ5GCRN98DP
。
{ "result": [ { "id": "01JADMCQQQBWH3NXZ5GCRN98DP", "cached": true, "created_at": "2019-08-24T14:15:22Z", "custom_cost": true, "duration": 0, "id": "string", "metadata": "string", "model": "string", "model_type": "string", "path": "string", "provider": "string", "request_content_type": "string", "request_type": "string", "response_content_type": "string", "status_code": 0, "step": 0, "success": true, "tokens_in": 0, "tokens_out": 0 } ], "result_info": { "count": 0, "max_cost": 0, "max_duration": 0, "max_tokens_in": 0, "max_tokens_out": 0, "max_total_tokens": 0, "min_cost": 0, "min_duration": 0, "min_tokens_in": 0, "min_tokens_out": 0, "min_total_tokens": 0, "page": 0, "per_page": 0, "total_count": 0 }, "success": true}
您还可以使用绑定来检索 cf-aig-log-id
,这简化了过程。以下是如何直接检索日志 ID:
const resp = await env.AI.run( "@cf/meta/llama-3-8b-instruct", { prompt: "tell me a joke", }, { gateway: { id: "my_gateway_id", }, },);
const myLogId = env.AI.aiGatewayLogId;
一旦您有了 API 令牌和 cf-aig-log-id
,您就可以发送 PATCH 请求来提交反馈。使用以下 URL 格式,将 {account_id}
、{gateway_id}
和 {log_id}
替换为您的特定详细信息:
PATCH https://api.cloudflare.com/client/v4/accounts/{account_id}/ai-gateway/gateways/{gateway_id}/logs/{log_id}
在请求正文中添加以下内容以提交正面反馈:
{ "feedback": 1}
在请求正文中添加以下内容以提交负面反馈:
{ "feedback": -1}
您可以通过两种方式验证反馈提交:
- 通过 Cloudflare 仪表板 ↗:在 AI 网关界面上检查更新的反馈。
- 通过 API:发送另一个 GET 请求以检索更新的日志条目并确认反馈已记录。
- @2025 Cloudflare Ubitools
- Cf Repo