検索拡張生成(RAG)によるAIの選択

Select AI with RAGは、セマンティック類似性検索を使用して、指定されたベクトル・ストアからコンテンツを取得することで、自然言語プロンプトを強化します。これにより、特定の最新のコンテンツを使用して幻覚を軽減し、プロンプトに対してより関連性の高い自然言語応答を提供します。

Select AIは、RAG(Retrieval Augmented Generation)プロセスを自動化します。この手法では、AIベクトル検索を使用してエンタープライズ・ソースからデータを取得し、指定した大規模言語モデル(LLM)のユーザー・プロンプトを拡張します。エンタープライズ・データ・ストアからの情報を活用することで、RAGは幻覚を軽減し、根拠のある応答を生成します。

RAGは、ベクトル索引のAIベクトル検索を使用して、指定された質問のセマンティックに類似したデータを検索します。ベクトル・ストアはベクトル埋込みを処理します。ベクトル埋込みは、テキスト、イメージ、オーディオなどの様々なデータ・ポイントの数学的表現です。これらの埋込みにより、データの意味が取得され、効率的な処理と分析が可能になります。ベクトル埋込みおよびAIベクトル検索の詳細は、AIベクトル検索の概要を参照してください。

Select AIは、ベクトル埋込みを使用した類似性検索のために、Oracle Autonomous Database 23aiで使用可能なAIベクトル検索と統合されます。

トピック

ベクトル・ストアの構築

Select AIは、入力ドキュメント(PDF、DOC、JSON、XML、HTMLなど)をオブジェクト・ストアからプレーン・テキストに変換することで、ベクトル・ストアの作成と移入を自動化します。Oracle Textでは、約150種類のファイル・タイプがサポートされています。サポートされているすべてのドキュメント形式の完全なリストは、サポートされているドキュメント形式を参照してください。

Select AIは、ドキュメントをチャンクに自動的に処理し、埋込みを生成し、指定されたベクトル・ストアに格納し、新しいデータが到着するとベクトル索引を更新します。

Select AI RAGでオブジェクト・ストレージからの入力を使用する方法を次に示します:

  1. 入力: データは、最初にオブジェクト・ストレージに格納されます。
  2. Oracle Autonomous Databaseは、入力データまたはドキュメントを取得し、チャンク化して、チャンクを埋込みモデルに送信します。
  3. 埋込みモデルはチャンク・データを処理し、ベクトル埋込みを返します。
  4. ベクトル埋込みは、RAGで使用するためにベクトル・ストアに格納されます。コンテンツが追加されると、ベクトル索引が自動的に更新されます。

RAGは、ユーザーの質問に回答するために、エンタープライズ・データベースから関連する情報を取得します。この情報は、ユーザー・プロンプトとともに、指定された大規模言語モデルに提供されます。Select AIは、この追加の企業情報を使用してプロンプトを強化し、LLMの応答を改善します。RAGは、ベクトル・ストアからの最新の企業情報を使用して、応答品質を向上させることができます。



次のようにAI実装RAGを選択します。
  1. 入力: ユーザーは、Select AI narrateアクションを使用して質問(プロンプトを指定)します。

  2. Select AIは、AIプロファイルで指定された埋込みモデルを使用して、プロンプトのベクトル埋込みを生成します。

  3. ベクトル検索索引では、質問のベクトル埋込みを使用して、索引付けされた顧客のエンタープライズ・データ(ベクトル・ストアの検索)から一致するコンテンツを検索します。

  4. ベクトル検索では、Autonomous Databaseインスタンスへの入力に似た上位Kテキストが返されます。
  5. 次に、Autonomous Databaseは、ユーザーの質問を含む上位Kの問合せ結果をLLMに送信します。
  6. LLMは、Autonomous Databaseインスタンスに対するレスポンスを返します。
  7. Autonomous Database Select AIは、ユーザーにレスポンスを提供します。

DBMS_CLOUD_AIを使用したベクトル索引の作成および管理

DBMS_CLOUD_AIパッケージを使用して、ベクトル索引を作成および管理し、ベクトル・データベースJSONパラメータを構成します。

資格証明を作成し、ベクトル・データベースおよびAIプロバイダへのネットワーク・アクセスを提供すると、Autonomous DatabaseインスタンスはAIプロファイルを使用してLLMへのアクセスを構成します。Select AI文での設定および使用の完全な例は、「例: RAGでのSelect AIの設定および使用」を参照してください。
ノート

表データまたはベクトル検索ドキュメントをLLMに送信しない場合、管理者権限を持つユーザーは、特定のデータベースのすべてのユーザーに対してそのようなアクセスを無効にできます。これにより、RAGのnarrateアクションが無効になります。

DBMS_CLOUD_AIパッケージを使用して、「AIプロバイダおよびLLMの選択」にリストされているプロバイダのAIプロファイルを構成できます。

関連項目:

データベース内トランスフォーマ・モデルの使用

Select AI RAGを使用すると、Oracle Database 23aiインスタンスのデータベースにインポートされた事前トレーニング済ONNXトランスフォーマ・モデルを使用して、ドキュメント・チャンクおよびユーザー・プロンプトから埋込みベクトルを生成できます。

事前トレーニング済ONNXモデルのOracle Database 23aiインスタンスへのインポートについてさらに学習するには、次を参照してください
ノート

インポートされたデータベース内トランスフォーマ・モデルで「AI RAGの選択」を使用するには、事前トレーニング済のONNX形式トランスフォーマ・モデルをOracle Database 23aiインスタンスにインポートする必要があります。サポートされているAIプロバイダの他のトランスフォーマ・モデルを使用することもできます。

この機能を調べるには、「例: データベース内トランスフォーマ・モデルを使用したAIの選択」を参照してください。

Select AI RAGのメリット

LLMで使用されるソースを確認することで、クエリを簡素化し、現在のデータで応答精度を高め、透明性を確保します。

Select AI RAGには、次の利点があります。
  • データのクエリを簡素化し、応答精度を向上: ユーザーは自然言語を使用してエンタープライズ・データをクエリし、エンタープライズ・データから詳細なコンテキストをLLMに提供して、より正確で関連性の高い応答を生成し、LLMの幻覚のインスタンスを減らすことができます。

  • 最新の情報: ベクトル・ストアを使用して現在のエンタープライズ情報へのLLMアクセスを提供することで、静的データ・セットでトレーニングされたLLMのコストと時間のかかる微調整が不要になります。

  • シームレスな統合: Oracle AI Vector Searchと統合して、合理化されたデータ処理とパフォーマンスの向上を実現します。

  • 自動化されたデータ・オーケストレーション: フルマネージド・ベクトル索引パイプラインでオーケストレーション・ステップを自動化し、新しいデータを効率的に処理します。

  • 理解しやすいコンテキスト結果: ベクトル・ストアからLLMで使用されるソースにアクセスして取得し、結果の透明性と信頼性を確保します。統合とアプリケーション開発を容易にするために、データを自然言語テキストまたはJSON形式で表示および抽出します。