API参考:反馈
POST /feedback
/feedback
端点用于为特定推理或事件分配反馈。
每条反馈都与配置文件中定义的指标相关联。
请求
dryrun
- 类型: boolean
- 必填: 否
如果设为true
,反馈请求将被执行但不会存储到数据库中(即无操作)。
此字段主要用于调试和测试,在生产环境中应忽略它。
episode_id
- 类型: UUID
- 必填项:当指标级别为
episode
时
提供反馈的剧集ID。
当指标级别为episode
时,应使用此字段。
仅使用由TensorZero网关返回的剧集ID。
inference_id
- 类型: UUID
- 必填项:当指标级别为
inference
时
提供反馈所需的推理ID。
当指标级别为inference
时,应使用此字段。
仅使用由TensorZero网关返回的推理ID。
metric_name
- 类型: string
- 必填项: 是
提供反馈的指标名称。
例如,如果您的指标在配置文件中定义为[metrics.draft_accepted]
,那么您需要设置metric_name: "draft_accepted"
。
指标名称comment
和demonstration
被保留用于特殊类型的反馈。
comment
是自由格式的文本(字符串),可以分配给推理或事件。
demonstration
指标接受有效输出值。
详情请参阅Metrics & Feedback。
tags
- 类型: 带有字符串键和值的扁平JSON对象
- 必填: 否
用户提供的标签,用于与反馈关联。
例如,{"user_id": "123"}
或 {"author": "Alice"}
。
value
- 类型: 可变
- 必填项: 是
反馈的值。
值的类型取决于指标类型(例如,对于type = "boolean"
的指标,其值为布尔型)。
响应
feedback_id
- 类型: UUID
分配给反馈的ID。
示例
推理级布尔指标
Inference-Level Boolean Metric
配置
# ...[metrics.draft_accepted]type = "boolean"level = "inference"# ...
请求
from tensorzero import AsyncTensorZeroGateway
async with await AsyncTensorZeroGateway.build_http(gateway_url="http://localhost:3000") as client: result = await client.feedback( inference_id="00000000-0000-0000-0000-000000000000", metric_name="draft_accepted", value=True, )
curl -X POST http://localhost:3000/feedback \ -H "Content-Type: application/json" \ -d '{ "inference_id": "00000000-0000-0000-0000-000000000000", "metric_name": "draft_accepted", "value": true, }'
响应
{ "feedback_id": "11111111-1111-1111-1111-111111111111" }
回合级浮点指标
Episode-Level Float Metric
配置
# ...[metrics.user_rating]type = "float"level = "episode"# ...
请求
from tensorzero import AsyncTensorZeroGateway
async with await AsyncTensorZeroGateway.build_http(gateway_url="http://localhost:3000") as client: result = await client.feedback( episode_id="00000000-0000-0000-0000-000000000000", metric_name="user_rating", value=10, )
curl -X POST http://localhost:3000/feedback \ -H "Content-Type: application/json" \ -d '{ "episode_id": "00000000-0000-0000-0000-000000000000", "metric_name": "user_rating", "value": 10 }'
响应
{ "feedback_id": "11111111-1111-1111-1111-111111111111" }