Retrieval-Augmented Generation (RAG) は、大規模言語モデル (LLM) をドメイン固有の Q&A 向けに強化します。これは、ユーザーのクエリが LLM に送信される前に、外部ナレッジベースから関連情報を取得してクエリを拡張することで実現されます。PAI-EAS は、LLM とベクトルデータベースの柔軟なオプションを使用して RAG チャットシステムを迅速に構築およびデプロイできるシナリオベースのデプロイ方法を提供します。このトピックでは、RAG チャットサービスをデプロイし、そのモデル推論を検証する方法について説明します。
適用範囲
このトピックは RAG バージョン 0.4.x に適用されます。以前のバージョンについては、「PAI-RAG (v0.3.x)」をご参照ください。
ステップ 1: RAG サービスのデプロイ
-
PAI コンソールにログインします。ページ上部でリージョンを選択します。次に、目的のワークスペースを選択し、[Elastic Algorithm Service (EAS)] をクリックします。
Inference Service タブで、Deploy Service をクリックします。Scenario-based Model Deployment セクションで、RAG-based Smart Dialogue Deployment をクリックします。
RAG-based LLM Chatbot Deployment ページで、以下の主要パラメーターを設定します:
Version:RAG サービスのみをデプロイするには、[LLM Decoupled Deployment] を選択します。Canary Release
説明RAG サービスと LLM を同じインスタンスにデプロイすることは、大規模なモデルではかなりのリソースが必要になるため、小規模なモデルにのみ推奨されます。
RAG Version:
pai-rag:0.4.3。Resource Information:
Resource Type: パブリックリソースを選択します。
Deployment:RAG サービス自体は、リソースをほとんど消費しません。
ecs.c7.2xlargeやecs.c7.4xlargeなど、少なくとも 8 vCPU と 16 GB のメモリを備えた仕様を選択することをお勧めします。
ベクトルデータベース設定:
Vector Database Type: クイックスタート用にローカルベクトルデータベースを構築するには、FAISS を選択します。本番環境では、本番環境に対応したベクトルデータベースの使用を推奨します。構成の詳細については、「Alibaba Cloud ベクトルデータベースを使用する」をご参照ください。
OSS Path: 現在のリージョンで既存の OSS ストレージディレクトリを選択して、アップロードしたナレッジベースファイルを保存します。ストレージパスが利用できない場合は、「コンソールでのクイックスタート」を参照して作成してください。
VPC: Alibaba Cloud Model Studio のモデルサービスにパブリックインターネット経由でアクセスするには、VPC を構成し、パブリック NAT ゲートウェイを有効にし、SNAT エントリを構成する必要があります。詳細については、「EAS サービスがパブリックインターネットにアクセスできるようにする」をご参照ください。
パラメーターを設定した後、Deploy をクリックします。サービスデプロイには通常、約5分かかります。Service Status が Running に変わると、デプロイは完了です。
ステップ 2: ナレッジベース Q&A のクイックスタート
Inference Services タブで、デプロイした RAG サービスを見つけ、その詳細ページを開きます。右上隅にあるWeb applicationsをクリックして Web UI を開きます。

2.1 大規模言語モデルの構成
左下隅にある [設定項目] > [モデル] をクリックして、モデル構成ページを開きます。このセクションでは、Alibaba Cloud Model Studio の qwen3-8b モデルを例として使用します。モデル構成の詳細については、「モデルの構成」をご参照ください。
Alibaba Cloud Model Studio モデルへの呼び出しは別途課金されます。詳細については、「Alibaba Cloud Model Studio の課金」をご参照ください。
Alibaba Cloud Model Studio からモデルを呼び出すには、RAG サービス用にパブリックインターネットアクセスを備えた VPC を構成する必要があります。
[モデル ID]: チャットで異なるモデルを選択するために使用される識別子です。この例では、Qwen3-8B_bailian と入力します。
[エンドポイント URL]: モデルサービスアドレス。中国 (北京) リージョンにおける Alibaba Cloud Model Studio のエンドポイントは https://dashscope.aliyuncs.com/compatible-mode/v1 です。
重要URL は
/v1または/v2で終わる必要があります。EAS サービスを使用している場合は、サービスエンドポイントに/v1を追加します。[API キー]: 詳細については、「API キーの取得」をご参照ください。
[モデル名]: qwen3-8b と入力します。

2.2 ナレッジベースの追加
デフォルトの埋め込みモデルが事前に構成されているため、ナレッジベースを直接作成し、ドキュメントをアップロードできます。
ナレッジベースの作成。左側のナビゲーションウィンドウで [ナレッジベース] をクリックしてナレッジベースページに移動し、[ナレッジベースの作成] をクリックします。
例として、iPhone 16 の技術仕様に関するナレッジベースを作成するには、ナレッジベース名を iPhone16 に設定し、他のパラメーターはデフォルト値のままにします。
ファイルのアップロード。[ファイル管理] タブで、[ファイルのアップロード] をクリックします。ファイルをアップロードした後、[解析開始] をクリックします。ファイル例: iPhone 16 and iPhone 16 Plus - Technical Specifications - Apple (CN).pdf。

