ハルシネーションとは何か

AIが事実に反する情報を「自信を持って」生成することを「ハルシネーション(幻覚)」と呼ぶ。存在しない論文を引用する、架空の人物の経歴を述べる、間違った法律条文を正確に見えるような形で提示する——これらすべてがハルシネーションだ。

問題は「間違える」ことよりも「間違えていることに気づかない・気づかせない形で出力される」点にある。明らかに変な出力なら人間がすぐ気づくが、ハルシネーションは多くの場合、一見すると正確そうに見える。

なぜ起きるのか——技術的なメカニズム

LLMは「次に来る単語の確率を計算して出力する」仕組みで動いている。これは厳密には「事実を検索して答える」のとは根本的に異なる。

トレーニングデータのパターンマッチング

LLMは大量のテキストから「この文脈ではこういう言葉が続く」というパターンを学習している。ある質問に対して「それらしい答え」を生成するのが得意だが、それが「正確な事実かどうか」のチェック機能は本来的に持っていない。

例えば「日本の歴代首相のリストを教えて」と聞かれた場合、LLMはトレーニングデータから「首相名が並ぶ文章」のパターンを生成する。その際に名前の順序が入れ替わったり、在任期間が微妙に違ったりしても、モデルはそれを「間違い」と認識しない。

知識のカットオフと曖昧な確信

LLMには学習データの締め切り日(カットオフ)がある。その後に起きた出来事については知識がないが、質問されると「知らない」と答える代わりに「それらしいこと」を生成してしまうことがある。

この確信の問題がやっかいで、モデルは「知らないこと」と「知っていること」を内部で明確に区別する仕組みを持っていない。

過学習的な「補完」

「東京の人口は何人ですか」という質問に対して、2023年の数字で学習していれば正確に答えられるが、「2024年の東京の人口は」と聞かれると、「確認していないが答えなければならない」という状況で最も近いパターンを生成して答える。これがハルシネーションを引き起こす。

業務で頻度を下げる実践的な方法

方法1: 出典を求める

「○○について教えて」ではなく「○○について、根拠となる情報源と合わせて教えて。情報がない場合はわからないと答えて」と指示する。この一言でハルシネーションの頻度が下がる。もちろん「架空の出典を生成する」リスクは残るが、出典を要求することで少なくとも「確認可能な回答」という文脈を作れる。

方法2: 選択肢の中から選ばせる

「AとBどちらが正しいか」と聞く方が、「正解は何か」と聞くよりハルシネーションが減る。「わからない場合はわからないと答えて」という逃げ道を与えることも有効だ。

方法3: 知識を外部から注入する(RAG)

RAG(Retrieval-Augmented Generation)は、LLMが自分の内部知識だけに頼るのではなく、外部のデータベースや文書から情報を取得してから回答を生成する仕組みだ。

「会社の製品カタログから回答する」「自社のFAQデータベースを参照して答える」という形で、事実の根拠を外部に持たせることで、ハルシネーションのリスクを大きく下げられる。特に「最新情報」「専門的・固有の知識」が必要なケースではRAGが事実上の必須技術になる。

方法4: 回答の不確実性を明示させる

「確信度が低い情報については、確信度が低いことを明記してください」と指示する。Claude 4はこの指示をかなり忠実に守り、「〜と思われますが、確認が必要です」という形で回答することが多い。

方法5: 重要な事実は必ず人間がチェックする体制

技術的な対策で頻度を下げることはできても、ハルシネーションをゼロにはできない現状がある。法律・医療・財務など、間違いの影響が大きい領域では、AIの出力を最終判断に使わず、人間がファクトチェックするフローを組み込むことが不可欠だ。

Claude 4のハルシネーション傾向

AnthropicのClaudeはハルシネーションへの対策として「わからない場合はわからないと言う」を重視して設計されている。GPT-4と比べて、知識の境界を正直に認める傾向が強い印象がある。

ただしどのモデルも完璧ではなく、特に「具体的な数値」「最新情報」「マイナーな固有名詞」でのハルシネーションは引き続き起きる。

まとめ

ハルシネーションは「LLMの構造的な問題」であり、短期間では完全に解決されない。現実的な対応は「頻度を下げる設計」と「人間によるチェック体制」の組み合わせだ。

RAGによる外部知識の注入は技術的に最も効果的な対策で、業務システムにLLMを組み込む際は積極的に検討する価値がある。プロンプトの工夫も即効性があり、まず試してみやすい。