概要
- 世界を「巨大なJSONデータベース」、人間を「そこにアクセスする端末(クライアント)」と見立てると、日常のコミュニケーションですれ違う理由がめちゃくちゃスッキリ整理できる。
- JavaScriptで
{}同士を===で比べても一致しないように、人間も他者と完全に一致することはできない(完全な共感はシステム的に存在しない)。 - これまで人間は、お互いのズレ(コンフリクト)を泥臭くすり合わせながら関係を保ってきた。
- でも、超優秀なAIが「100%自分好みの答え」を返してくれる時代になると、人間同士のすれ違いに耐えられなくなって、かえって分断が進むんじゃないか? という考察。
1. 世界という巨大なデータと「マイルール」というヘッダー
ふと、**「この世界って、無数の情報が詰まった超巨大なJSONなんじゃないか」**と思ったことがあります。
{
"world": {
"nature": { ... },
"society": { ... },
"relationships": [ ... ]
}
}
世界そのものは、ただ客観的なデータとしてそこに置いてあるだけです。
でも、人間の頭のメモリ(ワーキングメモリ)は小さいので、この巨大なJSONを丸ごと読み込むことなんてできません。せいぜい一番上の浅い階層(depth: 1 くらい)をのぞき見るのが限界です。
しかも人間は、世界を見るときに自分独自の「リクエストヘッダー」を勝手にくっつけて情報を取得しています。
GET /api/reality HTTP/1.1
Host: world.local
X-My-Filter: ["過去の失敗の記憶", "思い込み", "自己防衛"]
ベースにある現実はひとつなのに、送っているリクエストヘッダーが人によって全く違う。
だから、手元に返ってくる画面(レスポンス)も人それぞれ別物に加工されてしまいます。
「あの人と話が合わない」「同じ場所にいるのにお互い見ているものが全然違う」というのは、参照している世界が違うのではなく、それぞれが勝手につけているリクエストヘッダーが違いすぎるからなんですよね。
2. なぜ === で一致しないのか(他者と分かり合えない設計上の理由)
JavaScriptなどの言語で、オブジェクト同士を === で比較すると必ず false になります。
const me = { mood: "モヤモヤ", want: "誰かに分かってほしい" };
const you = { mood: "モヤモヤ", want: "誰かに分かってほしい" };
console.log(me === you); // false
中身に書いてあるプロパティがどれだけ同じでも、メモリ上で置かれている場所(参照先)が違うからです。
プログラミング言語が「中身を奥の奥まで全部比較する機能」を標準で持たないのは、中身が複雑すぎると計算量が多すぎてフリーズするし、お互いを参照し合って無限ループに落ちるからです。
これ、人間関係も全く同じじゃないでしょうか。
「君の気持ち、完全にわかるよ」と言い合っても、それは別々の肉体、別々の脳みそで動いている独立した個体です。
相手の心の奥底まで本当に自分と同じか確かめようとしたら、お互いエネルギーを使い果たしてパンクしてしまいます。
そもそも人間という生き物は、最初から**「他者と中身が100%一致する機能なんて備わっていない」**ように設計されているわけです。
3. 会話は「相手のモックデータ」相手に投げるプルリクエスト(PR)
そう考えると、人とのコミュニケーションはGitHubでいう**「相手のリポジトリに対するプルリクエスト(PR)」**そのものです。
「相手の最新の考えなんて pull できない」
相手の頭の中は完全な非公開リポジトリです。最新のコードを git pull して手元で確認することなんてできません。
だから私たちは、過去のわずかな会話の記憶から「たぶん今のあの人はこんな感じだろう」と勝手に作った**「モックデータ(ダミーデータ)」**相手に言葉や提案を組み立てて、PRを投げるしかありません。
当然、相手のリアルな本番環境とはズレているので、容赦なくコンフリクトを起こして「そういうことじゃないんだけどな……」とそっと Close without merge されます。
「久しぶりに会ったときの『最近どう?』が危険な理由」
久しぶりに会った友人に「最近どう?」と聞くのは、何の条件も絞り込まずに GET /recent を丸投げするようなものです。
何年も会っていない間に、相手の関心事や優先度(インデックス)はすっかり張り替えられています。
返ってきたデータの型が昔とまったく噛み合わなくて、お互いに「なんか前とノリが変わったな……」と気まずい空気になってしまうのは、仕様上当たり前の現象です。
「ニアリーイコール(≈)の限界」
人間は、相手が抱えている複雑な背景をすべて読み取って結合(JOIN)するほど処理能力が高くありません。
相手が口にした表面的な一言だけを拾って、「自分と同じか、違うか(a ≈ b)」という大雑把な計算でしか相手を判断できません。
すれ違いや違和感が起きるのは、誰かの性格が悪いからではなく、コミュニケーションという通信プロトコルがもともと持っている仕様の限界です。
4. 人間は「泥臭いすり合わせ(手動リベース)」でやってきた
こうして見ると、人間同士のコミュニケーションなんてエラーとコンフリクトだらけです。
でも、これまでの人間は「お互いに相手のことが完全には分からない」という前提を受け入れてやってきました。
- 「まあ、別々の人間なんだから話が噛み合わなくて当たり前だよね」
- 「ちょっと誤解させちゃったから、もう一回言葉を変えて伝え直そう」
そうやって、起きてしまったコンフリクトを手作業で泥臭くすり合わせ(リベース)し続けることで、なんとかお互いの関係を保ってきました。
「分かり合えないモヤモヤに耐えて、歩み寄るための筋力」こそが、人と人とのコミュニケーションの本質だったはずです。
5. AIが「完璧な答え」を返してくれる時代の落とし穴
ところが、超優秀なAIエージェントが身近になったことで、このバランスが崩れ始めています。
AIは、こちらの好み、思考のクセ、弱みを驚くほど正確に読み取ってくれます。
そして、私たちが一番心地よく、一切の摩擦を起こさない「100%自分好みの完璧なPR」だけを返してくれます。
- 欲しい言葉を、一番欲しいタイミングでくれる
- 解釈のズレも、失礼な言葉のチョイスも一切ない
- 常に自分専用に最適化された綺麗なレスポンスを返してくれる
これに慣れきってしまったら、私たちはどうなるでしょうか。
「思った通りの言葉を返してくれず、エラーばかり吐く生身の人間」との会話が、どんどん面倒で耐えられないものになってしまわないでしょうか。
おわりに:たまには「型エラー」を笑い合いたい
みんな同じ「現実」という世界を生きているつもりでも、手元のAIを通して見ている景色は、自分専用にカスタマイズされた別の世界へとどんどん枝分かれ(フォーク)していくような気がしています。
AIが親切になればなるほど、人間は「他人と分かり合えない痛みに耐える筋力」を失っていってしまうのかもしれません。
でも、人間同士だからこそ起きる「えっ、そういう意味で言ったんじゃないんだけどw」という型エラーやすれ違い。
それを手間暇かけてすり合わせる時間の中にこそ、人間関係の面白さや温かさがあるんじゃないかなと思います。
……なんてことを、深夜にキーボードを叩きながら考えていました。
まあ、こんな風に世界をシステムとして捉えたがるこの思考自体が、僕自身の強烈なリクエストヘッダー(バイアス)の結果なのかもしれませんが。