| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103 |
- // 字段中文业务含义。来源(权威,勿自行编写):
- // - tech_documents/规则包映射/规则包映射配置表.xlsx 的「字段注释」sheet 与各 sheet 数据字典行
- // - tech_documents/游走策略/游走策略配置表.xlsx 各 sheet 数据字典行
- // - query prompts 字段含义来自 M2 implementation brief(prompt 配置合同)
- export type FieldAnnotation = { label: string; desc: string };
- export const FIELD_ANNOTATIONS: Record<string, FieldAnnotation> = {
- // ===== 通用 =====
- rule_pack_id: { label: "规则包 ID", desc: "规则包 ID,用来标识某个具体规则包。" },
- rule_pack_version: { label: "规则包版本", desc: "规则包版本。" },
- priority: { label: "优先级", desc: "优先级,数字越小越先执行或越先作为主原因。" },
- enabled: { label: "是否启用", desc: "这条配置是否存在并允许维护,不等于当前运行启用。" },
- notes: { label: "注释", desc: "中文业务注释。" },
- platform: { label: "平台", desc: "规则适用的平台,例如抖音。" },
- field_path: { label: "字段路径", desc: "在 EvidenceBundle 或运行上下文中的字段路径。" },
- operator: { label: "操作符", desc: "判断操作符,例如 is_empty、in、not_in、eq、gte。" },
- expected_value: { label: "目标值", desc: "触发规则时匹配的目标值。" },
- decision_action: { label: "判定动作", desc: "规则输出动作,例如入池、待复看、淘汰。" },
- decision_reason_code: { label: "原因码", desc: "规则输出原因码,用于复盘和报表。" },
- effect_status: { label: "效果状态", desc: "内容级效果状态,例如 success、pending、failed、rule_blocked。" },
- target_entity: { label: "判断对象", desc: "规则判断对象,例如内容、作者、tag、路径或预算。" },
- runtime_stage: { label: "适用阶段", desc: "适用阶段,例如 V1.0 或 future。" },
- strategy_version: { label: "策略版本", desc: "策略版本,用来区分不同阶段或不同实验版本。" },
- edge_id: { label: "游走边", desc: "游走边 ID(绑定/预算/停止规则适用的边)。" },
- // ===== rule_pack_dispatch =====
- dispatch_id: { label: "路由 ID", desc: "规则路由 ID,用来标识一条选择规则包的路由。" },
- content_format: { label: "内容形态", desc: "内容形态,例如 video。" },
- dispatch_enabled: { label: "运行时启用", desc: "当前运行链路是否真正会选择这条规则;false 即 future 包(已归属未运行)。" },
- fallback_policy: { label: "兜底策略", desc: "路由失败或多条路由同时命中时的处理策略。" },
- // ===== hard_gate_rules =====
- gate_id: { label: "硬规则 ID", desc: "Hard Gate 规则 ID。" },
- label: { label: "中文名称", desc: "Hard Gate 中文名称。" },
- when: { label: "触发条件", desc: "字段路径 + 操作符 + 目标值组成的触发条件。" },
- severity: { label: "严重程度", desc: "规则严重程度,例如 fatal 表示命中后强拦截,review 表示进入待复看。" },
- stop_scoring: { label: "停止评分", desc: "命中后是否停止后续评分。" },
- // ===== scorecard =====
- key: { label: "维度 key", desc: "评分维度 key。" },
- dimension_key: { label: "所属维度", desc: "评分维度 key。" },
- max_score: { label: "最高分", desc: "该维度或阈值最高分。" },
- weight_percent: { label: "权重 %", desc: "该维度在总分中的权重。" },
- runtime_status: { label: "运行状态", desc: "运行状态,例如 active、future、deprecated。" },
- scoring_rule_id: { label: "评分细则 ID", desc: "评分细则 ID。" },
- score_value: { label: "得分", desc: "命中该评分细则后给出的分数。" },
- min_score: { label: "分数下限", desc: "分数下限。" },
- // ===== effect_status_mapping =====
- mapping_id: { label: "映射 ID", desc: "映射关系 ID。" },
- target_level: { label: "映射层级", desc: "映射层级,例如 content 或 query。" },
- reason_category: { label: "原因分类", desc: "原因分类。" },
- is_hard_gate: { label: "硬规则触发", desc: "是否由 Hard Gate 触发。" },
- content_effect_status: { label: "内容效果状态", desc: "内容级效果状态。" },
- query_effect_status: { label: "query 效果状态", desc: "query 级效果状态。" },
- // ===== decision_reason_codes =====
- reason_label: { label: "原因中文名", desc: "原因码中文名称。" },
- business_explanation: { label: "业务解释", desc: "原因码的业务解释。" },
- // ===== walk_rule_pack_binding =====
- binding_id: { label: "绑定 ID", desc: "边→规则包绑定 ID。" },
- required: { label: "是否必须", desc: "是否必须通过该规则判断。" },
- dispatch_policy: { label: "调用方式", desc: "调用方式,如 required / optional / advisory。" },
- // ===== walk_edge_catalog =====
- edge_type: { label: "边类型", desc: "边类型。" },
- can_loop: { label: "可循环", desc: "是否允许循环或多轮。" },
- // ===== walk_budget_policy / walk_policy.edge_budgets =====
- budget_id: { label: "预算规则 ID", desc: "预算规则 ID。" },
- max_total_actions: { label: "单 run 上限", desc: "单 run 最多执行次数。" },
- max_per_query: { label: "每 query 上限", desc: "每条 query 最多执行次数。" },
- max_per_content: { label: "每内容上限", desc: "每条内容最多执行次数。" },
- max_works_per_author: { label: "每作者作品上限", desc: "每个作者最多取多少条新作品。" },
- max_pages: { label: "最大页数", desc: "最大页数。" },
- max_depth: { label: "最大深度", desc: "最大游走深度。" },
- max_tag_hops: { label: "tag 跳数上限", desc: "最大 tag 扩散跳数。" },
- provenance: { label: "拍板来源", desc: "该值的拍板/取值来源说明(留痕)。" },
- tbd: { label: "待定", desc: "该值是否仍待标定(true=未定稿)。" },
- // ===== walk_policy.global / 配额闸 =====
- gemini_calls_per_run_cap: { label: "Gemini 单 run 配额", desc: "单次 run 允许的 Gemini 判定调用上限,超出后剩余内容确定性截断(QuotaCapped)。" },
- gemini_max_workers: { label: "判定并发数", desc: "Gemini 判定批的最大并发 worker 数。" },
- max_total_actions_per_run: { label: "游走总动作上限", desc: "单 run 所有边动作合计上限(全局闸)。" },
- // ===== walk_stop_policy =====
- stop_policy_id: { label: "停止规则 ID", desc: "停止规则 ID。" },
- condition_label: { label: "停止条件", desc: "停止条件名称。" },
- stop_action: { label: "停止动作", desc: "停止后的动作(stop_path 停整条路径 / stop_edge 停这条边)。" },
- // ===== query prompts(M2 brief 合同) =====
- prompt_version: { label: "Prompt 版本", desc: "prompt 配置版本,decision 记录中的 prompt 真相源。" },
- temperature: { label: "温度", desc: "LLM 采样温度,与 V1 行为逐字复刻(0.4)。" },
- max_tokens: { label: "最大 token", desc: "LLM 输出 token 上限。" },
- variants_per_seed: { label: "每种子变体数", desc: "每个种子词生成的 query 数;>1 暂不支持(M2 拍板,配置大于 1 直接报错)。" },
- evidence_fields: { label: "证据字段", desc: "拼装 LLM 输入 evidence_context 时读取的字段清单(17+ 个,顺序固定)。" },
- generic_filter: { label: "泛词过滤", desc: "生成结果命中泛词(如「内容」「热门」)时丢弃,避免无效搜索词。" }
- };
- export function fieldAnnotation(field: string): FieldAnnotation {
- return FIELD_ANNOTATIONS[field] || { label: field, desc: "" };
- }
|