market-assistant/docs/planning/strategy-marketing-content-alignment.md
hub-gif 812cc1dac7 docs(strategy): 全局禁止编造贯穿底稿与规划
规则底稿骨架增加全局约束说明;规划与 alignment 文档对照表更新;测试断言骨架含「全局禁止编造」。generate_strategy 中全局条款与用户前缀若未提交则一并纳入。

Made-with: Cursor
2026-04-20 16:48:25 +08:00

6.0 KiB
Raw Blame History

规划留痕:市场策略稿 · 营销内容 · 与竞品报告对齐

成稿日期2026-04-17
目的:将「策略稿与报告第九章同源、不编造」与「营销内容面向受众痛点与兴趣、仍对齐报告、不编造」落成可执行路线,供产品/研发后续查阅与迭代。
关联代码(现状)

能力 位置
规则策略底稿 pipeline/reporting/strategy_draft.pybuild_strategy_draft_markdown
策略稿 LLM 润色 pipeline/llm/generate_strategy.pygenerate_strategy_draft_markdown_llmpayload 含 report_strategy_excerpt
第九章节选加载S1 pipeline/reporting/report_strategy_excerpt.pyload_report_strategy_excerpt
报告第九章策略归纳 generate_strategy_opportunities_llm(与 competitor_brief + 各章节选对齐)
策略稿 API / 导出 pipeline/views/job_report_views.pyJobStrategyDraftView
简报与压缩 pipeline/reporting/brief_compact.py
Markdown→Word/PDF pipeline/reporting/md_document_export.py

1. 原则(事实源与禁止项)

维度 要求
事实源 仅允许来自:同任务 build_competitor_brief 产物、已落盘的 competitor_analysis.md 中与策略相关的既定小节、各章 LLM 节选 JSON、strategy_hints、第九章策略相关落盘(如 strategy_opportunities_llm.json)。
策略稿 以规则底稿为骨架LLM 仅做可读性润色与衔接,不得新增 brief/底稿中不存在的数字、品牌、销量、价格。全文还须遵守 generate_strategy.pySTRATEGY_DATA_RULES 段首「全局禁止编造」(用户引语、活动规则、无依据的落地结果等)。
报告第九章 继续遵守 STRATEGY_OPPORTUNITIES_SYSTEMgenerate_strategy.py中的硬性条款brief 优先、与 prior_chapter_llm_narratives 不矛盾、假设性表述等。
营销内容 视为表达层:不新增事实;把同一批证据改写成面向某类受众的叙事;可核验结论须能指回 brief 或报告节选。

2. 策略稿:与报告内「策略建议」对齐(阶段 S1已落地

目标:独立下载的策略稿与宿主报告第九章方向一致,避免与已发布报告矛盾。

实现要点(与代码一致)

  1. load_report_strategy_excerpt(run_dir):优先读 strategy_opportunities_llm.jsonmarkdownrunner 在第九章大模型成功时写入);否则从 competitor_analysis.md 截取 ## 九、策略与机会提示## 附录 之前。
  2. STRATEGY_SYSTEM:当 report_strategy_excerpt 非空时,润色稿须与节选战略方向一致;若 business_notes / strategy_decisions 与节选冲突,须标注「与报告第九章策略归纳不一致之处见业务备注」类表述。节选为空时不得编造第九章结论。
  3. APIPOST /api/jobs/{id}/strategy-draft/ 响应增加 report_strategy_excerpt_sourcereport_strategy_excerpt_charsgenerator=rules 时亦返回,便于核对是否加载到节选)。
  4. 产品侧:generator: rules | llm 仍为既有行为;规则版作审计底稿。

验收:抽样任务核对「第九章要点 ↔ 策略稿 bullet」可对应数字仅来自 brief/底稿。


3. 营销内容:受众痛点与兴趣,仍对齐报告(阶段 S2S3

定位:新建管线(建议 pipeline/reporting/marketing_content.py + pipeline/llm/generate_marketing.py),与策略、报告共用同一 brief,并强制附带「依据」块。

输入(约束)

  • compact_brief_for_llm(brief)(或可溯源子集);
  • 必选 report_excerpts:至少含 第九章策略相关段落 + 第八章评论/文本挖掘摘要中的一小段(从已生成 md 或 JSON 截取,设长度上限);
  • 必选 audience_profile:如 { "segment": "...", "pain_points_hint": "可选业务补充" } —— 仅作叙述角度,不作为新事实来源
  • 可选 channels:如朋友圈短文案、详情页卖点结构、投放标题等,控制输出形态。

提示词硬性约束

  • 禁止出现 brief / report_excerpts 未出现的品牌名、价格、销量、功效承诺;
  • 痛点与兴趣须表述为「基于监测摘要已出现的主题/评价方向」的转述;
  • 建议结构:依据摘要(可溯源) + 受众表达 + 不可用/待核实(输入未体现的,列明不得对外宣称)。

输出与留痕

  • 建议落盘 run_dir/marketing/marketing_pack.md(或等价路径);
  • 任务侧记录 artifact文件名、时间、输入摘要 hash便于追溯。

API 示意

  • POST /api/jobs/{id}/generate-marketing/
  • Bodyaudience_segmentchannels[]business_notes(可选)。

4. 实施顺序

阶段 内容 产出
S1 策略稿 payload 增加 report_strategy_excerpt,收紧 STRATEGY_SYSTEM 已合并:report_strategy_excerpt.py、runner 落盘 markdown、OpenAPI 响应字段
S2 营销模块 v1单模板 + 强约束提示词 + 落盘 + 复用 Word/PDF 导出 可演示的营销初稿
S3 前端:任务页入口、受众与渠道、生成历史 产品闭环
S4(可选) 轻量校验:输出中数字与 brief 同源性启发式检查 降低明显幻觉

5. 风险与边界

  • LLM 无法 100% 杜绝编造,规则底稿 + brief + 人工抽检仍为默认。
  • 营销内容需保留「不替代合规/法务审核」类免责声明(可与报告附录表述一致)。

6. 修订记录

日期 说明
2026-04-17 首版对齐原则、S1S4、代码锚点、API 示意。
2026-04-18 S1 落地:load_report_strategy_excerptSTRATEGY_SYSTEM 对齐条款、strategy_opportunities_llm.json.markdown、策略稿 API 响应字段。

后续变更请在本表追加一行,并在正文相应章节修改。