生成AIやChatGPTなど、「AI」に関する言葉が飛び交うようになってきました。
生成AIの1つに「RAG」があるのをご存知でしょうか?
LLMと呼ばれる「大規模言語モデル」が浸透している昨今、企業での利用においては社内データなどを学習した特化型LLMシステム(RAG)が採用されるケースも増えています。
そこで今回は、そんな「RAG」について基本的なことから、「RAG」に使われている技術の紹介、実際の活用例をご紹介いたします。
RAGとは「Retrieval-Augmented Generation」の略で、日本語では「検索拡張生成」を意味します。
簡単に言うと、大量のデータの中から関連する情報を取り出し、その情報を基に新たな文章を生成する技術のことです。
質問した結果を返してくれるAIと聞くと、「ChatGPT」を思い浮かべるかもしれません。
ChatGPTやGoogleが提供しているGeminiなどは大規模言語モデル(LLM)を活用した生成AIサービス*です。
ChatGPTやGoogleが提供しているGeminiとRAGの大きな違いは、プライベートデータソースまたは独自のデータソースからの情報を加味するのかどうかにあります。
生成AIは「ネット上にある情報から回答を作成」しますが、その中でもRAGは「ネット上の情報に加え、独自のデータソースからなど、クローズドな情報からも回答を作成」します。
またRAGにおいては、パブリックな情報を遮断し、クローズドな情報のみから回答を作成させることも可能です。
*生成AIについてはこちらの「ビジネスにAIをどう取り入れる? 生成AIの活用シーンとは」をご覧ください。
次に、RAGを理解するうえで欠かせない自然言語処理(NLP)について説明します。
自然言語処理とは、人間が日常的に使っている自然言語をコンピュータに処理させる技術で、コンピュータに「ことば」を教える分野といわれています。
自然言語の対義語として「人工言語」があります。
人工言語には、プログラミング言語やHTMLなどWebサイトに使用されているマークアップ言語が含まれます。
かつて、コンピュータではこの人工言語しか使えませんでしたが、自然言語処理の登場でコンピュータに自然言語を処理させることができるようになりました。
自然言語処理を活用した有名なものとしては、機械に話しかけるとその処理を機械が行ってくれるスマートスピーカーなどがあります。
ここでは、RAGの仕組みをご紹介いたします。
RAGの仕組みは、「学習」と「回答」フェーズに分けられます。
まずは、学習フェーズです。
RAGでは、事前に学習済みのパブリックなデータとは別に独自の「データベース」も用意します。
そのデータベースにデータを入れ込み、同くじの情報を学習させます。
ユーザーから質問を受けた際には、その質問に関連する情報を、パブリックなデータに加え独自のデータベース内からも利用します。
次に回答フェーズです。
回答は「検索」と「生成」の2段階に分けて作成されます。
ユーザーが入力したプロンプト(質問/指示)に対してデータベース内を検索します。
この際、キーワードの一致で情報を抽出するのではなく、プロンプトの文脈や意味も考慮し、関連性の高い情報をピックアップできるのが自然言語処理を活用したRAGの特長です。
そして、抽出した情報をもとにわかりやすく綺麗な文章を生成し、回答として返します。
RAGでは回答に独自のデータを加味することができるため、例えば、自社の有給の付与日は?昇給日は?などかなり狭い範囲での質問にも対応できます。
今回は「RAG」についてご紹介いたしました。
RAGは、ユーザーが投げかけた質問に対して、ネット上にある情報だけでなく、内部的に持っているデータベース内の情報をも織り交ぜ、回答してくれる生成AIです。
クールビズはいつから?代休が取れる条件は?など一般公開されていないクローズドな質問に対しても正しく回答することができます。
社内の窓口をRAGに置き換えたり、顧客からの問い合わせに対して過去に類似したものがないかをRAGに聞いたりと、社内の情報をうまく活用し、業務の効率化を狙うことができます。
現時点ではRAG技術はまだまだ進化の途中ですが、リアルタイムでのデータ処理やより高度な自然言語処理での技術発展により、さらなる活躍が期待できるでしょう。