マルチクラウド生成AI検索拡張生成(RAG)の導入
OCI Generative AIとOracle IntegrationをOracle Cloud InfrastructureやMicrosoft Azureなどのマルチクラウド・ソリューションで使用して、関連する組織データを問い合せ、状況に応じた回答を提供します。
RAGアーキテクチャでは、Oracle Integrationがデータ・オーケストレータの役割を果たし、関連するすべてのデータ・ソースが取得可能であることを保証できます。その後、Oracle Cloud Infrastructure Generative AI Agentは、そのデータを活用して、状況に応じた豊富な回答を提供します。
OCI GenAIエージェントは、取得したドキュメントを埋め込み、大規模言語モデル(LLM)を問い合せて生成されたレスポンスを強化することで、データを処理してコンテキスト・レスポンスを提供します。
そのため、どちらもデータ・ライフサイクルに関わっていますが、その役割は明確ですが、マルチクラウドRAGアーキテクチャの構築には補完的です。
このマルチクラウドRAGアプローチは、次のものを提供します。
- マルチクラウドの柔軟性: このアーキテクチャは、複数のクラウド・プラットフォーム(OCIとAzure)を統合し、企業内のデータ環境に適応できるようにします。
- 高パフォーマンス接続: Oracle Interconnect for Microsoft Azureは、クラウド環境間の高速で安全かつ信頼性の高いデータ転送を実現します。
- 動的なコンテンツ生成: エージェントは、異なるソースから最新の情報を引き出し、LLM応答が正確で関連性が高いことを確認します。
- 埋込みドキュメント検索: 埋込みとセマンティック検索を使用することで、OCI GenAIエージェントは、キーワード一致のみでなく、コンテキストに基づいてより深いインサイトを提供できます。
アーキテクチャ
このマルチクラウド・ソリューションは、Microsoft AzureとOracle Cloud Infrastructure(OCI)の両方からデータを取得し、Oracle Cloud Infrastructure Generative AI Agentsが幅広い最新の情報にアクセスできるようにします。
OCI GenAIエージェントとOracle Integrationは、高度にコンテキスト化された結果を提供するために、取得、拡張および生成(RAG)サービスをサポートします。
OCI GenAIエージェントは、ナレッジ・ベースまたはドキュメントから関連情報を取得して回答を生成することにより、生成AIを使用してユーザー問合せに応答することに特に重点を置いています。エージェントは、高度なAI技術、埋込みおよびドキュメント・チャンクを活用して関連するコンテンツを理解および生成することで、充実したコンテキスト対応のレスポンスを提供します。
- 取得: 通常は高度なハイブリッド検索を介して、字句検索とセマンティック検索を組み合せて、ナレッジ・ソースから関連データを抽出します。
- 拡張: 取得したデータを使用して問合せのコンテキストを提供し、生成AIモデルに必要な情報があることを確認します。
- 生成: 大規模言語モデル(LLM)を使用して、ユーザーの質問に対するコンテキスト・レスポンスを生成します。多くの場合、前述のステップで取得したデータによって拡張されます。
一方、Oracle Integrationは、様々なアプリケーションとシステムを接続する統合サービスを提供し、複数の環境にわたるデータ・フローのオーケストレーションを可能にします。
- 取得: 接続性エージェントを使用して、Azureまたはその他のハイパースケーラ上の様々なデータ・ソースまたはサービス(データベース、REST API、クラウド・ストレージなど)にプライベートに接続することで、様々なソースからのデータ取得を容易にします。
- オーケストレーション/拡張: ワークフローを調整し、複数のソースからのデータを統合し、事前構成済または動的変換によってデータをエンリッチすることでプロセスを強化します。
- データ・フローの管理: RAGエージェントとは異なり、Oracle Integrationは、データからのレスポンスの生成ではなく、システムとアプリケーション間のデータのスムーズな移動および変換を可能にし、関連するすべてのデータを異なるサービスで使用できるようにすることに重点を置いています。
機能領域 | OCI GenAIエージェント | Oracle Integration |
---|---|---|
目 的 | データを取得し、それを拡張し、LLMを使用して応答を生成することで、AI主導の応答を提供するように設計されています。 | 複数のアプリケーションにわたるデータを統合および調整するために設計されており、LLM主導型の生成機能なしでシームレスなデータ接続を実現します。 |
データ処理 | データを使用して、コンテキスト対応の方法で自然言語レスポンスを生成します。 | アプリケーション間のデータ・フローを処理し、LLMと同じ方法でコンテンツを生成することなく、システム間のブリッジとして機能します。 |
生成機能 | 生成AI機能を持ち、LLMを使用して会話型レスポンスやその他の出力を生成します。 | 生成AI機能はなく、サービス間のデータの接続、取得および変換に使用されます。 |
次の図は、アーキテクチャ内のデータ・フローを示しています。
マルチクラウド-genai-rag-process-oracle.zip
- ユーザーは、実装に応じてOracle Digital AssistantまたはOCI GenAIエージェントと対話して、ユーザーの問合せおよびプロンプトを提供します。
- Oracle Integrationは、データ・ソースからのプル、ドキュメントの取込みの処理、ダウンストリームでのユーザー・プロンプトの受渡しなど、様々なコンポーネント間のコールを編成します。
- データ・ソースは次のとおりです。
- Oracle Interconnect for Microsoft Azureは、ドキュメント・リポジトリ、Oracle Database@Azureなどについて、OCIとAzureの間で高帯域幅のリンクを提供します。
- ローカル・ファイル・リポジトリは、取り込むためのオンプレミス・ファイルまたはローカル・ファイルを提供します。
- Oracle Fusion Cloud Enterprise Resource PlanningなどのOCIサービス。
- Azure上のOracle管理サービス間でデータ共有を行う委任サブネット内のOracle Database@Azure。
- ドキュメントの取込み、チャンク化および埋込みプロセスは、様々な方法で実装できます。
- Oracle Integration (埋込みJavaScriptまたはカスタム・ライブラリを使用)はチャンク化を実行し、OCI生成AIをコールして埋め込みます。
- OCI Functionsは、ドキュメントを受信してチャンク化し、埋め込みのためにOCI生成AIを呼び出します。
- Oracle Autonomous Database 23aiは、ベクトル機能を使用してチャンク化と埋込みを実行します。
標準的な結果は、マルチクラウドのコンテキストで完全に管理されるチャンクテキストとベクトル埋め込みのセットです。
- ベクトルおよびチャンクは、Oracle Autonomous Database 23aiに格納されます:
- 一般的なアプローチは、埋込みをOracle Autonomous Database 23aiのベクトル索引に格納することです。
- チャンク・テキスト自体は、データベースCLOBに直接格納することも(迅速な取得のために)、OCI Object StorageまたはAzure Data Lakeでチャンク・テキストを指す参照として格納することもできます。
- OCI Object Storageでは、必要に応じて元のドキュメントを格納できますが、データベース内のベクトル・ストアを問い合せている場合は、必ずしもそこに埋込みを保持する必要はありません。
- ユーザーが質問を要求すると、OCI GenAIエージェント(またはデジタル・アシスタント)はOracle Autonomous Database 23aiをコールして、ユーザー・プロンプトの埋込みを使用してベクトル類似性検索を実行し、ベクトル類似性スコアに基づいて最適な一致チャンクを識別します。
- OCI生成AIは、質問やドキュメント・チャンクのための埋込みを生成し、LLMモデルを使用して応答を生成し、状況に応じた充実した回答を提供します。チャンク取得とLLMレスポンスも実装によって異なります。
- チャンク・テキストがデータベースに格納されている場合は、直接取得できます。
- 参照のみが格納されている場合、システムは、実際のチャンク・コンテンツをOCI Object Storage、Azure Data Lakeまたはその他のリポジトリから迅速にフェッチします。
- その後、関連するチャンクは、OCI生成AIのLLMに、コンテキストに富んだレスポンスを生成するためのユーザーの元のプロンプトとともに送信されます。
- 最終的な回答は、ユーザーが接続されているフロント・エンドに応じて、Oracle Digital AssistantまたはOCI GenAIエージェント・インタフェースによって返されます。
次の表に、このアーキテクチャを示します。
マルチクラウド-genai-rag-architecture-oracle.zip
- Microsoft Azureリージョン
Azureリージョンは、可用性ゾーンと呼ばれる1つ以上の物理Azureデータ・センターが存在する地理的領域です。リージョンは他のリージョンから独立しており、長距離の場合は(国または大陸にまたがって)分離できます。
AzureリージョンとOCIリージョンはローカライズされた地理的領域です。Oracle Database@Azureの場合、AzureリージョンはOCIリージョンに接続され、Azureの可用性ゾーン(AZ)はOCIの可用性ドメイン(AD)に接続されます。距離とレイテンシを最小限に抑えるために、AzureとOCIのリージョンのペアが選択されています。
- Microsoft Azureの可用性ゾーン
可用性ゾーンは、可用性が高くフォルト・トレラントになるように設計されたリージョン内の物理的に分離したデータ・センターです。アベイラビリティ・ゾーンは、他のアベイラビリティ・ゾーンへの低レイテンシ接続に十分近くなります。
- Microsoft Azure仮想ネットワーク
Microsoft Azure Virtual Network(VNet)は、Azureのプライベート・ネットワークの基本的な構成要素です。VNetを使用すると、Azure仮想マシン(VM)などの多くのタイプのAzureリソースが、相互に、インターネットおよびオンプレミス・ネットワークと安全に通信できます。
- Microsoft Azure委任サブネット
サブネット委任を使用すると、マネージド・サービス(特にPlatform-as-a-Service (PaaS)サービス)を仮想ネットワークに直接注入できます。委任サブネットは、外部PaaSサービスであっても、外部サービスが仮想ネットワーク・リソースとして機能するように、仮想ネットワーク内の外部管理対象サービスのホームにすることができます。
- Microsoft Azure Data Lake Storage
Data Lake Storageは、クラウドベースのエンタープライズ・データレイク・ソリューションです。大量のデータを任意の形式で格納し、ビッグ・データ分析ワークロードを促進するように設計されています。これを使用して、様々なフレームワークを使用して簡単にアクセスおよび分析できるように、任意のタイプおよび取込み速度のデータを1箇所で取得します。
- Microsoft Azure Synapse Analytics
Azure Synapse Analyticsは、データ ストレージと処理のための一元化されたサービスと、一般的に使用されるデータ ストア、処理プラットフォーム、および視覚化ツールを統合できる拡張可能なリンク サービス アーキテクチャを組み合わせています。
Oracle Cloud Infrastructureでは、次のコンポーネントが提供されます:
- リージョン
Oracle Cloud Infrastructureリージョンとは、可用性ドメインと呼ばれる1つ以上のデータ・センターを含む、ローカライズされた地理的領域です。リージョンは他のリージョンから独立しており、長距離の場合は(国または大陸にまたがって)分離できます。
- 可用性ドメイン
可用性ドメインは、リージョン内の独立したスタンドアロン・データ・センターです。各可用性ドメイン内の物理リソースは、他の可用性ドメイン内のリソースから分離されているため、フォルト・トレランスが提供されます。可用性ドメインどうしは、電力や冷却、内部可用性ドメイン・ネットワークなどのインフラを共有しません。そのため、ある可用性ドメインでの障害は、リージョン内の他の可用性ドメインに影響を与えないでください。
- 仮想クラウド・ネットワーク(VCN)およびサブネット
VCNは、Oracle Cloud Infrastructureリージョンで設定する、カスタマイズ可能なソフトウェア定義ネットワークです。従来のデータ・センター・ネットワークと同様に、VCNsではネットワーク環境を制御できます。VCNには重複しない複数のCIDRブロックを含めることができ、VCNの作成後にそれらを変更できます。VCNをサブネットにセグメント化して、そのスコープをリージョンまたは可用性ドメインに設定できます。各サブネットは、VCN内の他のサブネットと重複しない連続した範囲のアドレスで構成されます。サブネットのサイズは、作成後に変更できます。サブネットはパブリックにもプライベートにもできます。
- ルート表
仮想ルート表には、通常ゲートウェイを介して、サブネットからVCN外部の宛先にトラフィックをルーティングするルールが含まれます。
- セキュリティ・リスト
サブネットごとに、サブネット内外で許可する必要があるトラフィックのソース、宛先およびタイプを指定するセキュリティ・ルールを作成できます。
- 生成AI
Oracle Cloud Infrastructure Generative AIは、テキスト生成、要約、セマンティック検索などの幅広いユース・ケースをカバーする、最先端のカスタマイズ可能な大規模言語モデル(LLM)のセットを提供する、完全に管理されたOCIサービスです。プレイグラウンドを使用して、すぐに使用できる事前トレーニング済モデルを試すか、専用AIクラスタ上の独自のデータに基づいて独自のファインチューニング済カスタム・モデルを作成およびホストします。
- 統合
Oracle Integrationは、クラウドとオンプレミスのアプリケーションの統合、ビジネス・プロセスの自動化、およびビジュアル・アプリケーションの開発を可能にする、完全に管理された事前構成済の環境です。SFTP準拠のファイル・サーバーを使用してファイルを格納および取得し、数百のアダプタおよびレシピのポートフォリオを使用してOracleおよびサードパーティ・アプリケーションに接続することで、B2B取引パートナとドキュメントを交換できます。
- オブジェクト・ストレージ
OCIオブジェクト・ストレージでは、データベースのバックアップ、分析データ、イメージやビデオなどのリッチ・コンテンツなど、あらゆるコンテンツ・タイプの構造化データおよび非構造化データにすばやくアクセスできます。インターネットまたはクラウド・プラットフォーム内から直接、データを安全かつセキュアに格納できます。パフォーマンスやサービスの信頼性を低下させることなく、ストレージを拡張できます。
迅速、即時、頻繁にアクセスする必要があるホット・ストレージには、標準ストレージを使用します。長期間保持し、ほとんどまたはほとんどアクセスしないコールド・ストレージには、アーカイブ・ストレージを使用します。
- 関数
Oracle Cloud Infrastructure Functionsは、フルマネージドのマルチテナント、スケーラビリティの高いオンデマンドのFunctions-as-a-Service (FaaS)プラットフォームです。これは、Fn Projectのオープン・ソース・エンジンによって機能します。OCI Functionsでは、コードをデプロイし、直接コールするか、イベントに応答してトリガーできます。OCI Functionsは、Oracle Cloud Infrastructure RegistryでホストされているDockerコンテナを使用します。
- 「アナリティクス」
Oracle Analytics Cloudは、スケーラブルでセキュアなパブリック・クラウド・サービスであり、データ準備、ビジュアライゼーション、エンタープライズ・レポート、拡張分析、自然言語処理および生成のための最新のAI駆動のセルフサービス分析機能をビジネス・アナリストに提供します。Oracle Analytics Cloudには、迅速なセットアップ、簡単なスケーリングとパッチ適用、自動ライフサイクル管理など、柔軟なサービス管理機能も用意されています。
- デジタル・アシスタント
Oracle Digital Assistantは、ユーザーのためにデジタル・アシスタントを作成およびデプロイできるプラットフォームです。Oracle Digital Assistantを使用すると、テキスト、チャットおよび音声インタフェースを介してビジネス・アプリケーション用のAI駆動インタフェース(またはチャットボット)を作成できます。各デジタル・アシスタントには、ユーザーが自然言語会話で様々なタスクを完了できるように、1つ以上の専門スキルのコレクションがあります。たとえば、個々のデジタル・アシスタントには、在庫の追跡、タイム・カードの送信、経費精算書の作成など、特定のタイプのタスクに焦点を当てたスキルがある場合があります。
- Autonomous Database
Oracle Autonomous Databaseは、トランザクション処理およびデータ・ウェアハウス・ワークロードに使用できる、完全に管理された事前構成済のデータベース環境です。ハードウェアの構成や管理、ソフトウェアのインストールを行う必要はありません。Oracle Cloud Infrastructureは、データベースの作成、バックアップ、パッチ適用、アップグレードおよびチューニングを処理します。