すべてのプロダクト
Search
ドキュメントセンター

Microservices Engine:AI RAG (検索拡張生成)

最終更新日:Mar 12, 2026

ai-rag プラグインは、Alibaba Cloud DashVector と Qwen を接続することで、クラウドネイティブゲートウェイに検索拡張生成 (RAG) を追加します。大規模言語モデル (LLM) のトレーニングデータのみに依存するのではなく、このプラグインはリクエスト時にベクトルデータベースから関連ドキュメントを取得してプロンプトに挿入することで、実際のデータに基づいた応答を生成します。

ゲートウェイレベルで RAG を処理することで、各アプリケーションに埋め込むのではなく、インフラストラクチャで取得ロジックを一元化できます。これにより、RAG ワークフローが簡素化され、ベクトルデータベースへのアクセスがゲートウェイに限定され、プラットフォームチームはアプリケーションコードの変更を必要とせずに構成を管理できます。

仕組み

RAG ワークフローには、データ準備 (オフライン) と取得 + 生成 (リクエストごと) の 2 つのフェーズがあります。

データ準備 (オフライン)

  1. ソースドキュメント (PDF、記事、ナレッジベースのエントリ) からテキストを抽出します。

  2. テキストを意味的に意味のあるチャンクに分割します。

  3. 各チャンクをベクトル埋め込みに変換し、DashVector コレクションに保存します。

取得と生成 (リクエストごと)

  1. ユーザーがクラウドネイティブゲートウェイにクエリを送信します。

  2. ai-rag プラグインは、クエリをベクター埋め込みに変換します。

  3. ベクトル距離のしきい値でフィルターされた、最も関連性の高い top-k ドキュメントチャンクを DashVector で検索します。

  4. 取得したチャンクをプロンプトに挿入し、強化されたプロンプトを Qwen に転送します。

  5. Qwen は、取得したコンテキストと自身の知識の両方に基づいて応答を生成します。

RAG architecture

実行時属性

属性
実行ステージdefault stage
実行優先度400

構成

Qwen (LLM) と DashVector (ベクトルデータベース) の 2 つのバックエンドサービスへの接続を構成します。すべてのパラメーターは必須です。

Qwen (LLM) パラメーター

パラメーター説明
dashscope.apiKey文字列Qwen で認証するための API キー。
dashscope.serviceFQDN文字列ゲートウェイのサービスレジストリ内の Qwen サービスの完全修飾ドメイン名。
dashscope.servicePortintQwen サービスのポート。
dashscope.serviceHost文字列Qwen にアクセスするためのドメイン名 (HTTP Host ヘッダーで使用)。

DashVector (ベクトルデータベース) パラメーター

パラメーター説明
dashvector.apiKey文字列DashVector で認証するための API キー。
dashvector.serviceFQDN文字列ゲートウェイのサービスレジストリ内の DashVector サービスの完全修飾ドメイン名。
dashvector.servicePort整数DashVector サービスのポート。
dashvector.serviceHost文字列DashVector にアクセスするためのドメイン名 (HTTP Host ヘッダーで使用)。
dashvector.collection文字列検索する DashVector コレクションの名前。
dashvector.topk整数ベクトル検索中に取得する上位一致ドキュメントチャンクの数。値が大きいほどより多くのコンテキストを提供しますが、レイテンシーが増加します。
dashvector.threshold浮動許可される最大ベクトル距離。この値を超えるベクトル距離を持つドキュメントはフィルターされます。値が小さいほどより正確な一致を返し、値が大きいほどより広範な結果を返します。
dashvector.field文字列ドキュメントテキストを格納する DashVector コレクション内のフィールド名。
説明

プラグインが有効で、トレーシング分析がアクティブな場合、ID を取得する ai-rag プラグインによって取得されたドキュメント ID が、各 スパン属性 フィールドに追加されます。これにより、特定の応答に影響を与えたドキュメントをトレースできます。

以下の YAML は、完全な ai-rag プラグイン構成を示しています。

dashscope:
  apiKey: <your-dashscope-api-key>
  serviceFQDN: dashscope
  servicePort: 443
  serviceHost: dashscope.aliyuncs.com
dashvector:
  apiKey: <your-dashvector-api-key>
  serviceFQDN: dashvector
  servicePort: 443
  serviceHost: <your-dashvector-endpoint>
  collection: <your-collection-name>
  topk: 1
  threshold: 0.4
  field: raw

以下のプレースホルダーを実際の値に置き換えてください。

プレースホルダー説明
<your-dashscope-api-key>Alibaba Cloud コンソールからの DashScope API キーsk-xxxxxxxxxxxxxxxx
<your-dashvector-api-key>Alibaba Cloud コンソールからの DashVector API キーsk-xxxxxxxxxxxxxxxx
<your-dashvector-endpoint>ご利用の DashVector クラスターのエンドポイントvrs-cn-xxxxxxx.dashvector.cn-hangzhou.aliyuncs.com
<your-collection-name>DashVector 内のターゲットコレクションの名前my_knowledge_base

RAG の動作: 適用前と適用後

以下の例では、CEC-Corpus データセット —— 332件のラベル付き緊急ニュースレポートをベクトル化し、DashVector コレクションに格納したもの —— を使用します。

クエリ: 「海南での追突事故はどこで発生しましたか?理由は何ですか?死傷者は何人ですか?」

ai-rag なし -- LLM には外部コンテキストがなく、回答できません:

申し訳ありません。AI モデルとして、ニュースイベントに関する特定の情報 (場所、原因、死傷者など) をリアルタイムで取得および更新することはできません。このような特定のイベントについては、正確な情報のために最新のニュースレポートまたは公式発表をご参照ください。また、主要なメディアウェブサイトにアクセスしたり、ニュースアプリケーションを使用したり、関連政府機関の発表をフォローしたりして、最新のニュースを入手することもできます。

ai-rag では -- LLM は関連ドキュメントを取得し、根拠に基づいた応答を返します:

海南での追突事故は、海文高速道路の文昌から海口まで 37 キロメートルの地点で発生しました。事故の具体的な原因については、当時、交通警察部門がまだ調査中でした。死傷者は、死亡者 1 名 (運転手が現場で死亡)、負傷者 8 名 (子供 2 名、大人 6 名を含む) でした。負傷者は全員救助され、治療のため病院に搬送されました。

次のステップ

  • クラウドネイティブゲートウェイで利用可能な他の AI 関連プラグインを探索します。