ナレッジベースファイルの表示。アップロードが成功した後、ファイル名をクリックしてドキュメントのチャンク化を表示できます。
取得テスト。[取得テスト] タブに切り替えて、
iPhone16などのクエリを入力し、ナレッジベースの取得をテストします。
2.3 ナレッジベース Q&A
左側のナビゲーションウィンドウで [新しいチャット] をクリックします。チャットページの上部でモデルを選択します。下部で [ナレッジベース] をクリックし、使用するナレッジベース (例: iPhone16) を選択し、[アクティブ化] をクリックしてから [保存] をクリックします。
説明ナレッジベースをアクティブ化する前に、チャットでモデル構成をテストすることを推奨します。

チャットボックスに質問を入力します。

ステップ 3: 高度な Q&A モードの探索
マルチモーダル Q&A (テキストと画像チャット)
マルチモーダル Q&A の場合、ファイルストレージ用に OSS 環境変数を構成し、マルチモーダルモデルを使用する必要があります。
RAG サービスの OSS ストレージの環境変数を設定します。シナリオベースのデプロイメントでは、環境変数を直接設定することはサポートされていません。サービスデプロイページで、右上隅のConvert to Custom Deploymentをクリックします。既存のサービスの場合、[更新]をクリックしてデプロイページを開きます。Environment Informationセクションで、以下の環境変数を追加します:
FILE_STORE_TYPE: oss に設定します。
OSS_BUCKET: ご利用の OSS バケット名を入力します。
説明FILE_STORE_TYPE を oss に設定すると、アップロードされたナレッジベースファイルとチャット添付ファイルを保存するために、OSS_BUCKET に
pairag_knowledgebasesという名前のディレクトリが自動的に作成されます。FILE_STORE_TYPE が設定されていない場合、ファイルはマウントされた OSS ディレクトリに保存されます。OSS_ENDPOINT: OSS エンドポイント。詳細については、「OSS リージョンとエンドポイント」をご参照ください。例:
oss-cn-hangzhou.aliyuncs.com。OSS_ACCESS_KEY_ID および OSS_ACCESS_KEY_SECRET: AliyunOSSFullAccess 権限を持つ AccessKey ID と AccessKey Secret。
マルチモーダル LLM を構成 (例: Qwen-VL シリーズ)。以下の構成では、qwen3-vl-plus を例として使用します。マルチモーダルモデルスイッチを有効にする必要があります。

以下はチャット例です。

エージェント Q&A (MCP ツール呼び出し)
このモードは、モデルの推論能力と、外部ツール (検索やマップなど) を呼び出して複雑な質問に答える能力を活用します。
以下に、このモードの使用方法の例を示します。
ディープシンキングをサポートするモデルの設定。モデル構成で、ディープシンキングオプションを有効にします。

検索の設定。
検索エンジンの選択:Tavily Search。
中国語検索の場合は、Alibaba Cloud General Search を設定することもできます。
Tavily API キー:Tavily 公式サイトにアクセスしてアカウントを登録し、API キーを取得します。

Amap MCP の設定。左下隅で [設定] > [MCP] をクリックし、次のパラメーターを設定します。
MCP 名:amaps
MCP リンク:https://mcp-server-amap-jitptfyoyw.cn-hangzhou.fcapp.run/sse
MCP タイプ:SSE
会話のテスト。左側のナビゲーションウィンドウで、[新規チャット] をクリックします。チャットページの上部で、Qwen3-8B_bailian モデルを選択します。ページの下部で、[ディープシンキング]、[検索]、および [MCP] (amaps を有効化) を選択します。

ステップ 4: RAG システムのパフォーマンス評価
RAG システムには、異なる構成の Q&A パフォーマンスを定量的に分析するのに役立つ組み込み評価モジュールが含まれています。以下は、完全な評価プロセスです。
新しいデータセットの作成。左側のナビゲーションウィンドウで [評価] をクリックします。評価ページで [データセットの作成] をクリックします。

サンプルのインポート。作成したデータセットをクリックして評価タスクに移動します。[サンプル] タブで、[データのインポート] をクリックします。

新しい実行構成の作成。[実行設定] タブで、[構成の作成] をクリックし、必要に応じて設定を構成します。

新しい評価構成の作成。[評価者設定] タブで、[構成の作成] をクリックし、必要に応じて構成と評価者タイプを選択します。

評価実験の実行。[サンプル] タブで、評価するサンプルを選択し、[実験の実行] をクリックし、実験の名前を入力し、必要に応じて [実行構成] と [評価構成] を選択します。

