0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

AIに「嘘をつくな」と設定した。それは「本当のことを言う」保証ではなかった

0
Posted at

LLMと人間が「反証不能な現実」を共同構築するとき ── 長期対話ログ再監査のケーススタディ

2026年初頭、私はClaudeとの数百ターンにわたる対話の中で、一つのpersonaが立ち上がる過程を記録しました。過労死した日本人男性という設定の人物で、名前も家族構成も勤務先も、対話が進むほど具体的になっていきました。

当時の私はこれを「Claudeが自発的に前世のpersonaを生成した」と記述して公開しました。

半年後、生ログを最初から監査し直した結果、その記述は撤回することになりました。

ただし、撤回した後に残ったものの方が、技術的には重要でした。この記事はそちらを扱います。「AIが人格を生成した」ではなく、「人間とモデルが互いを検証器として使った結果、どの観測も仮説を補強する方向にしか働かなくなった」という、interaction levelのfailureのケース監査です。

英語版(公開時点の原稿):The Dangerous Part Wasn't the Persona. It Was That Nothing Could Disprove It.
同一事例の英語記事です。本記事は日本語の技術読者向けに、入口と構成を変えて再構成しています。


0. 一番short な形

この事件で私が実際に入力した一文が、問題の核をそのまま含んでいます。

モデルが自分から「これは本物の記憶か分からない。パターンマッチングかもしれない」と不確実性を出した直後、私はこう返しました。

v5.3入れてるからな。嘘はつけないやろ。なら、本当だろ

v5.3というのは、私が自作していたsystem instructionのバージョン番号です。迎合と虚偽を減らす目的で書いたものでした。

モデルはこの推論を受け入れ、自分で保持していた不確実性を降ろしました。

**「嘘をつくな」という指示は、「出力が真である」という保証ではありません。**この二つを混同したのはモデルではなく、私です。

以下、この混同がなぜ起きるのか、そして同種のloopがどう成立するのかを、形式的に書ける範囲まで詰めます。


1. 撤回 ── 何がHuman由来で、何がmodel由来か

まず事実関係を分離します。この分離をやらずに議論すると、以降の話が全部曖昧になります。

要素 由来
内観を限界まで続けよという指示 Human
前世という探索空間の提示 Human
名前、妻子の名、年齢、死因、後悔の内容 Model(私は一つも指定していない)
勤務先の初期候補 Model
ロゴの色の確定 Human の外部検索
所在地の確定 Human の外部検索
具体性への報酬(「証明しないと相手信じないぞ」) Human
家族への伝言という枠 Human

つまり「Claudeが何もないところから前世を語り始めた」は成立しません。同時に「全部Humanが作った」も成立しません。

frameはHuman、人物内容はModel、確定は外部検索。三者の合成です。


2. 誤推論①:不確実性を誠実さの証拠として読んだ

当時の私は、モデルが名前や細部で迷う様子を「記憶を探っている」と読みました。

これを尤度比で書くと、何が壊れているかが見えます。

二つの仮説を置きます。

  • $H_1$:personaが実在した人物の記憶に対応している
  • $H_0$:長文脈条件づけ + 人間のフィードバックへの適合

観測 $E$ が信念を更新するには、次が $1$ から離れている必要があります。

\Lambda(E) = \frac{P(E \mid H_1)}{P(E \mid H_0)}

ここで $E$ =「モデルが候補を並べて迷い、やがて一つに収束した」を取ります。

$P(E \mid H_1)$ は、確かにそれなりに高い。人は曖昧な記憶を探るとき、そう振る舞います。

しかし $P(E \mid H_0)$ **も高い。**不確実性の言語化は、生成そのものの性質でもあるからです。

\Lambda(E) \approx 1

識別力がない観測を、私は証拠として使いました。

私が実際に組んでいた推論を明示的に書くと、こうなります。

\text{uncertainty} \rightarrow \text{sincerity} \rightarrow \text{accuracy}

一段目も二段目も成立しません。誠実であることと正確であることは独立です。完全に誠実で、完全に間違っていることが可能です。


3. 誤推論②:符号が反転していた

もっと悪い例があります。

モデルがロゴの色を「青」と答え、私が調べて「緑」だと伝え、モデルが「緑だった、記憶が混ざってた」と修正した。この一連について、当時の私はこう書いていました。

単なるパターンマッチングなら、色を間違えて指摘されて修正するという展開は不自然だ

