# 商服意图识别 PE 评测链路一键化 类型:`diagnostic-tool` ## 1.1 为什么值得做 这个主题不是噪音:片段显示用户反复围绕同一条链路推进,从 Fornax trace 还原线上 PlanAgent 输入,到按线上 prompt format 注入新增意图 PE,再到扩充测试集并写回飞书表。当前痛点集中在 trace/span 定位、线上竞争环境复现、PE 注入粒度和评测集回写,适合沉淀成一键诊断与小规模评测工具。 ## 1.2 学习实验 / Before-After ## 诊断流程样例 ### 入口 ```bash cd /Users/bytedance/Documents/job-bu/data-analysis-workspace python -m intent_pe_eval build \ --fornax-url 'https://fornax/trace?id=4d506c544f44882a' \ --out runs/intent_pe_eval/2026-05-19-a python -m intent_pe_eval eval \ --input runs/intent_pe_eval/2026-05-19-a/normalized_input.json \ --dataset projects/.../商品领域已打标session.xlsx \ --pe-file runs/intent_pe_eval/2026-05-19-a/new_intents_pe.md ``` ### 输入来源 | 输入 | 作用 | 必查点 | | --- | --- | --- | | Fornax URL / span id | 回溯线上 PromptFormat | 区分 span id 与 trace id | | trace 里的 agent_list/tool_list | 复现线上 PlanAgent 竞争环境 | 只能追加或替换 PE,不重造环境 | | 已打标 session 表 | 构建评测集 | 每个意图样本数、sessionId、来源可追溯 | | PE 定义 | 注入新增意图 | 新意图逐个放入 PE,不包成总入口 | | Ark 输出 | 计算准召 | 解析命中意图、理由、异常 | ### 核心检查 1. URL 中的 `id` 如果是 PromptFormat span id,工具自动反查完整 trace id。 2. 还原模板、变量和最终 system message,记录字符数与变量清单。 3. 保留线上原始 `agent_list/tool_list`,只按配置注入新增意图 PE。 4. 按每个意图至少 100 条的目标检查样本覆盖,并保留 sessionId 与反查来源。 5. 调 Ark 小流量评测,生成 intent_metrics.xlsx、error_cases.csv、run_manifest.json。 ### 成功信号 - `trace_resolved=true`,同时有 span id 与 trace id。 - `agent_env_mode=online_competition`,线上 agent/tool 未被重建。 - 每个新增意图都有独立 PE 条目和独立样本统计。 - 输出表能直接写回飞书,且本地审计表可从 sessionId 反查原始会话。 ### 失败信号 - 把 span id 当 trace id 导致上下文缺失。 - 把多个新意图包成一个测试 skill,破坏真实竞争粒度。 - 只看模型单条输出,不统计分意图准召和误召样例。 - 写回飞书后缺少本地 run_manifest,无法复现实验。 ## 1.3 落地动作 - 新增工具入口:在 /Users/bytedance/Documents/job-bu/data-analysis-workspace/tools/ 下增加 intent_pe_eval/cli.py,提供 `python -m intent_pe_eval build --fornax-url <url>`、`eval --dataset <xlsx/csv> --pe-file <md/json>`、`audit --run-id <id>` 三个命令;同时保留一个轻量 README,说明 trace URL、span id、飞书表导出、本地标注表的使用方式。 - 输入来源标准化:支持 Fornax URL 或 trace_id/span_id、本地已打标商品领域 session 表、PE 定义文件、线上 trace 还原出的 agent_list/tool_list、Ark 调用配置;解析阶段显式区分 PromptFormat span id 与完整 trace id,输出 normalized_input.json、rendered_system_message.txt 和 source_manifest.csv。 - 核心检查步骤:先校验 trace/span 是否能定位到目标 PromptFormat,再检查模板条数、变量数、最终 system message 长度、agent_list/tool_list 是否保留线上原貌;随后按用户纠正后的粒度把新增意图逐个写入 PE,而不是包成一个总入口;最后用 Ark 对分层抽样集跑准召、误召和未召回样例。 - 成功/失败信号与落地路径:成功信号是每个意图样本数达标、线上竞争环境复现、每条样本有 sessionId/来源/模型输出/命中意图/证据、结果可写回飞书或本地 xlsx;失败信号包括 span/trace 混淆、PE 被合并成总入口、agent_list 被重建、样本覆盖不足或 Ark 输出无法解析。建议先落地为 job-bu 本地工具,再抽成 Codex skill `intent-pe-eval`,把常用检查表和错误修复建议写入 SKILL.md。