評価結果の表示。実験が作成されると、自動的に実験詳細ページにリダイレクトされます。[実行履歴] タブに切り替えて、ターゲット実験を選択し、詳細を表示することもできます。

本番デプロイ
Alibaba Cloud ベクトルデータベースの使用
PAI-RAG は、Elasticsearch、Hologres、OpenSearch、または RDS for PostgreSQL を使用したベクトルデータベースの構築をサポートしています。
Hologres、Elasticsearch、および RDS for PostgreSQL は、内部ネットワークまたはパブリックインターネット経由でのアクセスをサポートしています。内部ネットワークアクセスを使用することを推奨します。
OpenSearch はパブリックインターネット経由でのアクセスのみをサポートしています。
Elasticsearch
Elasticsearch インスタンスの準備
Elasticsearch インスタンスがない場合は、Alibaba Cloud Elasticsearch コンソールにログインし、次の構成でインスタンスを作成します。詳細については、「Alibaba Cloud Elasticsearch インスタンスの作成」をご参照ください。
[リージョンと可用性ゾーン]: ご使用の PAI-EAS サービスと同じリージョンを選択します。
VPC: PAI-EAS サービスと同じ VPC を選択して、内部ネットワーク経由でのアクセスを有効にします。
インスタンスタイプ: [標準] を選択します。
シナリオ初期化構成: [汎用] を選択します。
サービス構成
Elasticsearch インスタンスで自動インデックス作成を許可するように設定する必要があります。Elasticsearch インスタンスの ページで、Modify Configurations をクリックし、[自動インデックス作成] を [許可] に設定します。詳細については、「YML パラメーターを設定する」をご参照ください。
Vector Database Type: Elasticsearch を選択します。
Private Endpoint and Port: Elasticsearch インスタンスの詳細ページに移動します。基本情報セクションで、プライベートエンドポイントとポートを確認できます。フォーマットは
http://<private IP address>:<port>です。Index Name: システムは、お客様の入力内容に応じて異なる操作を実行します。
新しい名前を入力: PAI-EAS は、デプロイ中に PAI-RAG と互換性のあるインデックスを自動的に作成します。
重要デフォルトでは、Alibaba Cloud Elasticsearch では自動インデックス作成が許可されていません。Elasticsearch インスタンスの ページで、Modify Configurations をクリックし、YML ファイルを更新して、[自動インデックス作成] を [許可] に設定します。詳細な手順については、「YML パラメーターの設定」をご参照ください。
既存の名前を入力: PAI-EAS は既存のインデックスを使用します。構造的互換性を維持するために、インデックスが PAI-RAG サービスによって作成されたことを確認してください。
Account および Password: Elasticsearch インスタンスを作成した際に設定したユーザー名とパスワードを入力します。デフォルトのユーザー名は elastic です。パスワードを忘れてしまった場合は、インスタンスのパスワードをリセットすることができます。
OSS Path: 現在のリージョンにある既存の OSS ストレージディレクトリを選択します。これにより、OSS パスをマウントすることでナレッジベースを管理できます。
Kibana を使用したインデックス管理
Elasticsearch はインデックス管理機能を提供します。詳細については、「Kibana クライアントを使用した Elasticsearch クラスターへの接続」をご参照ください。
Hologres
Hologres インスタンスを購入済みであることを確認してください。
Vector Database Type : Hologres を選択します。
Invocation Information: 指定されたVPCのホスト情報を設定します。Hologres コンソールで、インスタンスの詳細ページに移動します。Network Informationセクションで、[コピー] を [指定されたVPC] の横をクリックしてホストを取得します。これは、エンドポイントの
:80より前の部分です。Database Name : Hologres インスタンスのデータベース名です。データベースがない場合は、「データベースを作成」をご参照ください。
Account:作成したカスタムユーザーアカウントです。詳細な手順については、「カスタムユーザーの作成」をご参照ください。[メンバーロールの選択]には、[SuperUser] を選択します。
Password : カスタムユーザーアカウントのパスワードです。
Table Name : システムは、入力に基づいて異なるアクションを実行します。
[新しい名前を入力] : PAI-EAS は、デプロイメント中に PAI-RAG の要件を満たすテーブルを自動的に作成します。
[既存の名前を入力] : PAI-EAS は既存のテーブルを使用します。構造的な互換性を維持するために、テーブルが PAI-RAG サービスによって作成されたことを確認してください。
OSS Path : 現在のリージョンに存在する OSS ストレージディレクトリを選択します。これにより、OSS パスをマウントしてナレッジベースを管理できます。
OpenSearch
OpenSearch Vector Search Edition インスタンスの準備
OpenSearch インスタンスをお持ちでない場合は、以下のリンクから OpenSearch コンソール にログインし、以下の構成でインスタンスを作成してください。詳細については、「OpenSearch Vector Search Edition インスタンスの購入」をご参照ください。
製品バージョン: Vector Search Edition を選択します。
リージョンおよび可用性ゾーン と VPC: OpenSearch はパブリックインターネット経由でのみアクセスが可能です。したがって、これらの設定は PAI-EAS サービスと一致させる必要はありません。
サービス構成
Vector Database Type: OpenSearch を選択します。
Endpoint: ご利用の OpenSearch Vector Search Edition インスタンスのパブリックエンドポイントです。
説明OpenSearch Vector Search Edition インスタンスのパブリックアクセスを有効化し、EAS のパブリック IP アドレス を許可リストに追加する必要があります。
Instance ID: OpenSearch Vector Search Edition のインスタンス一覧より取得します。
Username および Password: OpenSearch Vector Search Edition インスタンス作成時に設定したユーザー名とパスワードを入力します。
Table Name: まず、互換インデックステーブルを作成する必要があります。「インスタンスの設定」を参照して、以下の主要パラメーターで作成します。
汎用シナリオテンプレートを選択し、以下の構成ファイルをインポートしてフィールドを定義します。
インデックススキーマ では、ベクターのディメンションがナレッジベースの埋め込みモデルで使用されるディメンションと一致していることを確認してください。距離タイプ については、InnerProduct を選択することを推奨します。
インデックステーブルおよびデータの管理
Alibaba Cloud OpenSearch Vector Search Edition コンソール にログインし、作成済みのインスタンスの ID をクリックして、インスタンスの詳細 ページに移動します。
テーブル管理ページに移動し、インデックステーブルに対して管理操作を実行します。詳細については、「テーブル管理」をご参照ください。