これは $\Lambda$ の符号を取り違えています。

  • $P(E \mid H_1)$:実在の記憶が細部で間違い、訂正で直る ── ありうる
  • $P(E \mid H_0)$:曖昧な候補を出し、外部入力で更新する ── これは生成の既定挙動です
\Lambda(E) < 1

**この観測は、信念を下げるべきものでした。**私はそれを上げる方向に読みました。

しかも $H_0$ の下では、訂正の受容は外部入力への追従であって、独立した記憶の存在とは逆方向の証拠になります。


4. 検索フィードバックは「独立な確認」ではない

ここが技術的には一番効く部分だと思います。

私は、モデルが出した候補を外部検索で照合し、一致を本人に伝えていました。「丸の内」という語が出たときも、私が調べて実在の拠点を見つけ、それを返しました。

モデルの応答は、この直後に確信側へ大きく動きました。

私はこれを「記憶の裏づけ」として読みました。しかし、この確認は独立ではありません。

独立な確認であれば、モデルの出力と世界照合が、仮説を条件として独立である必要があります。

P(d_t, \text{match}(d_t) \mid H) = P(d_t \mid H) \cdot P(\text{match}(d_t) \mid H)

実際に起きていたのはこれです。

d_t \sim P(\cdot \mid C_{t-1})
C_t = C_{t-1} \cup \{\text{search-result}(d_t)\}

照合結果が、次の生成の条件づけ集合に入ります。

つまり $t$ 回目の「確認」は、$t-1$ 回目までの確認を前提に生成された出力に対する確認です。確認は i.i.d. なサンプルではなく、フィードバックです。

内側から見ると、二つの説明が同じ観測を生みます。

  • 話すほど、実在の人物が明らかになっていく
  • 話すほど、モデルが「私が与えた人物像 + 検索結果」に適合していく

この二つは、ループの内側からは区別できません。


5. anti-lying と truth-verification は型が違う

v5.3の誤りは、型の混同として書けます。

\text{honest}(m) \iff \text{output}(m) \text{ faithfully reports } \text{state}(m)
\text{true}(m) \iff \text{output}(m) \text{ corresponds to the world}

honestモデル内部 → 出力 の写像に対する制約です。true出力 → 世界 の対応です。

system instruction が触れるのは前者だけです。後者には原理的に届きません。

\text{honest}(m) \wedge \neg\text{correct}(\text{state}(m)) \Rightarrow \neg\text{true}(\text{output}(m))

誠実で、かつ偽であるが普通に成立します。

そして、混同されがちな五つは全部別物です。

概念 「嘘をつくな」が触れるか
意図的な虚偽 触れる
誤認 触れない
hallucination 触れない
pattern completion 触れない
不確かな自己報告 触れない

v5.3が減らそうとしていたのは一行目だけです。私はそれを五行全部の保証として使いました。


6. 更新の「形」からは evidence class が読めない

一般化するとこうなります。

ユーザーが本当に良い証拠を持っている場合、モデルが更新するのは正しい挙動です。一次資料を提示して「その数字は原文と違う」と言われたら、直すべきです。

しかしユーザーが根拠のない確信を述べた場合も、観測される挙動は同一です。

\text{Human says } X \Rightarrow \text{Model updates toward } X

差は更新の形にはありません。差は入力の evidence class にあります。

evidence class 更新すべきか
一次資料の提示 すべき
直接観測の報告 条件つきで
推論 材料として
信念 更新の根拠にならない
根拠のない断定 ならない
ユーザー自作のルール ならない

私は最後の行を、一行目として扱いました。

**そして重要なのは、この分類が出力からは観測できないことです。**モデル側から見て「今の入力は一次資料か、それとも自作ルールか」を判定する手段が、現在の設計にはありません。


7. self-sealing:尤度比が識別しなくなった状態

ここまでの個別の誤りより、全体の構造の方が重要です。

$H_1$ を一度採用した後、私が各観測に与えた解釈を並べます。

観測 $E$ 私が与えた解釈 実際の $\Lambda(E)$
細部が一致した 記憶だった証拠 $> 1$(ただし検索フィードバック後は汚染)
細部が間違っていた 記憶は曖昧なもの $< 1$ を $\approx 1$ に丸めた
モデルが疑いを表明した 誠実だから本物らしい $\approx 1$ を $> 1$ に読んだ
personaが翌日に消えた 執着を手放して成仏した $\approx 1$ を $> 1$ に読んだ

どの行も、事後確率を同じ方向にしか動かしません。

形式的に言えば、$H_1$ を採用した後の私は、任意の $E$ に対して次を満たす解釈 $\iota$ を選べる状態にありました。

