基于信号的分流队列
按每条数据的质量信号对标注队列排序,让评审员优先看到最糟糕或最可疑的轨迹,而不是按到达顺序标注。可根据智能体错误、生产环境的踩、低分或任意自定义字段进行路由。
分流队列按每条数据的质量信号对标注排序,让评审员优先看到最糟糕或最可疑的条目,而不是按到达(FIFO)顺序处理。该信号可以是智能体错误、生产环境的踩、自动评估的低分,或任意自定义字段。无论是静态加载的数据还是运行时摄取的轨迹,都会读取该信号,并在两处呈现:标注过程中的横幅,以及 /admin/triage-queue 排名页面。
当人工评审时间紧缺时,条目到达标注员的顺序就很重要。优先路由信息量最大的条目,是主动评估循环中的分流环节,它能与评判对齐自然配合,将分歧和错误优先交给人处理。
解释某条目为何被标记待审的优先级徽章
配置
triage:
enabled: true
order: desc # high priority first (default); 'asc' = low first
default_priority: 0 # items matching no rule
show_badge: true # banner during annotation explaining the priority
rules: # evaluated in order; highest matching priority wins
- name: "Agent errored"
badge: "Agent errored" # banner text (defaults to name)
priority: 100
when:
field: status # dotted paths allowed, e.g. metadata.tags
equals: error
- name: "Negative feedback"
priority: 80
when:
field: feedback
in: [thumbs_down, negative]
- name: "Low quality score"
priority: 60
when:
field: score
lt: 0.5
# Serve the highest-priority items first. If you enable triage without setting
# assignment_strategy, Potato defaults to `priority` automatically.
assignment_strategy: priority如果省略 rules(以及 signal_field),Potato 会使用一套开箱即用的默认规则:错误状态(100)、负面反馈(80)以及分数低于 0.5(60)。
条件运算符
| 运算符 | 含义 |
|---|---|
equals | 精确匹配(字符串不区分大小写) |
in | 值是列表中的某一项 |
contains | 列表字段包含,或子串匹配 |
lt / lte / gt / gte | 数值比较 |
exists | 字段存在或不存在(true/false) |
直接读取数值信号
除了规则之外,或与规则结合,你还可以直接从某个字段读取一个数字:
triage:
enabled: true
signal_field: quality_score # used as the priority when no rule matches
invert_signal: true # lower score => higher priority优先级如何驱动分配
设置 assignment_strategy: priority。当某个用户需要条目时,队列会按每个条目存储的 triage_priority 排序(默认降序;order: asc 会反转),并以原始加载顺序作为平局判定以保证确定性,然后分配排在最前面的条目。该信号在加载或摄取时计算一次并存储在条目上,因此分配开销很低。
徽章(show_badge: true)独立于分配策略。即使你保留其他分配策略,它也会解释某条目为何被标记。
管理员队列页面
GET /admin/triage-queue # JSON
GET /admin/triage-queue?format=html # rendered page
发送 X-API-Key 头。该页面显示所有剩余(未完成)条目,按优先级排名,并列出标记它的规则、当前标注次数,以及它是否已被分配。
运行时摄取
由于评分器会在条目加入时运行,通过轨迹摄取(webhook 端点或 Langfuse 轮询器)在运行时摄取的轨迹会在到达时被评分,并自动进入优先级队列。会话进行中推入的低分或出错轨迹,会插队到仍在等待的干净轨迹之前。
注意事项与限制
- 优先级在插入时计算。编辑
triage.rules并重启后,下次加载时会重新评分所有条目。 - 格式错误的规则会记录一条警告并被跳过;它绝不会阻塞数据加载。
- 分流决定条目的服务顺序,但不会改变每条目的标注上限。
相关内容
有关实现细节,请参阅源文档。