チャットボット + ナレッジベース

GPT-3 や ChatGPTなどの大規模言語モデル (LLM) の最近の進歩に見られるように  、テクノロジー業界では多くの注目を集めています。これらのモデルはコンテンツ生成にとって非常に強力ですが、bias1 やphantom2などのいくつかの欠点もあります。LLM はチャットボット開発に特に役立ちます。

インテントベースのチャットボット

従来のチャットボットは通常、インテントベースであり、特定のユーザーの意図に応答するように設計されています。各インテントは、一連のサンプル質問と対応する応答で構成されます。たとえば、「天気」インテントには、「今日の天気はどうですか?」または「今日は雨が降りますか?」などのサンプル質問が含まれ、「今日は晴れます」という応答が出力される場合があります。ユーザーが質問すると、チャットボットはその意図と最も類似したサンプル質問を照合し、対応する応答を返します。

ただし、インテントベースのチャットボットには独自の問題があります。問題の 1 つは、特定の答えを得るには多くの特定の意図が必要になることです。たとえば、ユーザーが「ログインできません」、「パスワードを忘れました」、または「ログイン エラー」などの発話をした場合、たとえそれらがすべて非常に似ていたとしても、3 つの異なる回答と 3 つの異なる意図が必要になる場合があります。

GPT-3 がどのように役立つか

ここで GPT-3 が特に役立ちます。ナレッジ ベースのドキュメントを利用すると、それぞれの意図をより広範囲に拡張できます。ナレッジ ベースは、 分析や推論に使用できる構造化データおよび非構造化データとして保存された情報です 。ナレッジ ベースは、製品の使用方法を説明するドキュメントのコレクションで構成されている場合があります。

したがって、各インテントは、「ログインの質問」インテント、「購読方法」インテントなど、一連の質問と特定の回答ではなくドキュメントに関連付けられます。ユーザーがログインに関する質問をすると、「ログイン質問」ドキュメントをコンテキスト情報として GPT-3 に渡し、ユーザーの質問に対する特定の応答を生成できます。

このアプローチにより、処理する必要があるインテントの数が減り、各質問に対する回答をより適切に適合させることができます。さらに、インテントに関連付けられたドキュメントが異なるフロー (例: 「Web サイトへのログイン」のフローと「モバイル アプリへのログイン」のフロー) を説明している場合、GPT-3 は自動的にユーザーに詳細なコンテキストの取得を求めることができます。情報。 

ナレッジ ベース全体を GPT-3 に渡すことができないのはなぜですか?

現在、GPT-3 のような LLM モデルの最大のヒントの長さは約 4,000 トークン ( text-davinci-003モデルの場合) で、これは 2048 文字の漢字に相当します。これは長いですが、知識全体を養うには十分ではありません。ベースを単一のヒントの中央に配置します。LLM を使用してテキストを生成するには複数の計算が必要であり、ヒント サイズが大きくなると急速に増大するため、LLM には計算上の理由からヒントの最大数に制限があります。

将来の LLM では、テキスト生成機能を維持しながら、この制限がなくなる可能性があります。ただし、現時点では、この問題に対する設計上の解決策が必要です。

GPT-3を使用してチャットボット

チャットボットのプロセスは次の 2 つのステップに分けることができます。

まず、ユーザーの質問に対して適切な意図を選択する必要があります。つまり、ナレッジ ベースから正しいドキュメントを取得する必要があります。次に、正しいドキュメントを入手したら、GPT-3 を利用してユーザーに適切な回答を生成できます。その際には、良いきっかけを作る必要があります。

最初のステップは、セマンティック検索を使用して解決できます文変換ライブラリの事前トレーニング済みモデルを使用して、各ドキュメントに簡単にスコアを割り当てることができます。最高スコアのドキュメントがチャットボットの回答の生成に使用されます。

GPT-3 を使用して回答を

正しいドキュメントを取得したら、GPT-3 が回答を生成するために使用できるように、適切なヒントを作成する必要があります。temperature次の実験では、常に0.7 のモデルを使用しますtext-davinci-003

プロンプトを作成するには、次のコマンドを使用してみます。

  • ロールヒント: AI に特定の役割を割り当てるヒューリスティック手法。
  • 関連する知識ベース情報、つまりセマンティック検索ステップで取得されたドキュメント。
  • ユーザーとチャットボットの間で交換された最後のメッセージ。これは、コンテキスト全体を指定しないユーザーによって送信されたメッセージに便利です。それについては後の例で見ていきます。 GPT-3 を使用して会話を管理する方法の例を確認してください。
  • 最後に ユーザーからの質問です

文字ヒンティング手法を使用してヒンティングを開始しましょう。

As an advanced chatbot named Skippy, your primary goal is to assist users to the best of your ability.

次に、セマンティック検索ステップがナレッジ ベースから次のドキュメントを抽出するとします。すべてのドキュメントでは、Instagram に似た架空の製品である VideoGram がどのように機能するかについて説明していますが、対象となるのはビデオのみです。

プロンプトにこのように内容を追加できます。

As an advanced chatbot named Skippy, your primary goal is to assist users to the best of your ability.

START CONTEXT
Login to VideoGram from Website
1. Open your web browser and go to the VideoGram website.
2. Click on the “Login” button located in the top right corner of the page.
3. On the login page, enter your VideoGram username and password.
4. Once you have entered your credentials, click on the “Login” button.
5. You should now be logged in to your VideoGram account.

