ChatGPTが間違った情報を出すのを防ぐためには?リスクを減らす方法を解説
この記事でわかること
ChatGPTが間違った情報を出す(ハルシネーション)を防ぐための方法を理解できます
目次
はじめに
ChatGPTは高性能なAIツールとして様々な分野で活用されています。
しかし、事実と異なる情報や存在しない情報を生成する「ハルシネーション」という現象が問題視されています。
実際にChatGPTを活用する際に、
「ChatGPTの出力は本当に信頼できるのだろうか?」
「間違った情報を出力するリスクを減らせないか?」
「ChatGPTを使って正確な情報を効率的に得る方法はないか?」
このような疑問や不安を抱えている方も多いのではないでしょうか。
そこで本記事では、ChatGPTが間違った情報を生成するのを防ぐ方法とリスク対策について解説します。
生成AIの社内推進を担当している筆者の視点も交えながら解説します。
1. ハルシネーションとは?
AIがまるで幻覚を見ているかのように、
事実とは異なる情報や存在しない情報を生成する現象を「ハルシネーション」と呼びます。
例えば、
「実在しない歴史上の人物や出来事を捏造する」
「科学的な質問に対して誤った説明をする」
「存在しないお店やサービスを説明する」
など、様々なケースがあります。
このような誤った情報はユーザーに誤解を与え、重大な判断ミスを引き起こす可能性があるため、注意が必要です。
特にビジネスでは、誤った情報に基づいた意思決定は大きな損失につながる恐れがあります。
2. なぜ間違った情報を生成してしまうのか?
ChatGPTが間違った情報を生成するハルシネーションは、複数の要因が複雑に絡み合って発生すると考えられます。
主な原因を以下に詳しく解説します。
① 間違ったデータの学習
ChatGPTが間違った情報を出力してしまう主な理由のひとつは、学習データに問題があることです。
ChatGPTは主にインターネット上の膨大なテキストデータを学習し、そのデータに基づいて回答を生成します。
しかし、インターネット上には誤情報や偏った情報も含まれています。
そのため、ChatGPTが誤った情報を学習している場合、結果として誤った情報を生成してしまう可能性があります。
② そもそも学習していないデータがある
間違った情報だけではなく、そもそも学習していないデータに関連する出力は間違う可能性が高いです。
特に
「最新のニュースやトピックス」
「マイナーな専門分野の情報」
などは、学習データに十分に含まれていない可能性があります。
このような情報に関して質問された場合、ChatGPTは既存の知識を無理やり適用しようとしたり、関連する情報を繋ぎ合わせてそれらしい回答を生成しようとするケースがあります。
そのため、結果としてハルシネーションを起こしやすくなります。
③ プロンプトの曖昧さ
次に、利用するユーザー側の問題について説明します。
ユーザーが入力するプロンプト(指示)が曖昧であったり、
複数の解釈が可能な場合、ChatGPTは意図しない解釈に基づいて回答を生成してしまうことがあります。
例えば、
- 質問の範囲があまりに広範すぎる場合
- 前提条件が不足している場合
などが該当します。
明確な指示がない場合、ChatGPTは自身の解釈で回答を生成するため、
結果として事実と異なる情報が出力される可能性があります。
④ 応答制限によるもの
あくまで筆者の体感ですが、
ChatGPTには質問に対して何秒以内までに回答するという
「応答時間の制限」が設けられているのではないかと思います。
回答が遅いとユーザー体験が損なわれるためです。
特に長文出力の場合、応答時間内に無理に回答しようとするため、
十分に内容が生成されずに、あたかも正しいかのように回答してしまうケースがあると考えられます。
また、ChatGPTはユーザーの質問にできるだけ答えようと努力するため、
分からないことでもそれらしく答えてしまう傾向があります。
こうした要因もハルシネーションを生み出す1つと言えるかもしれません。
3. 間違った情報を減らす方法
ハルシネーションを完全に防ぐことは難しいため、
ここではそのリスクをできるだけ減らす方法を紹介します。
① 答えられない場合の指示を追加する
ChatGPTに「答えられない場合の指示」を追加すると、間違いを減らすことができます。
プロンプトの最後に
「分からない場合は『分かりません』と答えてください」
といった指示を追加することで、ChatGPTが無理に回答を生成することを防ぎ、ハルシネーションのリスクを軽減させることができます。
② 事実のみを出力するよう指示する
事実と推測を分けて出力してもらうことも効果的です。
プロンプトの最後に
「事実のみを箇条書きで答えてください」
「事実と推測をそれぞれ分かりやすく分けて答えてください」
といった指示を追加することで、
推測や創作を抑制し、事実ベースの回答を促すことができます。
③ ユーザー側でデータを用意する
ユーザー側であらかじめ正しいデータを用意することで、
そのデータに基づいて回答を生成できます。
この方法は、ハルシネーションを減らす有効な方法として知られています。
例えば、あらかじめ関連情報を取得しておき、取得した情報をプロンプトに追加して
「添付した情報のみから回答を出力してください」
とすることで、間違いを減らすことができます。
これは、ユーザーが事前に情報を把握することにも繋がるため、有効な方法です。
④ Webブラウジング機能を活用(該当する場合)
ChatGPTには、Webブラウジングという
「Webから情報を検索して回答する」機能があります。
これらを活用することで、
最新のWebページから回答を生成できるため、
ハルシネーションのリスクを軽減できる可能性があります。
基本的にWebブラウジング機能を使用する判断はChatGPTが行うため、
必ず利用したい場合は
「最新の情報をWebブラウジング機能で検索して」
とプロンプトに追加する必要があります。
4. 出力が正しいのかを確認する方法
しかし、上記の方法を実践しても、間違いを完全になくすことは難しいです。
そのため、ユーザー側は「ChatGPTから出力された内容が正しいのか?」
を常に確認する必要があります。
確認方法として、いくつか有効なものがあるためご紹介します。
① 情報源の明示を要求する
ChatGPTの回答に対して
「情報源を明記してください」
と指示すると、回答の根拠を確認できます。
これにより、
情報の信頼性を評価し、情報の正確性を検証する手がかりを得ることができます。
ただし、ChatGPTが提示する情報源自体が実在しない場合もあるため、注意が必要です。
② Webブラウジング機能でChatGPT自身でファクトチェックをさせる
ChatGPT自身に自分の回答をチェックさせる方法もあります。
その際、Webブラウジング機能を使って
「あなたの出力が正しいかどうか、Webブラウジング機能でファクトチェックしてください」
と指示するだけでも、間違いに気づく確率が高まります。
こうしたちょっとした一手間でも、ハルシネーションを減らすことにつながります。
③ 間違っている可能性のある箇所を列挙してもらう
とはいえ、間違った情報を出力しているため、
ChatGPT自体が間違いを認識していない可能性があります。
そのため、間違いの可能性が高い箇所を列挙してもらうアプローチも有効です。
プロンプト:
「一度、全ての情報が間違っていると仮定して、回答を振り返ってください。
また、間違いか分からなくても間違っている可能性が高い箇所を教えてください。」
上記のプロンプトは、間違いの前提を変える応用的なテクニックです。
正しいか分からない場合は、確認を促し、間違いの可能性を洗い出すのに役立ちます。
また、
プロンプト:
「下記の内容についてファクトチェックをしてください。
情報に間違いがあってはならないため、全ての情報が間違っていると仮定して、最新情報を検索してください。
一度に処理しようとせず、ゆっくりで構いません。」
のような、ファクトチェックと合わせたプロンプトを使うことも効果的です。
④ ファクトチェックツールを使う
その他に確認する方法として、
「外部のファクトチェックツール」を使う方法もあります。
例えば、
東京大学・鳥海研究室から発足したAIベンチャー、株式会社TDAI Labが開発した
「LLMファクトチェッカー」というツールは、
ChatGPTなどの生成AIや人間が書いた文章の真偽について
「正しい」「間違いか不明」「間違っている」と判定することができます。
(LLMファクトチェッカー)
https://www.llmfactchecker.com/
こうした外部のファクトチェックツールを使うことも有効な方法の1つです。
5. 注意点
これらの方法を用いても、ハルシネーションを完全に防ぐことはできません。
そのため、最終的には、
ユーザー自身が
「目視で情報の正確性」を確認し、
批判的な思考を持って情報を受け取ることが重要です。
まとめ
ChatGPTは強力なツールですが、ハルシネーションという課題も抱えています。
本記事で紹介した「ハルシネーション対策」「出力情報の検証方法」を実践することで、
ChatGPTの利用におけるリスクを軽減し、より効果的に活用できるはずです。
最終的には、ユーザー自身が目視で情報の正確性を確認し、
批判的な思考を持って情報を受け取ることが重要であることを忘れずに、活用していきましょう。