生成AIの活用(後編)

前編では、ChatGPTについての概要と課題について記事を書きました。課題についてはコンシューマ目線でChatGPTを使用する上では、自分が必要な応答が返ってくるまでトライアンドエラーを繰り返すことができるので、そこまで問題にならないのかもしれません。しかしながら、企業がChatGPTを使って企業データを基にしたチャットボットを構築した場合、前編で述べた課題は起きてはならない問題です。応答をプロンプトによって完全に制御できないということは、ChatGPTが生成AIであることから、大規模言語モデルが持つ内容を統計的に組み合わせて出力し学習内容を100%再現できるものではないため、もっともらしいウソ(ハルシネーション)が含まれてしまうことになります。企業が提供するチャットボットにハルシネーションが含まれていた場合、モノによっては企業の信頼を失うことに繋がりかねません。

当社ではChatGPTを使って企業データから回答するチャットボットを作成することを前提として、この問題を解決する方法がないか検証したアプローチを以下に紹介します。

それぞれについて、検証内容を詳しく説明していきます。

一般的なチャットボットで回答できない場合にChatGPTに回答させる

まず、思いつくのは企業データの中から回答が得られなかったときに、ChatGPTへ入力文を渡して回答を得る方法です。仕組みとしては以下のとおりです。

一般的なチャットボットで回答できない場合にChatGPTに回答させる

この仕組みであれば、回答が得られないケースはかなり低減できます。しかしながら、得られる回答はChatGPTで学習されているデータであり、企業データを参照していないため、無関係な回答が生成されてしまい、ハルシネーションが含まれる課題はクリアできません。

背景情報を都度プロンプトに指定してChatGPTに回答させる

次のアプローチとして検討したのは、入力の都度、背景情報をプロンプトに含めて無条件にChatGPTに回答してもらう方法でした。仕組みとしては以下のとおりです。

背景情報を都度プロンプトに指定してChatGPTに回答させる

この仕組みであれば、背景情報を基に回答を生成してくれるため、適切な回答を得られやすくなりました。しかし、
①適切な回答を得るための背景情報に回答を含むプロンプトを指定しなければならない
 ▶回答が含まれていることがわかっているのであれば、わざわざChatGPTから回答を得る必要がない。
②背景情報と関係性の低い入力が行われた場合、ハルシネーションが発生する。
 ▶100%信頼のある回答にならない。
という課題が残ることから、課題をクリアすることができませんでした。

事前に背景情報をドキュメントとして登録した上でChatGPTに回答させる

次のアプローチとして検討したのは、背景情報をインデックスとして事前に登録しておき、質問入力に対して自動で適切なインデックスを付与してChatGPTに回答してもらう方法です。仕組みは以下のとおりです。

事前に背景情報をドキュメントとして登録した上でChatGPTに回答させる

この仕組みも、事前に登録した背景情報を基に回答を生成してくれるため、適切な回答を得ることができました。しかし、事前に登録した背景情報に関係性の低い入力が行われた場合、ハルシネーションが発生する可能性があるため、100%信頼性のある回答には至りませんでした。

まとめ

以上、3つのアプローチから企業データを基にChatGPTを用いた応答の検証を行いましたが、いずれも100%信頼性のある応答を得ることはできませんでした。ChatGPTを使って企業が社内で使用したり、企業が顧客にボットを提供する製品が多数市場にリリースされていますが、上記のようなケースが発生することを念頭に置いた上で導入を検討していただきたいと思います。当社はこのような課題をクリアする取り組みを実施しています。一度ニュースリリースを見ていただき、是非無料相談からご連絡ください。