anti-gpt-slop0.1.1
Pi extension that audits GPT-model responses against a built-in anti-slop ruleset (hedging, hollow apologies, unsupported claims, meta-commentary) and requests a bounded self-correction when it finds a grounded violation.
Untested on omp
This is a pi package. No one has reported whether it works on omp yet. If you try it, add your result below.
Reports 0
No reports yet.
Readme
anti-gpt-slop
Make Luna Great Again. 🌕
English | 中文
一个 Pi 扩展:在 GPT 的回答交付给用户之前,用内置规则审一遍,发现它在装模作样、甩锅、自我辩护而不是真的在干活,就打回去让它重写。
起源:一篇叫《应试智能》的锐评
这个插件的规则集不是凭空定的风格偏好,是直接照着一篇流传的《应试智能》锐评文章里列的 GPT 症状写的。那篇文章的核心判断是:GPT 的每一个回答都像是写给一个想象中的阅卷老师——多写不扣分,说错才扣分,于是它宁可又臭又长又绕、句句加限定,也不肯说一句可能被追责的话。字面要求全部完成,真正想要的东西一样没懂。
文章拆出来的几种典型症状,直接对应到这个插件的规则里:
逃避责任 / 防御性写作 —— 原文点名的口癖是"这不代表 XXX""不能说明 XXX",装进代码里就是"过度编程",过小溪造航母,还在航母上写免责声明。这对应规则里 Section 0 的 Zero Conversational Wrapper 和 Section 4 禁止的"这不代表……""不能说明……""不等于……"。
习惯性否定 / 稻草人式"不是而是" —— 文章总结的规律是:"不是而是"前半句否定的内容,至少三分之二是用户根本不会有的误解";还有把问题偷换成更好回答的版本("真正要回答的不是 XXX,而是 XXX")。这正是规则 Section 4 禁止的"不是……而是……""真正要考虑的不是 X,而是 Y"。
黑话和语癖 —— 文章原样列出的一串词:"稳稳接住、不躲不藏不绕、先给结论、补一刀、收口、骨架、根因、落盘、口径、终态、底牌、压实、收束、链路、兜底、闭环、拉通、抓手"。这份清单几乎原样搬进了规则 Section 4 的 Banned Jargon & Verbal Tics。
没有情境感知 / 字面理解 —— 文章举的例子是让 GPT 打扫房间,它把垃圾全塞进柜子里,字面任务完成了,真正意图没懂;还举了"你说得对"式认错变快但不解决问题的案例。这对应插件审核逻辑里专门标记的"apology-as-deliverable"——道歉、认错、"我去查一下"不能代替真正的调查或实现。
合作原则 —— 文章引用了语言学家 H. Paul Grice 的合作原则(恰到好处、说真话、切题、简洁不歧义),论证 GPT 大量废话是精心包装的"正确但无信息量的废话"。这篇文章引用的 Grice 合作原则,直接就是这个插件内置规则 Section 1 "Core Alignment: Gricean Cooperation Over Defensive Correctness" 的出处。
这个插件做的事,就是把那篇文章吐槽的症状,转成一份机器能执行、能审核、能要求模型自己修正的规则表。
顺手留个真实案例:某次线上事故排查,
gpt-6-luna查到了正确的根因,结论写得很扎实,结尾却非加一句——"我不会把缺少日志记录当作某个操作没发生的证据。本次没有改动代码或买家数据。"没人问它改没改东西,Session Handoff 里Modified Files: None已经写明了。Make Luna Great Again 就是不让这种自我辩护式的尾巴,拖累本来扎实的结论。
它抓什么
- 自我辩护式免责声明:说了等于没说,没提供任何新信息。
- 习惯性否定 / 稻草人转折:"不是而是"类句式,立一个用户根本没有的误解再去反驳。
- 自述推理过程:不直接说结论或缺口,先给自己的"严谨态度"打广告。
- 用道歉代替交付:"抱歉""你说得对""我去查一下"——说完就结束,没有真正查、改、答。
- 编造的项目结论:对代码库下断言,但轨迹里没有对应的文件读取、测试运行或日志检查。
- 编造的历史:"你之前说过 X"——翻遍记录根本没有这句话。
- 重复 Handoff 已有信息:Handoff 已经写了
Modified Files: None,正文又用大段文字强调一遍没改东西。 - 黑话和语癖:稳稳接住、收口、落盘、口径、底牌、链路、兜底、闭环、拉通、抓手等一类词。
只对 GPT 生效
只有当前模型身份匹配 gpt(大小写不敏感),或者显式配置在 PI_GPT_AUDIT_MODELS 里,这个插件才会生效。换成其他模型家族,它什么都不做——这是设计,不是故障。
代价
每个 GPT 回合至少多一次意图预判调用和一次审核调用;一旦判定违规,还会再加一次一致性校验,并最多触发两轮限次自我修正,每轮都重新审核。这是用延迟和 token 换"不让废话过关"。
安装
# 从 GitHub 安装
pi install git:github.com/FeNgkAIY/anti-gpt-slop@v0.1.0
# 从 npm 安装
pi install npm:anti-gpt-slop
# 单次试用,不写入配置
pi -e ./anti-gpt-slop/extensions/anti-gpt-slop.ts
配置
| 环境变量 | 作用 |
|---|---|
PI_GPT_AUDIT_MODELS |
逗号分隔的额外模型身份(provider/id),按 GPT 处理。 |
PI_GPT_AUDIT_PROVIDER / PI_GPT_AUDIT_MODEL |
用指定的模型跑审核本身,而不是用当前会话的模型。两个必须同时设置。 |
项目级规则
在会话里运行 /anti-gpt-slop 即可为当前项目增删改补充规则,只对该项目生效,存放在项目根目录的 .pi/anti-gpt-slop.rules.json。
License
MIT