AIのハルシネーションはなぜ起きるのか

ChatGPTとCodexの違いから考える

ハルシネーションは、AIが意図して嘘をつく話ではありません。文脈に合う自然な回答と、事実として正しい回答の違いを理解することが重要です。

ハルシネーションは、AIが雑に嘘をついているわけではない

生成AIを使っていると、存在しない制度名、架空の引用、間違った仕様、古い情報をもとにした説明が返ってくることがあります。この現象はハルシネーションと呼ばれます。

ただし、AIが人間のように意図して嘘をついているわけではありません。AIは、与えられた文脈から次に続く可能性の高い言葉を生成しています。

その結果、文章としては自然でも、事実としては間違っている回答が生まれることがあります。実務では、AIがなぜそう答えるのかを理解しておく必要があります。

ありそうな答えと正しい答えは違う

ハルシネーションが起きる大きな理由は、AIが文脈上ありそうな答えを作れることです。

ある製品名について質問すると、AIはその製品にありそうな機能、ありそうな価格、ありそうな制限を組み合わせて答えることがあります。文章だけを見ると自然なので、正しい情報のように見えます。

しかし、実際にはその機能が存在しなかったり、価格が変わっていたり、URLが架空だったりすることがあります。実務では、ありそうな答えと正しい答えを分けて見る必要があります。

文脈が足りないと、AIは補完しようとする

ハルシネーションは、質問の文脈が足りないと起きやすくなります。

このエラーを直して、とだけ言われても、対象ファイル、環境、実行コマンド、エラーログ、期待する動作が分からなければ、AIは一般的にありそうな原因を推測するしかありません。

記事作成でも同じです。読者、目的、公開場所、トーン、入れてよい情報、避けるべき情報が曖昧なままだと、AIは一般論で埋めようとします。

CodexはChatGPTよりハルシネーションが起きにくい場面がある

ハルシネーションは、AIが確認できない情報を推測で補うと起きやすくなります。

その意味で、Codexは通常のChatGPTよりもハルシネーションが起きにくい場面があります。理由は、Codexが作業環境に入り、実ファイル、差分、ログ、テスト結果、作業ディレクトリを確認しながら動けるからです。

Codexは魔法のように間違えないAIではありません。確認できるものを確認することで、推測の余地を減らせるAIです。

実務では、AIに推測させない設計が必要になる

AIを実務に入れるときに重要なのは、AIを賢くすることだけではありません。AIに推測させない構造を作ることです。

作業対象のファイルを読ませ、現在の設定値、差分、ログ、テスト結果を確認させます。作業ディレクトリや引き継ぎ情報も明確にしておくと、AIは現物に基づいて動きやすくなります。

AIを信じるか疑うかという話ではありません。AIにどこまで確認させるかの設計が、ハルシネーションを減らす実務技術になります。

まとめ

AIのハルシネーションは、AIが意図して嘘をついているから起きるわけではありません。文脈に合う自然な回答を作る仕組みが、確認できていない情報までそれらしく補完してしまうことで起きます。

特に、日付、価格、仕様、法律、固有名詞、URL、ファイル名、最新情報では、自然な文章であることと正確であることを分けて考える必要があります。

ハルシネーションを減らすには、AIに推測させないことです。確認できるものは確認させ、足りない文脈は渡し、重要な判断は人間が確認する。この設計が、生成AIを実務で使うための基本になります。