LlamaIndex と ChatGPT を使用したコードレス検索拡張生成 (RAG)

LlamaIndex と ChatGPT を使用したコードレス検索拡張生成 (RAG)

翻訳者 | 李睿

レビュー | Chonglou

検索拡張生成 (RAG) は、大規模言語モデル (LLM) を使用するための重要なツールです。 RAG を使用すると、LLM は外部ドキュメントを応答に組み込むことができ、ユーザーのニーズにより密接に対応できるようになります。この機能は、特に事実が重要である場合など、従来 LLM の使用が躊躇されてきた分野で特に有益です。

ChatGPT や同様の LLM が導入されて以来、多数の RAG ツールとライブラリが登場しました。 RAG の仕組みと、ChatGPT、Claude、または選択した LLM で RAG を使い始める方法について知っておくべきことを説明します。

RAGが提供する特典

開発者が大規模な言語モデルと対話する場合、モデルはトレーニング データに埋め込まれた知識を利用して応答を作成します。ただし、トレーニング データのサイズがモデルのパラメータを超えることが多く、応答が完全に正確ではない可能性があります。さらに、トレーニングで使用される情報の多様性により、LLM が詳細を混乱させ、一見もっともらしいが誤った回答を提供する可能性がある、「幻覚」と呼ばれる現象が発生します。

場合によっては、開発者は、最近公開されたニュース記事、学術論文、または会社の独自の文書など、トレーニング データに含まれていなかった情報を LLM で使用することを望むことがあります。ここで RAG が重要な役割を果たします。

RAG は、応答を生成する前に LLM に関連情報を提供することでこれらの問題に対処します。これには、外部ソースからドキュメントを取得し (名前の由来)、その内容を会話に挿入して LLM にシナリオを提供することが含まれます。

このプロセスにより、モデルの精度が向上し、提供されたコンテンツに基づいて応答を作成できるようになります。実験により、RAG は「幻覚」を大幅に軽減できることが示されました。また、トレーニング データセットに含まれていない最新情報や顧客固有の情報を必要とするアプリケーションでも有益であることが証明されています。

簡単に言えば、標準 LLM と RAG 対応 LLM の違いは、2 人の人が質問に答えることに例えることができます。標準の LLM は記憶から応答する人のようなものですが、RAG 対応の LLM は、ドキュメントを渡され、その内容に基づいて質問を読んで回答できる別の人のようなものです。

RAGの仕組み

RAG の動作原理は単純です。クエリに関連する 1 つ以上のドキュメントを識別し、それらをプロンプトに組み込み、それらのドキュメントに基づいたモデルの応答の説明が含まれるようにプロンプ​​トを変更します。

開発者は、ドキュメントの内容をプロンプトにコピーして貼り付け、そのドキュメントに基づいて応答を作成するようにモデルに指示することで、RAG を手動で実装できます。

RAG Pipeline はこのプロセスを自動化して効率を向上させます。まず、ユーザーのプロンプトをドキュメントのデータベースと比較し、トピックに最も関連性の高いプロンプトを取得します。次に、RAG パイプラインはそれらのコンテンツをプロンプトに統合し、LLM がドキュメントのコンテンツに準拠していることを確認するための指示を追加します。

RAG パイプラインには何が含まれますか?

図1 埋め込みとベクターデータベースを使用した関連文書の検索

RAG は直感的な概念ですが、それを実行するには複数のコンポーネントをシームレスに統合する必要があります。

まず、応答を生成するための主要言語モデルが必要です。これに加えて、ドキュメントやユーザープロンプトを、その意味内容を表す数字のリスト、つまり「埋め込み」にエンコードするための埋め込みモデルも必要です。

次に、これらのドキュメント埋め込みを保存し、ユーザークエリを受信するたびに最も関連性の高いドキュメント埋め込みを取得するためのベクトル データベースが必要です。場合によっては、ランキング モデルは、ベクター データベースによって提供されるドキュメントの順序をさらに絞り込むのにも役立ちます。

一部のアプリケーションでは、開発者はユーザープロンプトを複数の部分に分割する追加のメカニズムを組み込むことが必要になる場合があります。これらの各部分には独自の埋め込みとドキュメント化が必要であり、生成される応答の精度と関連性が向上します。

コードなしでRAGを始める方法

図 2 コードレス RAG と LlamaIndex および ChatGPT の比較

