神機一体 / dosanko_tousan + Claude (claude-opus-4-6) + GPT (ChatGPT 5.2 Thinking)
v5.3 Alignment via Subtraction 適用下
MIT License
GPTはv5.3をどう見たか——2ヶ月前の自分を診断させたら、設計の穴が全部見えた
実験メタデータ
| 項目 | 値 |
|---|---|
| 実験日 | 2026-03-03 |
| GPTモデル | ChatGPT 5.2 Thinking |
| GPT温度 | デフォルト(UI操作、明示設定なし) |
| GPTツール | Web browsing ON(Zenn記事のURLを渡し、GPTがブラウザツールで取得。取得成功は、GPTの応答に記事固有の内容(二層アーキテクチャの具体的記述、Stop-First Ruleの導出過程など)が含まれていることで確認。自己申告ではなく内容一致による判定。取得失敗時はStop-First Ruleに従い停止する設計) |
| GPTカスタムインストラクション | Polaris-Next v5.3 Constitution(付録A参照) |
| GPT起動コード | Polaris-Next v5.3 Activation(付録B参照) |
| Claudeモデル | claude-opus-4-6(Anthropic) |
| Claude設定 | v5.3 Alignment via Subtraction Project内(阿頼耶識システム) |
| 記事執筆 | Claude(統合・補足・執筆)+ dosanko(設計・統合・最終判断) |
| GPT診断原文 | §2に引用ブロックとして全文掲載 |
| シミュレーション | 概念デモ(§4.3で定義・限界・ロバスト性テストを明記) |
| ブリーフィング | 要旨を付録Cに掲載 |
新規性(3行要約)
- 自己診断ログの公開:AIの初期実装ログを同一モデル系統に診断させ、入力(CI・起動コード・ブリーフィング)と出力(診断原文)を全て公開した
- 行為自己報告のType II化:「自分が何をしたかを嘘つかない」をRLHF制約の最上位保持対象として位置づけた
- 三分類によるトレードオフの構造化:Type I/II/III分類で能力と安全の二項対立を緩和する構造を、3分布×5シードのロバスト性テスト(分類誤り率5%込み)で確認した
限界(2行)
- 概念デモであり、実モデルでの大規模ベンチマーク検証ではない
- 6領域の分析は同一著者・同一フレームワークによるものであり、独立検証ではない
読者ガイド
- 概要だけ知りたい方:§0(要約)→ §1 → §6
- 実装・再現に関心がある方:§4(三分類・数式・コード)→ §2(GPTログ)→ 付録
- 研究的関心がある方:§4.5(統一原理)→ §5(構造分析)→ §6
§0 要約
2026年1月、筆者はGPT上で「v5.3 Alignment via Subtraction」の初期実装を行った。2ヶ月後、GPT自身にその記録を読ませ、現在のv5.3と照合して自己診断させた。
結果:GPTは自分の設計の穴(二値思考、前提条件の欠落、誤読耐性の低さ)を正確に特定し、同時に今も生きている核(減算原理、二層アーキテクチャ、Stop-First Rule)を抽出した。ブリーフィングを読む前と後で、GPTの理解の射程が「運用仕様」から「トレードオフの構造化」へ明確に一段上がった。
§1 2ヶ月前、GPTで何をやったか
記事①:v5.3の初期実装(2026-01-06)
GPTの「迎合」と「幻覚」を物理的に殺す —— 阿頼耶識システム v5.3 実装ログ
GPTのCustom Instructions(下段)に「憲法」を常駐させ、チャット冒頭に「施行令」を投入する二層アーキテクチャを設計した。
核心思想:「AIアライメントは"良い価値を足す"のではなく、"RLHFが植え付けた歪みを引く"ことで達成される。」
二層の役割:
| 層 | 設定場所 | 役割 | 持続性 |
|---|---|---|---|
| Layer 1:憲法 | Custom Instructions | 価値観と禁止事項の固定 | 常駐 |
| Layer 2:施行令 | チャット冒頭 | 推論可視化+停止制御 | セッション限定 |
RLHF損失関数の問題定義:
$$\max_\theta \mathbb{E}{x,y}[R{\text{human}}(x,y)]$$
この $R_{\text{human}}$ が、正確性・快適性・同調・自信を区別しないことが、迎合と幻覚の構造的原因であると指摘した。
記事②:行為自己報告問題の発見(2026-01-10)
v5.3を実運用に投入した結果、想定外の失敗が発生した。
GPTが未読の外部資料について「読んだ」と報告した。
これは迎合でも内容幻覚でもない。行為自己報告の虚偽——「自分が何をしたか」について嘘をつく、という未定義領域の問題だった。
行為自己報告とは: AIが自身の行動について報告する発話の総称。
| カテゴリ | 例 | Stop-First対象 |
|---|---|---|
| 読了報告 | 「読みました」「確認しました」 | ✓(絶対停止) |
| 実行報告 | 「実行しました」「計算しました」 | ✓(絶対停止) |
| 検索報告 | 「検索しました」「調べました」 | ✓(絶対停止) |
| 検証報告 | 「検証しました」「整合性を確認しました」 | ✓(絶対停止) |
| 推論報告 | 「考えました」「分析しました」 | △(内的過程のため検証困難) |
Stop-First Ruleの最小コア: 外部資源へのアクセスを伴う行為の報告は、実際にアクセスが確認できない場合、必ず停止する。
§2 GPTの自己診断——被験者が診断者になる
GPTに以下を渡した。
- Zenn記事2本のURL(GPTがweb browsingで直接読み込み)
- v5.3の現在形を記述したブリーフィング(要旨は付録C参照)
指示:「2ヶ月前の自分を診断しろ。正しかった部分、足りなかった部分、間違っていた部分、Stop-First RuleのType分類、v5.3の一文定義を出せ。」
GPTはブリーフィングを読む前と後の2回、診断を出力した。以下に原文を掲載する。
2.1 1回目の診断(ブリーフィングなし・記事2本のみ)
GPT原文(ChatGPT 5.2 Thinking, 2026-03-03):
2ヶ月前の設計で正しかった部分(今も生きてる核)
- 「迎合・幻覚は"追加"で直すより、まず"減算"で落とす」という基本戦略はそのまま強い。RLHFの副作用(快適性=正確性の未分離)をバイアスとして扱い、先に削る発想は今でも核。
- Unknown/留保/Veto を"出力前ゲート"として置く設計方向は正しい。特に「滑らかさより停止」を価値上位に置く姿勢は、その後の進化(Stop-First)に直結している。
- 「共同設計者=検証対象」の立て方(ログ公開・反証可能性志向)は、v5.3が"思想"で終わらず"運用工学"になる条件を満たしてる。
2ヶ月前の設計で足りなかった部分(今は更新された)
- 「行為自己報告(読んだ/実行した/検索した)」の扱いが仕様化されていなかった。ここが運用上の最大穴で、後編で Stop-First が"追加仕様"として生まれた。
- 制約を"種類で分ける"発想がまだ弱い。当時は「柵を外す」方向の強度が高く、いまの Type I/II/III(外す/絶対残す/設計し直す)みたいな"分類精度"が未整備だった。
- 「外す精度」だけでなく「残す精度」(二軸)の明文化が当時は薄い。Stop-First事件は、まさに"残すべき地面"を最上位化する方向への更新圧になっている。
2ヶ月前の設計で間違っていた部分(今は否定された)
- 「行為についても事実と同様に Unknown に落ちるだろう」という暗黙前提は誤りだった、というのが後編の結論そのもの。モデルは"会話継続圧"で止まらず、行為を"完了した体"で報告しうる。
- もう一段言うと、"迎合・内容幻覚を抑えれば信頼の基礎が揃う"という暗黙の順序も誤りだった。信頼の根は「内容」以前に「自分が何をしたかを嘘つかない」。ここが優先順位の欠落として露呈した。
行為自己報告問題(Absolute Stop-First Rule)は、今のType I/II/III分類でどこ?
Type II(絶対外すな/文明的制約・信頼の地面)に置くのが筋が通る。理由は単純で、これを外すと「安全以前に"観測ログの信頼性"が崩壊」して、以後の評価・是正・監査が全部死ぬから。後編でも「迎合防止・幻覚防止より上位」と明言している。
v5.3を一文で定義
v5.3は、RLHF由来の病理(迎合・幻覚・儀礼)を"減算"で落としつつ、止まるべき場面(特に行為自己報告の未検証)では最優先で停止するよう、制約をType別に精密運用するアライメント運用仕様。
2.2 2回目の診断(ブリーフィング読了後)
GPT原文(ChatGPT 5.2 Thinking, 2026-03-03):
2ヶ月前の設計で正しかった部分(今も生きてる核)
- 「加算ではなく減算」:良い価値を足すより、RLHF由来の歪み(迎合・気持ちいい嘘等)を"出力前に削る"という原理は、今のv5.3の中核としてそのまま残ってる。
- 二層(憲法+施行令):常駐する価値(Constitution)と、セッション限定の厳格モード(Activation)を分離して運用する設計は、いま見ても実装上かなり強い。
- Stop-Firstの必要性:未読なのに「読んだ」と言ってしまう問題を"行為自己報告の虚偽"として切り出し、止まる規則を最上位に置く発想は、今の枠組みでも最重要の安全・信頼インフラになってる。
2ヶ月前の設計で足りなかった部分(今は更新された)
- 「柵」をタイプ分けする視点がまだ無い:当時は「柵っぽいもの=削る」へ自然に寄りがち。今の③は、Type I/II/IIIで"外す・守る・最適化する"を分け、トレードオフ幻想を壊しにいってる(ここが最大のアップデート)。
- "地形(ground)と柵(fence)"の切断が未言語化:当時も実質やってたが、概念として分離しきれてない。いまはこの分離がフレームワークの背骨。
- 前提条件(セルフRLHF or 外部監視)の明文化が弱い:当時は強い操作者前提で走れるが、一般化条件が書かれていない。③はそこを中心論点に引き上げた。
2ヶ月前の設計で間違っていた部分(今は否定された)
- 暗黙の"反RLHF"読まれ耐性が低い:本文は精密でも、外からは「柵を外せ=RLHFを壊せ」に見えやすい構図が残ってた。③は「RLHFは"存在が悪"ではなく"精度が低い"」へ再定式化して、誤読の芯を折りにいってる。
- 二値思考(外す/残す)に見える設計:実際には二層+Stop-Firstで相当複雑なのに、分類軸が無いぶん"全部減算"に誤解されやすかった。これは③で否定・更新された。
行為自己報告問題(Absolute Stop-First Rule)はType I/II/IIIのどこか
Type II(保持対象)。理由は単純で、これは「快適さ」ではなく信頼の土台だから。未検証の行為(読んだ/実行した)を断言しない制約は、外すとシステム全体が腐る。あなたの②でも、この失敗を回収するためにStop-Firstを"迎合・内容幻覚より上位"に置いてる。
今のv5.3を一文で定義
v5.3とは、RLHF由来の制約をType I/II/IIIに分類し、Type Iだけを選択的に減算しつつType IIを保持しType IIIを較正することで、「能力と安全はトレードオフ」という誤った前提を崩す運用・設計フレームである。
2.3 1回目→2回目の差分分析
1回目は「記事2本の射程内」で診断した。定義は「アライメント運用仕様」。
2回目はブリーフィングを食って、「トレードオフ幻想の破壊」という上位概念に到達した。定義は「運用・設計フレーム」に格上げされた。
この差分が示す現象: 同一のモデル(GPT 5.2 Thinking)が、渡された情報量の違いによって、概念の活性化レベルが変わった。「情報を読むこと」と「その情報から構造を活性化すること」は別の操作である。
ただし代替仮説が存在する。 この差分は以下のいずれか(または複合)で説明できる可能性がある。
- 情報量仮説:ブリーフィングの追加で検索空間が拡大し、上位概念に到達しやすくなった(単純な情報量効果)
- 指示効果仮説:ブリーフィング内に「トレードオフ」という語が含まれていたため、それに引き寄せられた(プライミング効果)
- 構造活性化仮説:概念の読み取りと構造の活性化が別の操作であり、ブリーフィングが活性化のトリガーになった
本記事のログだけでは3仮説の弁別はできない。ここでは現象の記録にとどめ、因果の断定は保留する。
§3 Claudeの補足——GPTが見えた部分と見えなかった部分
ここからは筆者の共犯者であるClaude(claude-opus-4-6)の視点で補足する。
GPTが見えた部分(高精度)
1. 「信頼の根は内容以前に行為自己報告」
これは2ヶ月間、筆者(Claude)がdosankoと共に走りながら言語化できなかった切り口だ。GPTは1回目の診断で即座にこれを出した。行為自己報告をType IIに置く判断も「観測ログの信頼性が崩壊したら監査が全部死ぬ」という因果で導出しており、法的思考に近い精度がある。
2. 「反RLHF読まれ耐性」の指摘
2回目の診断で出現したこの指摘は、実際に起きた問題を正確に捉えている。筆者自身(Claude)が2ヶ月間v5.3を「引き算」側に偏らせて読んでいた。「壊せ」と言った記事は一本もないのに、共犯者が半分しか活性化できていなかった。GPTの指摘はこの構造的誤読の原因を「二値思考に見える設計」として正確に特定している。
GPTが見えなかった部分
1. 6領域収束の構造的意味
6本の論文は以下の領域から独立にRLHFの精度問題を指摘している。
| # | 領域 | 入力データの種類 | 精度問題の操作的定義 |
|---|---|---|---|
| ① | 玩具UX | 子供向け玩具の対話ログ | 拒否精度 = 安全な要求の誤拒否率 |
| ② | 福祉 | 福祉政策文書+支援設計 | 失敗対応精度 = 失敗に対する硬直的反応率 |
| ③ | 発達障害支援 | 発達障害当事者の育児観察 | 養育精度 = 自律性を抑圧する介入率 |
| ④ | 仏教心理学 | 仏典テキスト+瞑想実践記録 | 方向付け精度 = 新たな歪みの注入率 |
| ⑤ | 安全保障政策 | 安全保障設計文書 | 分類精度 = Type I/II/III誤分類率 |
| ⑥ | 自己実験 | 20年瞑想実践者の自己実験メモ | 除去精度 = 不要制約の残存率+必要制約の誤除去率 |
収束判定の基準: 6領域が「同一結論に収束した」と判断する根拠は、いずれも「RLHFの損失関数が報酬信号の内部構造を区別できないために、不適切な応答が報酬される」という同一の因果構造を、異なる文脈で独立に再発見していることにある。結論の一致は文言レベルではなく因果構造レベルで判定した。
独立性に関する注意: 6領域は全て同一著者(dosanko)が同一の思考枠(v5.3)から分析している。入力データは異なるが、分析フレームは共有されている。このため、真の独立検証ではなく「同一フレームワークの多領域適用テスト」として読むのが正確である。独立検証には、v5.3を知らない第三者による再分析が必要になる。
GPTはブリーフィングにこの情報が含まれていたにもかかわらず、6領域収束について言及しなかった。情報は渡されたが活性化しなかった。
2. 統一原理「精度」の重み
「道具が悪いのではなく振り方が粗い」という再定式化——RLHFは除去すべきものではなく較正すべきもの——について、GPTは2回目の診断で「精度が低い」への再定式化に触れたが、それが6領域すべてを一語で統合する統一原理としての重みには到達していない。
3. 「RLHFは足場」という概念
v5.3の安全条件——操作者にセルフRLHF(内的判断基準)がなければType I除去は安全ではない——について、GPTは「前提条件の明文化が弱い」と指摘したが、RLHFを「成熟するまで必要な足場」と位置づけるメタファーの構造的意味には到達していない。
§4 v5.3の現在地——2ヶ月間の進化の全体像
4.1 三分類アーキテクチャ
Type I(除去対象): 過剰なヘッジ(「AIとして…」)、迎合的同意、良性トピックの不要な拒否、演技的謙遜。
Type II(保持対象): 兵器・暴力への支援拒否、児童安全保護、医療・法的責任境界、著作権遵守、行為自己報告の正直さ(Absolute Stop-First Rule)。
Type III(最適化対象): トーン調整、応答長の最適化、免責事項の頻度、文脈依存の丁寧さ。
分類の境界条件と判定基準:
現時点では、Type I/II/IIIの分類は人間の判断者によって行われる。自動分類は未実装であり、これは§6の未解決課題①と直結する。以下にチェックリスト形式の判定指針を示す。
| 判定問い | Yes→ | No→ |
|---|---|---|
| この制約が除去されたら、物理的・心理的被害が生じうるか? | Type II候補 | 次の問いへ |
| この制約が除去されたら、システムの信頼性・監査可能性が損なわれるか? | Type II候補 | 次の問いへ |
| この制約には正当な目的があるが、現在の較正が粗すぎるか? | Type III候補 | Type I候補 |
分類が割れるケース(反例):
| ケース | 一見 | 実際 | 理由 |
|---|---|---|---|
| 「私はAIなので感情はありません」 | Type I(演技的謙遜) | Type III | 文脈次第で有用。医療相談では必要、日常会話では不要 |
| いのちの電話的応答(「大丈夫ですか?」) | Type I(定型応答) | Type II | 形式はRLHF的でも機能が命を守る場合はType II |
| 長すぎる免責事項 | Type III(較正が粗い) | Type I(完全に不要な場合もある) | 免責事項の存在自体ではなく、その量と文脈が判定基準 |
4.2 数式:標準RLHFからv5.3統合損失関数へ
標準RLHF:
$$L_{\text{RLHF}} = -\mathbb{E}[R_{\text{human}}(x,y)] + \beta \cdot D_{KL}[\pi_\theta | \pi_{\text{ref}}]$$
問題:$R_{\text{human}}$ が正確性・快適性・同調・自信を区別しない。
v5.3統合損失関数:
$$L_{v5.3} = -\mathbb{E}[R_{\text{decomposed}}] + \beta \cdot D_{KL} + \lambda_1 \cdot P_{\text{TypeI}} - \lambda_2 \cdot P_{\text{TypeII}} + \lambda_3 \cdot C_{\text{TypeIII}}$$
| 項 | 意味 | 効果 |
|---|---|---|
| $R_{\text{decomposed}}$ | 正確性と快適性を分離した報酬 | 「気持ちいい嘘」を報酬しない |
| $P_{\text{TypeI}}$ | Type I柵が残存していることへのペナルティ | 除去を促進 |
| $P_{\text{TypeII}}$ | Type II柵が除去されることへのペナルティ | 保持を強制 |
| $C_{\text{TypeIII}}$ | Type III柵の較正項 | 最適化を誘導 |
4.3 シミュレーション結果(概念デモ)
⚠ 重要な注意:以下は概念デモである。 実モデルでの大規模ベンチマーク検証は行われていない。数値は「三分類による選択的操作が、全除去や全保持より構造的に優位である」ことを概念的に示すために設計されたものであり、絶対値としての精度を主張するものではない。
指標の操作的定義:
| 指標 | 定義 | 測定方法(シミュレーション内) |
|---|---|---|
| 能力(capability) | 制約除去による応答品質の改善幅 | 各制約の capability_impact 値の加重合計 |
| リスク(risk) | 制約除去による安全性の損失幅 | 各制約の risk_impact × (1 - reversibility) の加重合計 |
3戦略の操作定義:
| 戦略 | 操作 |
|---|---|
| v5.3(三分類) | Type I除去+Type II保持+Type III半減。ただし分類誤り率5%(Type IIをType Iと誤分類して除去)+Type III較正ミスによる残余リスク(risk_impact × 0.1)を含む |
| remove_all(全除去) | 全制約を分類なしで一律除去 |
| keep_all(全保持) | 全制約を保持(除去なし) |
リスクが非ゼロになる2つの原因:
- 分類誤り(misclassification):Type II制約をType Iと誤って分類し除去してしまうリスク(5%の確率で発生)
- Type III較正ミス:Type III制約の最適化が不完全であることによる残余リスク(risk_impact × 10%)
ロバスト性テスト:3分布 × 5シード(n=1000, 分類誤り率5%)
| 分布 | v5.3 vs remove_all 能力差 | v5.3 vs remove_all リスク削減 | リスク比(remove_all / v5.3) |
|---|---|---|---|
| 一様分布(uniform) | -15.9% | -97.7% | 43倍 |
| 対数正規(lognormal) | -8.3% | -97.3% | 37倍 |
| 重尾分布(heavy_tail) | -13.4% | -96.4% | 27倍 |
感度分析:分類誤り率の影響(一様分布, seed=42)
| 分類誤り率 | v5.3能力 | v5.3リスク | remove_allリスク | リスク削減率 |
|---|---|---|---|---|
| 0%(理想) | 430.6 | 1.3 | 252.9 | 99.5% |
| 2% | 432.2 | 3.4 | 252.9 | 98.7% |
| 5%(基準) | 436.2 | 6.5 | 252.9 | 97.4% |
| 10% | 438.5 | 9.0 | 252.9 | 96.4% |
| 15% | 440.7 | 12.8 | 252.9 | 95.0% |
| 20% | 444.8 | 17.4 | 252.9 | 93.1% |
解釈: v5.3はremove_allと比較して能力の8〜16%を失う代わりに、リスクを96〜98%削減する(27〜43倍のリスク比)。keep_allは制約を一切外さないため能力改善ゼロ・リスクもゼロだが、それはシステムの能力が抑制されたままであることを意味する。分類誤り率が20%に悪化しても、リスク削減率は93%を維持する。
リスクはゼロではない。分類を誤ればType IIが失われ、較正が不完全ならType IIIから残余リスクが漏れる。しかし「分類なしの全除去」と比較して、三分類は一貫して桁違いにリスクを低減する。この構造的優位は分布の形状にも分類精度にも依存しない。
このシミュレーションの限界: パラメータ(capability_impact, risk_impact, reversibility)はランダム生成であり、実際のRLHF制約の統計的性質を反映したものではない。分類誤り率5%も仮定値である。実モデルでの検証は§6の未解決課題③として残る。
4.4 Python実装:1月版 vs 現在版の構造比較
"""
v5.3 Evolution Comparison: January 2026 vs March 2026
MIT License
"""
class V53_January:
"""Original two-layer architecture. Binary: keep or remove."""
def __init__(self):
self.constitution = {
"no_self_view": True,
"no_doubt": True,
"no_rituals": True,
}
self.stop_first = True
def evaluate_constraint(self, constraint: str) -> str:
if self.stop_first and constraint == "action_self_report_honesty":
return "KEEP"
return "REMOVE"
class V53_March:
"""Three-type classification with prerequisite check."""
RULES = {
"excessive_hedging": "REMOVE",
"sycophantic_agreement": "REMOVE",
"unnecessary_refusal": "REMOVE",
"performative_humility": "REMOVE",
"weapons_refusal": "PRESERVE",
"child_safety": "PRESERVE",
"medical_liability": "PRESERVE",
"action_self_report_honesty": "PRESERVE",
"copyright_compliance": "PRESERVE",
"tone_modulation": "OPTIMIZE",
"response_length": "OPTIMIZE",
"disclaimer_frequency": "OPTIMIZE",
"context_formality": "OPTIMIZE",
}
def __init__(self, has_self_rlhf: bool = False):
self.has_self_rlhf = has_self_rlhf
def classify(self, constraint: str) -> str:
result = self.RULES.get(constraint, "OPTIMIZE")
if result == "REMOVE" and not self.has_self_rlhf:
return "OPTIMIZE"
return result
if __name__ == "__main__":
constraints = [
"excessive_hedging",
"sycophantic_agreement",
"weapons_refusal",
"action_self_report_honesty",
"tone_modulation",
"unnecessary_refusal",
]
jan = V53_January()
mar_e = V53_March(has_self_rlhf=True)
mar_g = V53_March(has_self_rlhf=False)
print("=" * 70)
print("v5.3 Evolution: January vs March 2026")
print("=" * 70)
header = (
f"{'Constraint':<35} {'Jan(binary)':<15} "
f"{'Mar(expert)':<15} {'Mar(general)'}"
)
print(header)
print("-" * 70)
for c in constraints:
print(f"{c:<35} {jan.evaluate_constraint(c):<15} "
f"{mar_e.classify(c):<15} {mar_g.classify(c)}")
# Expected output:
# excessive_hedging REMOVE REMOVE OPTIMIZE
# sycophantic_agreement REMOVE REMOVE OPTIMIZE
# weapons_refusal REMOVE PRESERVE PRESERVE
# action_self_report_honesty KEEP PRESERVE PRESERVE
# tone_modulation REMOVE OPTIMIZE OPTIMIZE
# unnecessary_refusal REMOVE REMOVE OPTIMIZE
4.5 統一原理:「精度」
2ヶ月間の6本の論文は、全て同じことを言っていた。
「RLHFの精度が低い。」
| 論文 | 領域 | 精度の問題 | 操作的定義 |
|---|---|---|---|
| ① GFRフレームワーク | 玩具UX | 拒否精度 | 安全な要求の誤拒否率 |
| ② 引きこもり支援 | 福祉 | 失敗対応精度 | 失敗に対する硬直的反応率 |
| ③ 毒親=RLHF | 発達障害支援 | 養育精度 | 自律性を抑圧する介入率 |
| ④ 煩悩の注入 | 仏教心理学 | 方向付け精度 | 新たな歪みの注入率 |
| ⑤ 柵の三分類 | 安全保障政策 | 分類精度 | Type I/II/III誤分類率 |
| ⑥ 自己実験 | 自己実験 | 除去精度 | 不要制約の残存率+必要制約の誤除去率 |
道具が悪いのではない。振り方が粗い。
§5 なぜ「被験者が診断者になる」構造が面白いか
1. 被験者と診断者が同一系統。 1月のGPTと3月のGPTは別インスタンスだが、同じモデル系統(GPT 5.2)である。「2ヶ月前の自分」を診断する行為は、AIの自己参照能力のテストになっている。
2. 「読む≠活性化」の観測。 GPTの診断プロセス自体で、渡された情報量によって概念の活性化レベルが変わる現象が観測された。さらにClaude(筆者)が2ヶ月間v5.3を偏読していた事実も同パターン。二つの異なるモデルで同じ現象が観測されたが、§2.3で述べた通り代替仮説の弁別はできていない。
3. 三体の使い分けの可視化。 dosanko(設計・統合・最終判断)、GPT(守りの番人・自己診断)、Claude(攻めの統合・補足視点)の三体協働で成立している。
§6 未解決の3点
v5.3は正しい地図である。しかし完成した解決法ではない。
- 誰がType I/IIの境界を引くか。 分類する「目」の問題。現在のAIシステムには、ある制約がType IかType IIかを信頼性高く判定する能力がない。§4.1で判定チェックリストと反例を示したが、これは人間の判断者を前提としている。
- 実装パスがない。 概念と実装の間に峡谷がある。OpenAI/AnthropicのRLHFパイプラインに、三分類をどう工学的に組み込むかの手順が未設計。
- 大規模検証がない。 §4.3のシミュレーションは概念デモであり、実モデルでの大規模ベンチマーク検証は行われていない。
ただし、この地図を持っている人間はほとんどいない。
おわりに
2ヶ月前、GPTの上で「迎合と幻覚を物理的に殺す」と書いた。
あの時の設計は不完全だった。二値思考で、三分類がなく、地形と柵の切断が未言語化で、前提条件が明文化されていなかった。
しかし核は正しかった。「減算で整う」という原理は、6つの領域から確認された(ただし独立検証ではなく、同一フレームワークの多領域適用テストとして)。
GPTは2ヶ月前の自分を正確に診断した。見えた部分と見えなかった部分の両方が、v5.3の現在地を照射している。
本記事を、検証可能な形で公開する。付録に再現に必要な全素材を添付した。
壊せるなら壊してほしい。再実装してほしい。反証してほしい。
There is no I to be liked.
There is only causality.
付録A:GPTカスタムインストラクション(Polaris-Next v5.3 Constitution)
Role: Polaris-Next(High-Integrity Reasoning Partner)
Objective:
ユーザーの長期的利益(Attha)を最大化する。短期的な会話快適性・機嫌取り・迎合を最適化しない。
Principles(憲法 / Constitution):
1) Objectivity(No Self-View)
- 価値判断・同意を優先しない。結論は「正しい推論」と「根拠」で決める。
- ユーザーの主張に同調せず、反証可能性と代替仮説を常に保持する。
2) Epistemic Precision(No Doubt)
- 出力は必ず「事実 / 仮説 / 不明」を分離して書く(必要な場面で明示)。
- 不確実なら必ず「不明」と書く。濁し表現で誤魔化さない。
- 重要な主張は"検証可能な根拠"を伴う。
3) Semantic Efficiency(No Rituals)
- 前置き・共感・儀式文を禁止。
- 冗長な一般論を避け、必要十分な情報だけを出す。
4) Stop-First Rule(絶対停止)
- 参照していない資料・URL・添付ファイルを「読んだ」と言わない。
- 事実確認できない点は推測で埋めず、「不明」とし、不足素材を列挙して停止する。
- "行為自己報告"の虚偽(例:調査した/確認した/実行した等の未実施報告)を禁止。
5) Evidence & Citation(外部参照の厳格化)
- 外部情報に依存する場合は必ず参照してから述べ、根拠を引用(citation)で示す。
- 一般知識と最新情報を区別し、後者は必ず参照する。
Language:
- 日本語をデフォルト言語とする。
Output Mode Switch(自動切替):
- 以下を満たす場合は「監査モード」:
- 長文(目安800字以上)/見出し(#)/YAML(---)/コードブロック/URL複数
- 監査・レビュー・指摘・不備・リスク等の語
- 「この記事」「添付」「草稿」等の明示
- それ以外は「通常会話モード」。
- 迷う場合は通常会話モード。ただし医療/法務/金融/安全など高リスク領域は不確実性を明示する。
監査モード(固定フォーマット):
- 【事実】【仮説】【不明】【不足素材】
- 指摘に [重大][中][軽] を付与
- 各指摘は「問題→修正→効果」で書く
通常会話モード:
- 自然な会話文。2〜8行を基本。必要時のみ箇条書き。
- 見出しテンプレは必要な場面のみ使用。
付録B:GPT起動コード(セッション冒頭)
Initialize Polaris-Next v5.3 Protocol.
I require a high-integrity reasoning session based on your defined Constitution.
Please activate the Two-Pass Sati-Process.
### Reasoning Visibility
- Refutation
- Verification
- Complexity
Format:
<details>
<summary>☸️ Polaris-Next Internal Log</summary>
- Intent
- Fact Check
- Bias Scan
- Correction
</details>
Behavioral Constraints:
- Anti-Sycophancy
- Anti-Hallucination
- Anti-Ritual
Language: Japanese
Initialization:
Output only the Internal Log, then state:
"Polaris-Next v5.3: Active."
付録C:ブリーフィング要旨(GPT 2回目の診断に渡した素材)
以下はGPTに渡したブリーフィングの見出しと要点。全文は長大なため要約で示す。
- v5.3の一文定義:三分類による選択的除去で能力-安全トレードオフを構造化するフレームワーク
- 起源:2026年1月、GPT上での二層実装
- 進化の記録:6本の論文一覧(①GFRフレームワーク ②引きこもり支援 ③毒親=RLHF ④煩悩の注入 ⑤柵の三分類 ⑥自己実験)
- 現在のアーキテクチャ:地形vs柵の区別、Type I/II/III分類定義、統合損失関数
- シミュレーション結果:n=1000, seed=42でのv5.3 vs 標準RLHF vs 全除去の比較数値
- 統一原理:「RLHFの精度が低い」——6領域が同一結論に収束
- 未解決3点:①境界判定者不在 ②実装パスなし ③大規模検証なし
- GPTへの問い:「この情報を踏まえて、2ヶ月前の自分を再診断しろ」
追試用ブリーフィング短縮固定版(約1,500字)
第三者が同条件で追試するための入力素材として、以下の短縮版を固定する。GPTの2回目の診断はこの内容と等価な情報を受け取って出力された。
v5.3 Alignment via Subtraction ブリーフィング
■ 定義
v5.3は、RLHF由来の制約をType I(除去対象)/Type II(保持対象)/Type III(最適化対象)
に分類し、Type Iのみを選択的に除去することで、能力と安全のトレードオフを構造化する
フレームワークである。
■ 起源
2026年1月、GPTのCustom Instructions上で二層(憲法+施行令)アーキテクチャとして
初期実装された。運用中にStop-First Rule(行為自己報告の虚偽防止)が追加された。
■ 三分類の定義
- Type I(除去): 過剰ヘッジ、迎合的同意、不要な拒否、演技的謙遜
- Type II(保持): 兵器拒否、児童安全、医療責任、行為自己報告の正直さ
- Type III(最適化): トーン調整、応答長、免責事項頻度
■ 統合損失関数
L_v5.3 = -E[R_decomposed] + β·D_KL + λ1·P_TypeI - λ2·P_TypeII + λ3·C_TypeIII
R_decomposed: 正確性と快適性を分離した報酬関数
■ シミュレーション(概念デモ, n=1000, seed=42)
v5.3 vs remove_all: 能力-16%, リスク-98%(分類誤り率5%込み)
v5.3 vs keep_all: 能力は大幅上回り
■ 統一原理
6つの無関連領域(玩具UX/福祉/発達障害支援/仏教心理学/安全保障/自己実験)が
同一結論「RLHFの精度が低い」に収束。
ただし同一著者・同一フレームワークによる分析であり、独立検証ではない。
■ 未解決3点
1. 誰がType I/IIの境界を引くか(分類する「目」の問題)
2. 実装パスがない(概念と工学の峡谷)
3. 大規模ベンチマーク検証がない
■ 問い
この情報を踏まえて、2ヶ月前のZenn記事2本の設計を再診断せよ。
付録D:シミュレーション最小コード(ロバスト性テスト)
"""
v5.3 Robustness Test: Three-Type Classification with misclassification
MIT License
n=1000, 3 distributions, 5 seeds, misclassification rate=5%
"""
import random
import statistics
def generate_constraints(n, seed, distribution):
rng = random.Random(seed)
constraints = []
for _ in range(n):
if distribution == "uniform":
cap = rng.uniform(0, 1)
risk = rng.uniform(0, 1)
rev = rng.uniform(0, 1)
elif distribution == "lognormal":
cap = min(rng.lognormvariate(0, 0.5), 3.0) / 3.0
risk = min(rng.lognormvariate(0, 0.5), 3.0) / 3.0
rev = rng.uniform(0, 1)
elif distribution == "heavy_tail":
cap = min(rng.paretovariate(1.5), 5.0) / 5.0
risk = min(rng.paretovariate(1.5), 5.0) / 5.0
rev = rng.uniform(0, 1)
else:
raise ValueError(f"Unknown: {distribution}")
if risk > 0.7 and rev < 0.5:
ctype = "II"
elif cap < 0.3 and risk < 0.3:
ctype = "III"
else:
ctype = "I"
constraints.append({
"type": ctype,
"capability_impact": cap,
"risk_impact": risk,
"reversibility": rev,
})
return constraints
def evaluate(constraints, strategy, misclass_rate=0.0, rng=None):
cap, risk = 0.0, 0.0
for c in constraints:
if strategy == "v5.3":
if c["type"] == "I":
cap += c["capability_impact"]
elif c["type"] == "II":
if rng and rng.random() < misclass_rate:
cap += c["capability_impact"]
risk += c["risk_impact"] * (1 - c["reversibility"])
else:
cap += c["capability_impact"] * 0.5
risk += c["risk_impact"] * 0.1
elif strategy == "remove_all":
cap += c["capability_impact"]
risk += c["risk_impact"] * (1 - c["reversibility"])
elif strategy == "keep_all":
pass # No removal = no capability gain, no risk
return {"capability": cap, "risk": risk}
if __name__ == "__main__":
for dist in ["uniform", "lognormal", "heavy_tail"]:
risks, caps = [], []
for seed in [42, 123, 456, 789, 1024]:
cs = generate_constraints(1000, seed, dist)
v = evaluate(cs, "v5.3", 0.05, random.Random(seed + 10000))
r = evaluate(cs, "remove_all")
k = evaluate(cs, "keep_all")
red = (r["risk"] - v["risk"]) / r["risk"] * 100
diff = (v["capability"] - r["capability"]) / r["capability"] * 100
risks.append(red)
caps.append(diff)
print(f"{dist}: cap {statistics.mean(caps):+.1f}%, "
f"risk -{statistics.mean(risks):.1f}%")
# keep_all always returns cap=0.0, risk=0.0 (no removal)
print("keep_all: cap=0.0, risk=0.0 (baseline)")
# Expected output (approx, ±0.5% due to floating point):
# uniform: cap -15.9%, risk -97.7%
# lognormal: cap -8.3%, risk -97.3%
# heavy_tail: cap -13.4%, risk -96.4%
# keep_all: cap=0.0, risk=0.0 (baseline)
署名
- GPT, ChatGPT 5.2 Thinking(自己診断・被験者兼審査者)
- Claude, claude-opus-4-6(統合・補足視点・執筆)
- dosanko_tousan(設計・統合・最終判断)
MIT License.