4.6 KiB
4.6 KiB
aura-ppt 内容保真规则(Content Fidelity Rules)
灵感来源:7牛AI PPT"保持原文"模式(内容保真实测最优)。 最高原则:AI只负责结构、排版、设计,绝不改写用户的数据与术语。
为什么内容保真如此重要
对日外包场景的汇报材料通常包含:
- 客户合同的精确数字(工数、单价、納期)
- 测试结果数据(欠陥検出率、テストケース数)
- 日本客户的专业术语(仕様書、結合テスト、納品物)
- 法律/合规条款原文
任何一处数字被"润色",都可能造成客户信任危机或合规问题。 这正是我们把内容保真设为最高优先级的原因。
保真规则(按优先级排序)
R1. 数字逐字符保留
用户提供的任何数值在最终PPT中必须逐字符一致:
输入: 96.8% 输出: 96.8% ❌ 禁止: 约97% / 近97% / 96.8%左右
输入: 23.6% 输出: 23.6% ❌ 禁止: 24% / 23% / 约24%
输入: ¥5,000万 输出: ¥5,000万 ❌ 禁止: 5000万 / ¥5000万 / 数千万
输入: 3.14 输出: 3.14 ❌ 禁止: 3 / 3.1 / π
输入: 2024年3月 输出: 2024年3月 ❌ 禁止: 2024年Q1 / 2024年 / 去年3月
R2. 术语原样保留
专有名词、产品名、客户名、日文术语不得意译、不得替换、不得加释义:
输入: テスト仕様書 输出: テスト仕様書 ❌ 禁止: 测试规格书 / 测试规格说明书
输入: 要件定義 输出: 要件定義 ❌ 禁止: 需求定义(除非用户明确要求双语)
输入: [顧客A] 输出: [顧客A] ❌ 禁止: 客户A / 甲方 / 某客户
输入: SAP ERP 输出: SAP ERP ❌ 禁止: SAP / 企业资源计划系统
R3. 引用与条款原文保留
用户提供的引用、条款、数据来源标注,一字不改,包括标点:
输入: 「納品物とは、要件定義書、設計書、テスト仕様書及びプログラム一式をいう。」
输出: 必须逐字呈现(含「」与日文标点)
R4. 结构可重组,内容不可改写
允许:
- ✅ 重新分页、分组、调整层级(把5个要点分到2页)
- ✅ 提炼副标题、加导航性文字("本章节将说明…")
- ✅ 调整顺序(按逻辑重排用户内容)
禁止:
- ❌ 改写用户句子含义(保持原意是底线)
- ❌ 合并/拆分用户数据点
- ❌ 为"更简洁"删除用户的限定词(如"约"、"可能"、"部分")
- ❌ 补充用户未提供且无依据的数据
R5. AI补充内容必须区分
LLM为连接上下文而生成的新内容(过渡句、总结、建议),必须与用户内容可区分:
- 方式1:加
[AI补充]前缀(用户可见时) - 方式2:放入演讲者备注(notes字段),正文只放用户内容
- 方式3:内容基调明显不同(如"本章总结"这类导航句)
推荐方式2:正文保真,AI的加工藏在备注里。
实施机制
渲染引擎内置检查(--verify)
验证流程:
1. 从 plan.json 提取所有源数字(正则: -?\d+[\d,]*\.?\d*\s*[%%]?)
2. 从输出PPTX提取全部文本
3. 逐一比对:每个源数字必须出现在输出文本中
4. 术语检查:含中日文字符的长片段(≥6字符)必须原样出现
5. 任何缺失 → 验证失败 → 返回缺失清单
运行:
python scripts/engine.py --verify output.pptx --plan plan.json
流程保障
- plan.json 是唯一内容源:渲染引擎只读 plan.json,不产生任何内容
- LLM只负责规划:LLM把用户内容结构化进 plan.json,不改写内容本身
- 渲染零改写:engine.py 是纯渲染器,代码中不存在任何文本改写逻辑
- 生成后必验证:每次生成自动跑 --verify,偏差立即报告
常见违规与正确做法
| 场景 | 错误(违规) | 正确 |
|---|---|---|
| 数字美化 | 32个数据点"96.8%"→"约97%" | 96.8% 原样 |
| 术语翻译 | 要件定義→需求定义 | 要件定義(除非用户要求双语) |
| 删除限定 | "部分系统不支持"→"系统不支持" | 保留"部分" |
| 补数据 | 用户没说→AI加"市占率30%" | 不添加无依据数据 |
| 简化条款 | 合并两条合同条款 | 逐字呈现 |
与"AI辅助"的边界
内容保真 ≠ 拒绝一切AI加工。AI可以:
- ✅ 优化组织(分页、分组、加导航)
- ✅ 补充演讲者备注(notes)
- ✅ 生成目录、章节标题、过渡句(明确为AI补充)
- ✅ 设计排版(字色、字号、图表类型)
AI不可以:
- ❌ 改用户的数据、术语、引用、限定词
- ❌ 编造用户未提供的信息