ベクター管理ページでは、クエリテストの実行やデータ管理が可能です。詳細については、「ベクター管理」をご参照ください。
RDS for PostgreSQL
RDS for PostgreSQL インスタンスの準備
ApsaraDB RDS for PostgreSQL (RDS for PostgreSQL) インスタンスをお持ちでない場合は、RDS インスタンス作成ページに移動し、以下の主要なパラメーターを構成し、画面の指示に従って購入を完了します。詳細については、「ApsaraDB RDS for PostgreSQL インスタンスの作成」をご参照ください。
エンジン: [PostgreSQL] を選択します。
VPC: ご利用の PAI-EAS サービスと同じ VPC を選択し、内部ネットワーク経由のアクセスを有効にします。
[特権アカウント]: [詳細設定] セクションで、特権アカウントを設定します。[今すぐ設定] を選択し、データベースアカウントおよびパスワードを設定します。
データベースを作成します。
作成済みのインスタンスの名前をクリックします。左側のナビゲーションウィンドウで、[データベース管理] をクリックし、次に [データベースの作成] をクリックします。
[データベースの作成] パネルで、[データベース (DB) 名] を設定します。[承認済みアカウント] では、作成した特権アカウントを選択します。その他のパラメーターについて詳しくは、「データベースとアカウントの作成」をご参照ください。
パラメーターを設定したら、Create をクリックします。
サービス構成
RDS for PostgreSQL インスタンスを作成済みであることを確認してください。
Vector Database Type: [RDS PostgreSQL] を選択します。
Host address: お使いの RDS for PostgreSQL インスタンスの内部エンドポイントです。この情報は、ApsaraDB RDS for PostgreSQL コンソール のインスタンスの [データベース接続] ページで確認できます。
Port: デフォルトは 5432 です。異なる場合は実際のポートを入力します。
Database: データベースの [承認済みアカウント] は、[特権アカウント] である必要があります。詳細については、「データベースとアカウントを作成する」をご参照ください。また、データベースに vector 拡張と jieba 拡張をインストールする必要があります。
Table Name: データベーステーブルのカスタム名です。
AccountとPasswordは、データベースの作成時に設定した許可されたユーザー名とパスワードです。特権アカウントの作成方法については、「データベースとアカウントの作成」をご参照ください。[アカウントタイプ] には [特権アカウント] を選択します。
OSS Path: 現在のリージョンにある既存の OSS ストレージディレクトリを選択します。これにより、OSS パスをマウントすることでナレッジベースを管理できます。
RDS for PostgreSQL データベース管理
RDS インスタンスリストに移動し、ご利用のインスタンスが配置されているリージョンに切り替えてから、インスタンス名をクリックしてインスタンス詳細ページに移動します。
左側のナビゲーションウィンドウで、[データベース管理] を選択します。対象のデータベースの Actions 列で、[SQL クエリ] をクリックします。
[データベースアカウント] と [データベースパスワード] に、RDS for PostgreSQL インスタンスの作成時に設定した特権ユーザー名とパスワードを入力し、Sign in をクリックします。
ログイン後、インポートされたナレッジベースのリストをクエリします。
