package intent import "context" // Classifier 是可选的 L2 重打分扩展点,典型由宿主用其 LLM 客户端实现。 // 只在规则裁决为 Ambiguous 时被调用;实现自担延迟与成本。 // 返回错误时识别保持 Ambiguous,不会使 Recognize 失败(识别确定性不受实现影响)。 // 宿主应保证 Refine 幂等且无副作用:同样的输入与候选应得到同样的重排结果。 type Classifier interface { // Refine 对候选重打分/重排。返回的 ID 集合必须与输入完全相同且不能重复; // Confidence 必须是有限值并落在 [0,1],越界会被拒绝而不是截断。 // 除 Confidence 以外的字段会被按 ID 从原候选重建,改写不生效。 // 校验失败时识别保持 Ambiguous。 Refine(ctx context.Context, input string, candidates []Candidate) ([]Candidate, error) }