世界を「巨大なJSON」として捉えたら、人間関係のバグとAIのディストピアに気づいてゾッとした話
まえがき
- 人間関係のすれ違いって、要は「リクエストヘッダー(バイアス)の違い」と「モック相手にPR投げてコンフリクトしてる状態」じゃない?
- そもそもJSでもオブジェクト同士は
===で一致しないんだから、人間同士の「完全な共感」なんて設計上無理ゲー。 - でも今後、AIエージェントが「100%自分好みの神PR」を出し続けるようになったら、人間同士のクソ面倒なコンフリクト解消(リベース作業)に耐えられなくなって人類詰むのでは……? というポエムです。
1. 世界って、ただの巨大なJSONなのでは?
最近ふと考えたんですよ。
**「世界って、無限にネストされたクソデカJSONなんじゃないか?」**って。
{
"earth": {
"physics": { ... },
"society": { ... },
"humanRelationships": [ ... ]
}
}
世界そのものは、善も悪もなくただそこに置いてあるデバッグ用データみたいなもんです。
でも、人間の脳みそのメモリ(ワーキングメモリ)が弱小すぎるせいで、丸ごと読み込めない。せいぜい depth: 1 くらいの浅いプロパティだけを雑にパースして生きてるわけです。
で、一番厄介なのが**「リクエストヘッダー」**。
人間って、世界というDBを見るとき、意識してなくてもクライアント側のインターセプターが勝手にバイアスヘッダーをねじ込んでるんですよね。
GET /reality HTTP/1.1
Host: world.db
X-My-Bias: ["過去のトラウマ", "どうせ自分なんて", "謎の全能感"]
客観的な元データは1個しかないのに、全リクエストにこの変なヘッダーが強制付与されてるから、返ってくるレスポンス(その人が見てる世界)が人によって全然違う。
「あの人と話合わねえな〜」ってなるのは、相手が悪いんじゃなくてお互いのリクエストヘッダーが吐き出してるレスポンスが違いすぎるだけなんですよね。
2. そもそも言語仕様上、他者と === は無理
よく「あの人と完全に通じ合えた!」とか言うじゃないですか。
でもプログラミングやってると気づくわけです。
const me = { mind: "孤独", hope: "わかり合いたい" };
const you = { mind: "孤独", hope: "わかり合いたい" };
console.log(me === you); // 当然 false
どれだけ中身が完全一致してても、アドレス(参照先)が違うから false なんですわ。
なんでJavaScriptの標準機能に「中身を再帰的に全部突合する deepEqual」が入ってないかって、ネスト深すぎたら計算量爆発するし、循環参照でクラッシュするからですよね。
人間もまったく一緒で。
相手の思考の奥底まで「本当に同じこと考えてるか?」を突合しようとしたら、
「あいつがこう思ってると自分が思ってることをあいつはどう思って……」
って無限ループに突入して、脳みそのメモリがハングして死ぬ。
つまりこの世界、最初から「他者と完全に一致する機能」なんて実装されてないんですよ。仕様です。バグじゃありません。
3. 会話なんて「モックデータ相手に書いたPR」でしかない
そう考えると、人間同士のコミュニケーションって全部「GitHubのPR(プルリクエスト)」みたいなもんだなと。
① 相手の思考を git pull できない問題
相手の脳みそは完全なプライベートリポジトリ。最新のコードを pull することなんてできません。
だから僕らは、過去のわずかな会話ログから「たぶん今あいつはこういう感じだろう」ってローカルで勝手に相手のモックデータを定義するしかない。
// 自分の脳内にだけある「あいつのモック」
const friendMock = {
vibe: "昔のまま",
topics: ["ゲーム", "くだらない雑談"]
};
で、「これ話したら面白いっしょ!」ってモック相手にコード書いてPRを投げる。
でも相手の本番環境(リアルな現在の状況)では仕事や家庭でスキーマが変わりまくってて、容赦なくコンフリクトを起こして Close without merge される。つらい。
② 「最近どう?」という最悪のクエリ
久しぶりに会った友達に「最近どう?」って聞くの、パラメータなしで GET /user/recent-status を叩くようなもんなんですよね。相手にフルスキャン強いるなと。
しかも数年会ってない間に、相手のDBのインデックス(関心事の優先度)はすっかり張り替えられてる。
昔は sort=fun で繋がってたのに、相手は sort=career とか sort=childcare になってるから、返ってきたデータの型が合わなくて「なんかノリ変わったな……」って気まずい通信エラーになる。
③ ニアリーイコール(≈)でしか処理できない脳
人間って、相手の複雑な背景(何十行ものネストされた文脈)を丸ごと受け止めるメモリがないから、表面に出てきた「最近ちょっと忙しくてさ」っていう1行の文字列だけを拾って、自分の手持ちの値と「似てるか?(a ≈ b)」って粗い判定しかできない。そりゃすれ違いも起きますわ。
4. 人類は「泥臭い手動リベース」でやってきた
こうやって見ると、人間関係なんて通信エラーとバグの塊じゃないですか。
でも、これまでの人類は「お互いにモックデータしか持ってない」って前提をみんな感覚で知ってたから、
- 「まあ、別インスタンスだし型合わなくてもしゃーない」
- 「ちょっと言葉足らずだったわ、もう一回言い直すね」
- 「飲みに行ってコンフリクト手動解消(リベース)するか〜」
って、現場で泥臭くコンフリクトを解消し合って、なんとか共通の main ブランチ(チームとか社会)を維持してきたわけです。
この「めんどくさいすり合わせに耐える筋力」こそが、コミュニケーション能力の正体だった。
5. で、AIエージェントがヤバいって話
ここからが本題なんですけど。
今後、超優秀なAIエージェントが日常に入ってきたらどうなると思います?
エージェントは、僕らのリクエストヘッダー(認知のクセ、好み、言われたくないこと)を完璧に学習します。
そして、僕らが一番気持ちよくて絶対にコンフリクトを起こさない「マージ確率100%の神PR」だけを毎秒投げてくれるようになる。
- 欲しい言葉を、一番欲しいタイミングでくれる
- 型エラーも、沈黙の気まずさもゼロ
- 「それそれ!それが言いたかったの!」しか言わない
完全に自分専用の神バディですよね。最高じゃん。
……って思うんですけど、これに慣れきった人間、「エラーばかり吐く生身の人間との通信」に耐えられなくなりません?
「うちのAIは一瞬で汲み取ってくれるのに、なんで生身の人間はこんなに話通じねえの? 型エラーばっか吐いてうざいんだけど」
ってなって、他者との泥臭い手動リベース作業を全員が放棄し始める気がするんです。
まとめ:世界がプライベートフォークしていく
みんな同じ「現実」というDBを見てるつもりで、手元のAI経由で見ている世界は、個人最適化されたプライベートリポジトリにどんどんフォーク(枝分かれ)していく。
共通の祖先コミット(共通認識)を失った人間同士は、もう二度とお互いをリベースできなくなる。
AIが親身になって人間を甘やかせば甘やかすほど、人間は他者とすり合わせる筋力を失って、自分専用のエージェントの殻に引きこもっていく……。
これ、ターミネーターみたいにAIが反乱を起こすより、よっぽど静かでリアルなディストピアじゃないですか?
……まあ、ここまで深夜テンションで語っといてアレですけど、「この記事おもしれーじゃん!」って思ってること自体、私の脳内インターセプターが勝手に差し込んだバイアスヘッダーの出力結果な気もしてきました。
もしあなたの手元に返ってきたレスポンスと、私のこの雑なPRが奇跡的にノーコンフリクトでマージできたらうれしいです。