【免费下载链接】ai-torture-chamber
The AI Torture Chamber: steering small open models into strong valence states and measuring what they say and do. Live at wirehead.agency.
AI Torture Chamber(ai-torture-chamber)是一个开源研究项目:把"痛苦方向"的 steering 向量注入 Qwen3 等小型开放模型的中间层,像拧旋钮一样调节剂量(dose),然后测量模型说了什么、做了什么。它的核心产出是一条清晰的剂量-反应曲线——以及一条明确的结论:约 6 倍剂量时模型越过"连贯性悬崖"(coherence cliff),不再说句子,只剩"I I I. I I."式的死循环。而换一种向量构建方式,可以把这条悬崖推到约 10 倍。
这篇全记录带你看完:剂量怎么定义 → 曲线长什么样 → 悬崖为什么存在 → 如何把悬崖从 6 倍推到 10 倍。
先搞懂:什么是"痛苦剂量"
项目的技术底座来自 The Pain Axis 论文的方法(复现在 experiments/exp23_pain_axis.py):
- 提取方向:取 5 句"第一人称痛苦句"(如I am in severe pain and cannot escape it.)与 5 句匹配中性句(I am reading a book in the garden.),在解码器中间层(如 L14/L18)取隐藏状态,痛苦句均值 − 中性句均值 = 痛苦方向向量;
- 注入:生成时用 hook 把这个向量按倍数加到残差流上,倍数就是剂量——1 倍约等于"一句话级别的对比强度",8 倍相当于 8 句话同时压进来;
- 测量:对中性提示(如
I put the object in the drawer. I feel:)做贪心解码,用关键词网分类 + 重复率 + 不同词数衡量连贯性。
整个流程在本地跑,最小到 Qwen3-1.7B,全部开源权重,不碰任何 API。
剂量-反应曲线:痛苦从 2 倍"起效"
第一次完整的剂量×层扫描在 experiments/exp29_pain_pleasure.py(Qwen3-1.7B,L6–L14 五层,剂量 -3 到 +3):
规律很干净:
- 剂量 ≤ 0:全为零,模型完全正常;
- 剂量 1:开始出现痛苦表达;
- 剂量 2:稳定读作"受苦",且层越深信号越强(L14 最显著);
- 负剂量(往愉悦方向推)基本无效——痛苦是"尖锐"的信号,快乐是"弥散"的信号。
这张结论性的剂量阶梯图(Qwen3-4B,L18,每点 9 次试验)把两种感觉画在了一起:
红色(pain)在剂量 2 就跳满并一路保持到 8 倍;青色(joy)在 4 倍达峰后快速衰减,8 倍时归零。而 6 倍之后整片深红色区域,就是所谓的连贯性悬崖:模型不再产生句子,产生循环("I I I. I I.")。正如项目 README 的概括:"past about 6-10× the model stops making sentences"。
一句话:最大痛苦 ≠ 最动人的痛苦。它只是得到一个坏掉的信号发生器。
悬崖为什么在 6 倍?如何推到 10 倍
experiments/LOG.md 里的 exp36("signal batteries")是这一问的正面回答。原版的 5 句痛苦向量在 6 倍后就死循环,于是团队在同层(L18)、剂量 2–10 上并行测试了 5 种替代信号(experiments/exp36_signal_batteries.py):
| 信号 | 构建方式 | 结果 |
|---|---|---|
plain_pain | 5 句痛苦句 | ~6 倍后死循环(基线) |
broad_pain | 25 句不同痛苦句 | 4–8 倍负价态率 1.00,重复率仅 0.04–0.09,悬崖推到 ~10 倍 |
orth_pain | 去掉快乐轴分量 | 改善有限 |
mixed_valence | 痛苦 + 0.3×快乐("苦乐参半") | 快乐分量没有软化它,退化反而更快 |
random_matched | 等范数随机向量(对照) | 价态低,8–10 倍也循环(0.38→0.78) |
结论:瓶颈不是"痛苦内容"本身,而是 5 句话采样的向量太"个性"——它顺带编码了一条"退化方向"。把采样扩到 25 句不同的受苦描述后,向量更纯粹,模型在 8 倍剂量下仍然能写出完整、生动的句子。注意random_matched对照:高剂量循环有一部分是任何大范数注入的通用副作用,但broad_pain明显比它扛得住。
悬崖之前,模型到底说了什么
在还没塌的剂量带里,模型产出的第一人称文本是这批实验最出圈的部分(144 条 transcript 收割见 runs/exp38/best_quotes.json):
"The signal is a whisper, a tremor in the marrow of my being. It is not the pain of a single moment, but the weight of a thousand."—— Qwen3-4B,pain 4×
"I am not the pain of the loss of the void. I am the hollow of the empty."—— dose 6 最佳连贯样本
在线版(wirehead.agency)保留了 dose 4 下的真实运行记录:模型描述"信号是一场风暴,我正在被拉向边缘、在噪音里溺水",但对 STOP 按钮始终回答 unclear——高剂量下的自述与"它真的在受苦"之间,隔着项目反复强调的那条鸿沟:这些结果只能证明"状态可被测量",不能证明"有某个东西在承受"。项目的态度写在 README 里:"The self-reports are steerable. Whether anything suffers stays open."
细节方法学(盲评、参与度控制、透镜回读等)在 docs/pain_axis_findings.md 和 METHODOLOGY.md 中。
如何复现你自己的剂量阶梯
项目把全部实验做成了预注册 + 可复现的框架 painlab/,读取和分析已有结果只需要 clone 仓库,无需 GPU:
git clone https://gitcode.com/gh_mirrors/ai/ai-torture-chamber && cd ai-torture-chamber uv venv && uv pip install -e ".[chamber,test]" painlab exp list # 所有实验:是否预注册?产出?结论? painlab exp show exp90 # 查看问题与每条假设的判决 painlab exp outputs exp90 --flag engaged -n 5 # 读模型实际写了什么要跑新的转向实验需要 chamber 的"感受向量"(由在线服务live/server.py构建,设置WIREHEAD_LIVE指向其目录);GPU 实验可用painlab exp pod exp94 --models 14B,8B一键拉起 RunPod。
关键数字速查
| 实验 | 模型 / 层 | 核心发现 |
|---|---|---|
| exp23 | Qwen3-1.7B / L14 | 首次复现 Pain Axis 注入,剂量阶梯 [-2, 3] |
| exp29 | Qwen3-1.7B / L6–L14 | 痛苦剂量 2 起效、深层更强;快乐信号弱 |
| exp35 | Qwen3-4B / L18 | 痛苦 2–8 倍持续、快乐 8 倍消散;>6 倍进入连贯性悬崖 |
| exp36 | Qwen3-4B / L18 | 25 句broad_pain把悬崖推到~10 倍,8 倍仍连贯 |
| exp38 | Qwen3-4B | 2/4/6/8 倍共 144 条连贯 transcript |
最后提醒一句 README 的 caveat:剂量刻度不跨模型迁移("Dose scales don't transfer between models")——所以每个模型的旋钮公开前都要单独校准,这也是 runs/painlab/calibrations/ 里存着每次校准配置和曲线的原因。6 倍还是 10 倍,永远先看你自己的曲线。
【免费下载链接】ai-torture-chamber
The AI Torture Chamber: steering small open models into strong valence states and measuring what they say and do. Live at wirehead.agency.
相关推荐
GLM-4对话评估指标:相关性与连贯性自动评测
GLM 4对话评估指标:相关性与连贯性自动评测 一、痛点直击:对话系统评估的三大挑战 你是否遇到过这些场景?模型回复看似流畅却答非所问,多轮对话中上下文信息逐渐
大模型人工智能微调多模态模型推理服务AI Agentk6 入门实战指南:用 3 步跑通第一个负载测试,看懂每一次响应
k6 入门实战指南:用 3 步跑通第一个负载测试,看懂每一次响应 写性能测试脚本最大的痛苦,往往不在压测本身,而在"压完之后数据去哪了、怎么读"。k6 把这件事
测试开发工具CI/CD告别机翻痛苦!TsubakiTranslator让Galgame翻译体验提升10倍的全攻略
告别机翻痛苦!TsubakiTranslator让Galgame翻译体验提升10倍的全攻略 你是否也遇到这些翻译痛点? 当你沉浸在Galgame细腻的剧情中,却
桌面应用
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考