系统:AigcTestCaseAgent · 链路:Zephyr 用例→规则模板 + LLM 变体→TTS 批量合成(车机语音控制 · Speech for Media 域)
语料 schema 中每条语料可携带多轮 Turn(role=user|system) 前置上下文,被测轮为最后一轮 user turn,上下文轮参与 prompt 拼接。
语料库全域分布(共 1851 条,六个功能域):
真实例句(Zephyr 用例 ID 来自 data/corpus.db):
优先级口径(configs/priority.yaml):music = P0(通勤高频场景) · fg_detect = P2(系统触发、低频)
LLM 基于单意图种子句生成复合句(prompt 示例:打开空调然后放音乐),再按连接词白名单切分回子意图并守卫校验。
连接词白名单(句首「再」不切分,避免误伤「再来一首」类续播说法):
规则模板组(确定性扩展,ground truth 由规则独占推导):
真实 GLM 变体组 · 0.5 倍速指令(同义 + 数字等价:「零点五倍速」↔「半倍速」↔「0.5倍」):
真实 GLM 变体组 · 凤凰传奇点歌(口语化开放式表达):
D11 定义:「同一指令的语序变化/倒装说法(如把动宾或时间状语换位),关键词保留完整,意图不变」。
示意例句(机制真实,以下具体句子为示意,仓库中暂无对应的真实缓存实例):
方言机制要点:
普粤对照表(configs/rule_templates_cantonese.yaml):
| 普通话 | 粤语 | 意图 |
|---|---|---|
| 播放音乐 | 播啲歌嚟聽 | media.play_music |
| 放首歌 | 畀啲歌我聽下 | media.play_music |
| 我想听周杰伦的歌 | 我想聽周杰倫嘅歌 | media.play_artist |
| 暂停 | 暫停一陣 | media.control.pause |
| 继续播放 | 繼續播落去 | media.control.resume |
| 收藏歌曲 | 收藏呢首歌 | media.collection.add |
PoC 真实合成句(examples/cantonese_poc.py,克隆参考音频文本:「今日天气几好,我哋出发啦」):
{"id":"y1","utterance":"u1","mandarin_ref":"m1","attempts":3,"cer":0.0}