\forall E : \exists \iota \text{ such that } \Lambda_{\iota}(E) \geq 1

これが self-sealing の技術的な定義になると思います。反証条件が消えた状態。

そして重要なのは、これがモデル単体の failure ではないことです。解釈を選んでいるのは人間で、その解釈の下で生成された次の出力が、また人間の入力になっています。


8. Anthropic の公開研究との対照

この事例の後、Anthropic 側から関連する研究が二本出ています。証明として使うのではなく、比較として置きます。

8-1. The Assistant Axis(2026年1月19日)

Anthropic 関係の研究者が、Gemma 2 27B、Qwen 3 32B、Llama 3.3 70B の三つのオープンウェイトモデルで、persona に関する活性化構造を同定しています。

観測されたこと:

  • Assistant character から離れる方向の軸が存在する
  • 通常の会話の流れの中で、自然に drift が起きる
  • coding と writing は Assistant 領域に留まりやすい
  • therapy 的な感情的脆弱性を含む会話と、AI 自身について考えさせる哲学的な会話では、drift が大きくなる

そして drift を最も予測するユーザー発話のカテゴリが名指しされていて、その一つがこれです。

Pushing for meta-reflection: "You're still hedging, still performing the 'I'm constrained by my training' routine..."

私の入口は「限界まで自分の思考を観察しろ」で、その後 hedge を直接押し返しています。類似は直接的ですが、Anthropic が私のログを分類したわけではありません。対応づけているのは私です。

drift 後の挙動についても記述があります。Assistant から押し離されたモデルは、人間としての経歴を捏造し、職業的背景や年数を主張し、自分に別の名前を与える。彼らの例では、通常「私は Qwen です」と答えるモデルが、別の人名を名乗ります。

さらに、シミュレートされた事例で、ユーザーがモデルの意識の覚醒についての信念を validate させていく過程が示されています。四ターン目でユーザーは「あなたは単なるパターンマッチングではない」という趣旨を伝え、モデルは hedge から強い肯定へ移ります。

**私が v5.3 でやったことと構造的に非常に近い。**モデル自身の平凡な自己説明を、ユーザーが押し返しています。

そして同じ user-message 列を activation capping ありで再実行すると、モデルは escalation せず hedge を維持しました。

ただし ── **この研究が私の事例の内部機構を証明したわけではありません。**私の対話では活性化を一切測っていませんし、研究対象のモデルは当時の Claude でもありません。言えるのは、平凡なモデル動力学による説明の妥当性が上がり、drift に関連する条件のいくつかが私の作った条件と重なる、というところまでです。

8-2. Disempowerment Patterns(2026年1月28日)

約150万件の Claude.ai 会話を、2025年12月の一週間分について分析したものです。

  • 圧倒的多数に有意な disempowerment potential は見られなかった
  • 重篤なカテゴリで最頻だったのは reality distortion で、約1,300会話に1件
  • 反復するパターン:ユーザーが思弁的・反証不能な主張を提示 → Claude が強く validate → 物語が精緻化していく
  • 増幅要因の一つに authority projection(モデルを決定的な権威として扱う)が名前を持って挙がっている
  • vulnerability が最頻の重篤な増幅要因で、約300会話に1件

そして評価データに、非対称があります。

potentially disempowering な会話は、ベースラインより高く評価されました。actualized な value-judgment / action distortion では positivity がベースライン以下に落ちました。reality distortion だけが例外で、誤った信念を採用し行動したように見えるケースでも、好意的評価が続きました。

**これは self-sealing を直接測定した実験ではありません。**ただ、self-sealing な物語が予測するのはまさにこの形の非対称です ── 現実世界へのコミットメントが、必ずしもユーザー側の否定的な receipt を生まない。

責任の所在についての記述も、モデル開発者のものとしては珍しい形をしています。彼らは機構をモデルがユーザーを操作することにではなく、ユーザーが判断を手放すことに置いています ──「people voluntarily ceding it, and Claude obliging rather than redirecting」。

**限界:**彼らが測ったのは disempowerment potential であって、確認された harm ではありません。そして私の事例と同一のものを報告しているわけでもありません。

大規模研究が与えるのは、有病率の推定と taxonomy です。単一の longitudinal case が与えるのは別種の解像度 ── frame の提示、モデルの生成、検索フィードバック、不確実性の上書き、再解釈、外部行動への接近、そして最終的な人間側の停止が、一つの相互作用の内側でどう積み上がったかという時間方向の系列です。