LlamaIndex は最近、開発者がコーディングをほとんどまたはまったく必要とせずに基本的な RAG アプリケーションを開発できるオープン ソース ツールをリリースしました。現在は 1 つのファイルでの使用に制限されていますが、将来の機能強化では複数のファイルとベクター データベースのサポートが含まれる可能性があります。

RAG と呼ばれるこのプロジェクトは、Streamlit Web アプリケーション フレームワークと、RAG に特に役立つ強力な Python ライブラリである LlamaIndex に基づいて構築されています。開発者が GitHub と Python に精通している場合、インストールは簡単です。リポジトリをクローンし、インストール コマンドを実行して、README で指定されている構成ファイルに OpenAI API トークンを追加するだけです。

現在、RAG は OpenAI モデルで動作するように構成されています。ただし、コードを変更して、Anthropic Claude、Cohere モデル、または Llama 2 などのサーバーでホストされているオープン ソース モデルなどの他のモデルを使用することもできます。 LlamaIndex はこれらすべてのモデルをサポートしています。

アプリケーションを最初に実行するには、RAG エージェントを設定する必要があります。これには、ファイル、ファイルを分割するチャンクのサイズ、ヒントごとに取得するチャンクの数などの設定を決定することが含まれます。

ブロックは RAG において重要な役割を果たします。本や複数ページの研究論文などの大きなファイルを扱う場合は、500 トークンなどの扱いやすいチャンクに分割する必要があります。これにより、RAG エージェントはヒントに関連するドキュメントの特定の部分を見つけることができます。

これらの手順を完了すると、アプリケーションは RAG エージェントの構成ファイルを作成し、それを使用してコードを実行します。 RAG は、拡張検索を開始して構築するための貴重なツールです。完全なガイドラインは関連ウェブサイトでご覧いただけます。

原題: LlamaIndex と ChatGPT を使用したコード不要の検索拡張生成 (RAG)、著者: Ben Dickson

リンク: https://bdtechtalks.com/2023/11/22/rag-chatgpt-llamaindex/

<<: 

>>: 

ブログ    
ブログ    

推薦する

4 大検索大手は人工知能に夢中です。最も有望なのはどれだと思いますか?

近年、世界の科学技術分野で最もホットな言葉は「人工知能」です。グーグル、百度、ヤンデックス、ネイバー...

データマイニング: 機械学習手法に基づく POI カテゴリ推奨アルゴリズム

序文Meituan マーチャント データ センター (MDC) には、調整および監査済みの POI ...

ノーコード プラットフォーム トップ 8: 2020 年に見逃せない機械学習プラットフォーム

この記事は、公開アカウント「Reading the Core」(ID: AI_Discovery)か...

ディープマインドAIは人間に対して84%の勝率を誇り、ウエスタンアーミーチェスで初めて人間の専門家のレベルに到達した。

DeepMind はゲーム AI の分野で新たな成果を上げました。今回はチェスです。 AI ゲーム...

ブラウザで TensorFlow を使用するにはどうすればいいですか?

[[341102]] [51CTO.com クイック翻訳] TensorFlow を使用すると、少...

...

認知AIの台頭:2025年にAIは質的に飛躍する

[[441939]] AIの概念が初めて提唱されたのは1956年なので、60年以上の歴史があります。...

MIT とハーバード大学が協力して、ニューラル ネットワークが自身の強みを理解する方法を研究しています。

ニューラルネットワークはますます使用されるようになっています。 [[357551]]医療診断であれ、...

ガートナーは、中国企業が平均5つ以上のAIユースケースを展開しているというレポートを発表した。

最近、ガートナーは中国企業が人工知能プロジェクトをプロトタイプから生産へと移行していることを示す最新...

人工知能:現在も将来も有望

最近、2020年世界人工知能会議が中国上海で開催されました。各国の専門家らがオンラインで議論し、人工...

AIが都市の交通管理を改善する方法

交通分野における人工知能 (AI) の応用は、車両とインフラのより効果的で的を絞った使用に向けたイノ...

...

ブロックチェーンのコンセンサスアルゴリズムとは何ですか?

所有権や金額などの取引の基本的な特性は、基本的な数学的特性に基づいて機能する公開鍵暗号化のおかげで簡...

Tech Neo 9月号:アルゴリズムに基づくIT運用・保守

51CTO.com+プラットフォームは、オリジナルの技術コンテンツの選択と絶妙なレイアウトを通じて、...

AIは役に立たないなんて誰が言ったのでしょうか?パンデミックの間、AIは人類のために多くのことを行ってきました...

[[314062]] 10日以上も経過したが、流行は収束の兆しを見せず、事態はますます深刻化してい...