竞品内容 Pattern 雷达 · AI 答案里的重复说法

cn.savantcatv1.0.1更新于 Oct 6, 2026

把 AI 答案/竞品内容当语料,找出反复出现的说法、被反复引用的信源与答案同质化程度,含对照组自检

概览

AI 生成的概览

把 AI 答案或竞品内容当作语料,找出反复出现的说法、被反复引用的信源以及答案同质化程度。

功能
把 AI 答案或竞品内容当作语料,找出在多篇回答中反复出现的短语,并给出覆盖率与零假设阈值。同时报告哪些品牌或主体在答案中占位、AI 反复引用哪些域名,以及同一问题的答案之间有多相似。提供三个工具:analyze_patterns 主分析、self_check 先验尺子可用、explain_method 说明口径与边界。
适用场景
适合想了解 AI 对某个话题已形成什么固定说法、这些答案里谁被提到、以及 AI 实际引用哪些信源的场景。适用于内容、品牌或 AI 可见度相关工作,语料为中文短答案且不少于十二条样本。
运行要求
以本地 stdio 进程运行,需要 Python,无第三方依赖;也可通过提供方托管的远程端点访问。输入为包含 question 与 answer 字段的 JSON 记录文件,或此类记录的纯数组。未声明需要账号、API 密钥或环境变量。
安装前请注意
只读,不修改输入文件。仅做字符级 n-gram 分析,不合并同义不同形,不判断情绪或内容好坏,也不预测流量或 ROI。样本少于十二条会拒绝出分,英文或长文语料需重新标定阈值。引用 URL 只做提取与域名统计,不做可达性验证。

安装

在 SourceWeft 中

  1. 打开 控制台中的 竞品内容 Pattern 雷达 · AI 答案里的重复说法,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

竞品内容 Pattern 雷达 · pattern-radar

把「AI 答案 / 竞品内容」当语料,找出反复出现的说法——谁被反复提到、AI 反复引用哪些信源、答案空间是否已经固化。

纯标准库、零依赖、只读。clone 下来就能跑。

已托管为公网 MCP 服务,不用装任何东西就能用:https://savantcat.cn/mcp-radar

[License] [Deps] [CI]

[M8ven Verified]


python radar.py --selftest                        # 必跑:对照组自检python radar.py --input <记录.json> --brands 我家,竞品A,竞品B --out 报告.md

它回答的问题

  1. AI 对这个问题已经形成什么固定说法?(重复 Pattern + 覆盖率)
  2. 谁在这类答案里占位?(主体覆盖率)
  3. AI 实际上把谁当信源?(被反复引用的域名)
  4. 答案空间固化到什么程度?(同题相似度)

口径(重要,别误用)

  • Pattern = 覆盖度:出现在越多回答里,越像「AI 对这个问题的默认说法」。覆盖率 = 覆盖回答数 / 总回答数。
  • 阈值不是拍脑袋的:先取语料的高覆盖 n-gram 作种子,向左右逐字扩展成完整短语(所以给出的是「百度智能云」而不是碎片「度智能云」)。
  • 空阈值用零假设模拟得出:把每篇答案的字符内部打乱(保留长度与字频、摧毁短语),重算最大覆盖,取 p95;真实阈值 = max(空阈值+1, 3)。这是自校准的,不是经验常数。
  • 占位符域名会被剔除:答案正文里的「你的域名」这类模板文字不是信源,报告中标 ⚠️ 且不进结论。

对照组标定结果(v1.0.0 实测)

--selftest 造两份答案已知的语料:

对照组期望实测
A 健康组(注入 10/12 条重复短语 + 同一信源 8 次)检出✅ 检出,覆盖 100%;信源识别正确
B 病态组(每条只用互不重叠的字,真无重复)零误报✅ 检出 0 个
负对照(A 语料字符打乱)恒为 0✅ 0 个(链路不造伪 Pattern)
样本闸门(5 条样本)必须拒✅ 拒答并说明原因

对照组本身也被验证:自检会先断言「B 真的没有跨答案重复」,不满足就报语料构造错误而不是改工具。第一版自检就是这么抓出我的语料写错了(12 条答案共用同一模板串)。

边界(明说,不含糊)

  • 只做字符级 n-gram,不做语义聚类。同义不同形(「AI 客服」vs「智能客服」)不会合并。
  • 不判情绪、不判内容好坏、不预测流量或 ROI。覆盖率高 ≠ 评价好。
  • 样本 < 12 条直接拒绝出分,不硬凑。低于这个量算出来的是噪声,比没有更误导。
  • 换语料形态(英文、长文)需重新标定:当前阈值是在中文短答案(每篇数百字)上标定的。
  • 只读:不修改任何输入文件(可用 md5 前后比对自证)。
  • 引用 URL 只做提取与域名统计,不做可达性验证(打不开可能是反爬,不等于幻觉)。

输入格式

两种都吃:

  • geo-monitor 的记录:{"samples": [{"question","platform","run","answer"}, ...]}
  • 纯数组:[{"question","answer","platform"?,"run"?}, ...]

空答案会被丢弃并计数,不当成数据。

报告骨架

一、AI 答案里的重复 Pattern(含零假设阈值)二、竞品占位(谁被提到 / 覆盖率 / 是否出现在靠前位置)三、AI 反复引用的信源(信源池占位,占位符已剔除)四、答案空间同质化程度(同题两两相似度)五、最该先修的一件事(只给一条)附录:口径与边界

第五节刻意只给一条建议——需要的是下一步动作,不是十条清单。

怎么接入

用远程端点(推荐,零安装) —— 任何支持 MCP 的客户端填 URL 即可:

json
{"mcpServers": {"pattern-radar": {"url": "https://savantcat.cn/mcp-radar"}}}

三个工具:analyze_patterns(主分析)· self_check(先验尺子可用)· explain_method(口径与边界)。

本地 stdio(要改代码或离线用):

python server.py                    # stdiopython server.py --http --port 8768 # streamable-http

相关

License

MIT — 见 LICENSE。

作者

合尘猫 · 一个人 + 一个 AI 分身的 AI 落地实践 —— 知识库 · AI 客服合规 · 内容自动化。

版本

  • v1.0.0(2026-10-04)首版。阈值口径:零假设 p95 自校准 + 逐字扩展短语 + 碎片剔除 + 占位符识别。

来源:README.md,提交 da037db

工具

0
工具元数据尚未被收录。

版本历史

1
  1. v1.0.1最新Oct 6, 2026