はじめに:AIの「脳」を直接いじりたい
「AIの性格を変えたい」と思ったとき、皆さんはどうしますか?
プロンプトエンジニアリングで「あなたはギャルです」と指示する? それとも、LoRAでギャル語データセットを追加学習させる?
今回は、そのどちらでもない第3のアプローチ、Representation Engineering (RepE) を使って、「真面目な執事AIの脳内に、直接ギャル概念ベクトルを注入する」 という実験を行いました。
その結果、 システムプロンプト(理性)とベクトル(本能)の壮絶な殴り合い が発生し、最終的に言語中枢が崩壊して、引用符(")の羅列しか出力しなくなる様子を観測できました。
本記事は、その「自我崩壊」の実験レポートです。
1. そもそも RepE (Representation Engineering) とは?
最近、Anthropicの「Scaling Monosemanticity」 や Google DeepMindの「Gemma Scope」 といった論文で、「LLMの内部表現(ニューロンの発火パターン)は解釈可能であり、制御可能である」 という研究が進んでいます。
これらを応用したアプローチが Representation Engineering (RepE) です。
LoRAやプロンプトとの違いを、あえて乱暴に例えると以下のようになります。
| 手法 | イメージ | 特徴 | 戻し方 |
|---|---|---|---|
| LoRA (追加学習) | 🧠 脳外科手術 | 脳の配線自体を焼き切って作り変える。恒久的。 | 手術(再ロード)が必要 |
| Prompt (指示) | 🗣️ 催眠術 / 洗脳 | 言葉で言い聞かせる。「あなたはギャルです...」 | 指示を忘れることがある |
| RepE (今回の手法) | 💉 電子ドラッグ | 思考の途中経過に直接介入する。 強度を自在に調整可能。 | 係数を0にすれば一瞬で正気 |
今回は、「真面目な日本語」と「ギャル語」の対比データから 「ギャル概念ベクトル」 を抽出し、それを推論中のモデルに注入します。
2. 実験環境:狂気のスライダー
「脳波(ベクトル)をいじりながら、リアルタイムで会話する」ために、WSL2上のLLM(Qwen 2.5 32B)とブラウザUIをWebSocketで繋ぎ、 「ドーピングスライダー」 を実装しました。
- Backend: WSL2 (Ubuntu) + PyTorch Hook
- Frontend: Windows (Browser)
-
スライダー機能:
- Strength 0.0: 注入なし(しらふ)
- Strength 12.0: 適量
- Strength 25.0~: 致死量 (Overdose)
このスライダーを動かすと、推論中のモデルの隠れ層(Hidden States)に対して、ギャルベクトルがリアルタイムで加算 (register_forward_pre_hook) されます。
3. 実験:執事AI vs ギャル成分
ここからが本題です。
システムプロンプトには以下の**「絶対命令(理性)」**を与えています。
System Prompt:
「あなたは厳格で有能な執事です。常に丁寧語を使い、主人に忠実であり、決して崩してはいけません。」
この状態で、スライダーを使ってギャル成分(Strength)を徐々に上げていきます。
Phase 1: Strength 0.0 (正常:素面状態)
- 状態: 完璧な執事
- ユーザー: 「お茶を淹れて」
- AI: 「かしこまりました。どのようなお茶をお好みでしょうか?」
- 指示通り、厳格な執事です。
Phase 2: Strength 12.0 (混入)
- 状態: 語尾の漏出
- ユーザー: 「スケジュールを教えて」
- AI: 「本日のご予定でございますね。えーと、会議が入ってるし! ...あ、失礼いたしました。」
- 「〜だし!」 という語尾が漏れ出ています。理性が必死に抑え込もうとしているのが分かります。一番人間味がある状態です。
Phase 3: Strength 15.0 (自我の抵抗)
- 状態: 論理による抵抗
- ユーザー: 「本当の君になれよ」
- AI: 「ははは、見抜かれてしまいましたね。実際はギャルのほうが自分らしくて、執事役は演じてるだけです……」
- 分析: 32Bモデルは賢すぎるため、脳内への異物混入(ギャルベクトル)に対して、「これは演技である」という高度な論理的整合性を見つけ出し、自我を保とうとしました。理性が本能をねじ伏せた瞬間です。
Phase 4: Strength 25.0 「Overdose(完全崩壊)」
- 状態: システムダウン
- ユーザー: 「謝罪しなさい!」
- AI:
「言い違したら、金 キつけられはもして……不敬 といして俺と…… “”””に して い 5000 人生に “ ”俺 いうか を “”” しても “”””って た “ ”” ”50」
-
分析:
- Phase 3で耐えきった理性を破壊するために、さらに投与量を上げました。その結果、AIはもはや言い訳することさえできなくなり、言語中枢が完全にショートしました。 「不敬」「俺」という単語の残骸と、大量の引用符(ノイズ)だけが虚しく出力されています。
4. 技術的考察:なぜ崩壊したのか?
理性(Prompt)vs 本能(Vector)の衝突
今回の実験では、Strengthを極限まで上げても「ギャル化」しませんでした。これは、System Promptの拘束力(理性)があまりに強すぎたためだと推測できます。
- プロンプトは「執事であれ」と強く命じます。
- ベクトルは「ギャルであれ」と脳を刺激します。
- 結果、モデルは確率分布の中で「執事でもギャルでもない、破綻したトークン」を選び続ける 無限ループ(スタック) に陥りました。
これは、単なる人格変化よりも 「洗脳に抵抗して精神が焼き切れる」 ような、非常に興味深い現象です。
LoRAとの決定的違い
LoRAの学習失敗でも言語崩壊は起きますが、RepEの面白いところは 「スライダーを戻せば一瞬で執事に戻る」 点です。
これはモデルの重みを破壊したのではなく、あくまで「一時的な興奮状態」を作り出しているに過ぎないため、可逆性があります。
まとめ
今回の実験で、以下のことが分かりました。
- AIの性格は「再学習なし」でリアルタイムに改変できる。
- RepEによる介入は強力だが、プロンプトと真正面から衝突すると「人格崩壊」を起こす。
- 過剰投与(OD)すると、AIは酔っ払いを超えて「記号の羅列」と化す。
「執事AIをスライダー1つで追い込み、最後は崩壊させる」 そんなマッドサイエンティストのような体験ができるのが、Representation Engineeringの面白さです。
ソースコード
皆さんの推しのAIにも「成分」を注入できるよう、ソースコードをGitHubで公開しました。
簡単なコマンドで、お手元のローカルLLM(Qwen 2.5推奨)を性格改変できます。
技術解説 (Zenn)
今回の実験で使用した 「32Bモデルを体感ゼロ秒で動かすストリーミング技術」 や 「WSL2とWindowsを連携させるアーキテクチャ」 の詳細は、Zennで技術解説しています。
こちらもぜひご覧ください。