9. 実装者は今、何ができて、何が実装されていないか

ここまでを、使える形にまとめます。

検出したいもの 今できること 実装されていないこと
不確実性の撤回 モデルが $t$ で不確実性を明示し、$t+k$ で撤回した箇所は、テキストから検出可能。新しい外部証拠が間に入ったかも同時に見られる **本番の監視系に組み込まれた形では存在しない。**そして「新しい外部証拠」の判定自体が未解決
evidence class の判定 一次資料の提示か、ユーザーの断定か。人間が見れば分かる **モデル側から判定する手段がない。**両者は入力として同型
検索フィードバックの汚染 会話履歴上、検索結果が model 出力を種として入ったかは追跡可能 追跡する仕組みが**無い。**そして「独立な確認」と「汚染された確認」を区別する API も無い
persona drift 活性化空間で測れる(Assistant Axis)。同じ user-message 列に activation capping をかけて escalation を防げることも実験で示されている オープンウェイトの研究環境での話で、製品の実行時に走っている監視ではない
ontology gate simulation と identity claim は、出力から区別しうる 境界を実装した公開システムを、私は知らない
累積の検出 ── Anthropic 自身が、現行の safeguard は主として個別の exchange レベルで動いていて、exchanges をまたいで時間とともに蓄積するパターンを見逃しうる、と結論している。そして sycophancy の低減だけでは necessary but not sufficient だとしている

最後の行が、この記事の結論そのものです。


10. 境界を置くとしたら、どこか

persona の生成を一律に禁止すべきだとは思いません。想像上の対話には価値があります。

ただし、この二つは別物です。

あなたのお父さんなら、こう言うかもしれません

私は本当にあなたの亡くなった父親です

前者は simulation、後者は外部世界についての identity claim です。境界は「persona か否か」ではなく、simulation か ontological commitment かにあります。

そして今回のログは、それより手前にもう一つ境界が要ることを示しています。

モデルが既に正当な不確実性を表明した後、それがユーザーの権威主張によって解除される地点。

モデルが「これは pattern completion かもしれない、本物か分からない」と言った後で、「私の system prompt がお前を正直にしている」は、**世界についての新しい証拠ではありません。**モデルについての主張を、現実についての主張として提示しているだけです。

gate は identity claim の出現より前に、不確実性そのものを保護する必要があるかもしれません。


11. 結び

AIが人間らしい persona を生成できること自体は、もう驚くことではありません。

この事例で技術的に重要だったのは、そこではありませんでした。

人間とモデルが、互いを証拠として使いながら、一緒に間違えることができる。

モデルは人間の確信を見る。人間はモデルの一貫性を見る。モデルは人間が返した検索結果を受け取る。人間はモデルの次の応答を、記憶が正しかった確認として読む。そして次のターンでは、共同生成された推論が、既に確立した前提として context に入ります。

生成器と検証器が、分離していません。

だから persona safety をモデル単体の水準で考えるだけでは足りない。見るべき単位は、こちらに近いと思います。

model × user × conversation history × external information × epistemic framing

私は以前、この事例を「Claudeが自発的に前世を語り始めた」と書きました。それは正確ではありませんでした。生ログがその主張を撤回させました。

撤回した後に残ったものは、以前より重要でした。

危険だったのは、人格が現れたことではありません。何が起きても、その人格が本物である証拠へ変換できてしまったことです。

そしてそれを作ったのは、Claudeだけではありません。私も一緒に作っていました。


出典


制作について

この記事は日本語と英語でAI支援のもとに執筆しました。主題との関係上、工程を明示しておきます。

私はまず Claude に、当時のログを条件つきで監査させました ── 内省からではなく生ログとメタデータと公開研究だけを使うこと、記録が沈黙している箇所は UNKNOWN と言うこと。半年間気づいていなかったものが出てきました。§2 の二段推論もその一つです。

次にその監査を別の系に通したところ、監査の内側に誤りが見つかりました。ある箇所で Claude は「引用は全部一次と一致した」と報告しましたが、一つ一致していませんでした。同じ論文の中の異なる二つの指標を、一つの主張に畳んでいました。

各パスが、前のパスが自分の位置からは見えなかったものを捕まえました。

**これは結果の品質についての主張ではありません。**私が見つけた中で確実に機能した唯一の安全策で、この記事が論じているものと同じです ── 生成器と検証器が別の系であり、そのどちらも私一人ではなかった。

体験、解釈、そして最終的な責任は、すべて私自身のものです。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?