Login to VideoGram from Mobile App
1. Open the VideoGram app on your mobile device.
2. On the main page, tap the “Login” button located in the bottom right corner.
3. On the login page, enter your VideoGram username and password.
4. Once you have entered your credentials, tap the “Login” button.
5. You should now be logged in to your VideoGram account.
END CONTEXT

最後に、次の例のように、ダイアログとユーザーの質問をプロンプトの最後に追加する必要があります。

As an advanced chatbot named Skippy, your primary goal is to assist users to the best of your ability.

START CONTEXT
Login to VideoGram from Website
1. Open your web browser and go to the VideoGram website.
2. Click on the “Login” button located in the top right corner of the page.
3. On the login page, enter your VideoGram username and password.
4. Once you have entered your credentials, click on the “Login” button.
5. You should now be logged in to your VideoGram account.

Login to VideoGram from Mobile App
1. Open the VideoGram app on your mobile device.
2. On the main page, tap the “Login” button located in the bottom right corner.
3. On the login page, enter your VideoGram username and password.
4. Once you have entered your credentials, tap the “Login” button.
5. You should now be logged in to your VideoGram account.
END CONTEXT

SKIPPY: Hello, I’m Skippy! How can I help you?
USER: I can’t find the login button.
SKIPPY:

このヒントを GPT-3 に渡すと、次の生成された回答が得られました。

No problem! On the website, the login button is located in the top right corner of the page. On the mobile app, the login button is located in the bottom right corner. Let me know if you need any further assistance!

生成された回答の情報はナレッジ ベースのドキュメントから取得されたものであることに注意してください。

GPT-3 によるユーザーの問題の

「ログインできません」など、よりあいまいなユーザー入力を試してみましょう。ここに完全なヒントがあります。

As an advanced chatbot named Skippy, your primary goal is to assist users to the best of your ability.

START CONTEXT
Login to VideoGram from Website
1. Open your web browser and go to the VideoGram website.
2. Click on the “Login” button located in the top right corner of the page.
3. On the login page, enter your VideoGram username and password.
4. Once you have entered your credentials, click on the “Login” button.
5. You should now be logged in to your VideoGram account.

Login to VideoGram from Mobile App
1. Open the VideoGram app on your mobile device.
2. On the main page, tap the “Login” button located in the bottom right corner.
3. On the login page, enter your VideoGram username and password.
4. Once you have entered your credentials, tap the “Login” button.
5. You should now be logged in to your VideoGram account.
END CONTEXT

SKIPPY: Hello, I’m Skippy! How can I help you?
USER: Can’t login
SKIPPY:

GPT-3 はユーザーの質問をよりよく理解しようと試み、次のような回答を提供しました。

I’m sorry to hear that. Can you tell me if you are trying to login via the VideoGram website or mobile app?

次に、会話の全文を紹介します。見やすくするために、プロンプトの他の部分はここでは省略されています。

USER: Can’t login
SKIPPY: I’m sorry to hear that. Can you tell me if you are trying to login via the VideoGram website or mobile app?
USER: Mobile app
SKIPPY: OK, no problem. To login via the mobile app, open the VideoGram app on your mobile device. On the main page, tap the “Login” button located in the bottom right corner. On the login page, enter your VideoGram username and password. Once you have entered your credentials, tap the “Login” button. You should now be logged in to your VideoGram account. Please let me know if you need any further assistance.

GPT-3 は、正しいコンテキスト情報を持っている限り、曖昧さを解消できます。

GPT-3 を使用して回答を生成するときに考えられる問題

前の例はすべて正常に動作します。ただし、そのようなチャットボットが失敗する可能性がある方法がいくつかあります。

ログイン文書をコンテキストとして GPT-3 に渡して「モバイル アプリは無料ですか?」と尋ねると、通常、そのような情報が公開されているにもかかわらず、「はい、VideoGram モバイル アプリは無料でダウンロードして使用できます」のような答えが得られます。コンテキスト情報には含まれません。顧客サービスのチャットボットにとって、虚偽の情報を生成することは恐ろしいことです。

ユーザーの質問がコンテキスト内で回答できる場合、GPT-3 は誤った情報を生成することはほとんどありません。ユーザーの質問は通常、短く曖昧なテキストであるため、正しい文書を取得するために常にセマンティック検索ステップに依存できるわけではなく、常に偽情報の生成に対して脆弱です。

結論

GPT-3 は、挿入されたコンテキスト情報に基づいて一連の特定の質問に回答できる会話型チャットボットの作成に適しています。ただし、コンテキスト情報のみに依存してモデルに答えを生成させることは、モデルが幻覚を起こす傾向があるため困難です (つまり、新しい情報、おそらく間違っている情報を生成する)。偽情報の生成は、ユースケースに応じて深刻度が異なる問題です。

関連論文

  1. ナディーム、M.、ベスケ、A.、レディ、S. (2021)。StereoSet: 事前トレーニングされた言語モデルにおけるステレオタイプのバイアスを測定します。第 59 回計算言語学協会年次総会および自然言語処理に関する第 11 回国際共同会議の議事録 (第 1 巻: 長編論文)、5356 ~ 5371。https://doi.org/10.18653/v1/2021.acl-long.416 
  2. Ji、Z.、Lee、N.、Frieske、R.、Yu、T.、Su、D.、Xu、Y.、Ishii、E.、Bang、Y.、Madotto、A.、& Fung、P. (2008). (2022). 自然言語生成における幻覚に関する調査。ACM コンピューティングの調査。https://doi.org/10.1145/3571730 

おすすめ

転載: blog.csdn.net/keeppractice/article/details/131034382