大規模言語モデル(LLM)は、企業固有またはリアルタイムのデータが不足している可能性があります。Retrieval-Augmented Generation(RAG)テクノロジーは、LLM に非公開ナレッジベースへのアクセスを提供することにより、モデル応答の精度と関連性を向上させます。このトピックでは、LangStudio で RAG ベースのアプリケーションを開発およびデプロイする方法について説明します。
背景情報
最新の 情報検索 の分野では、RAG モデルは 情報検索 と 生成AI の利点を組み合わせて、特定のシナリオでより正確で関連性の高い回答を提供します。たとえば、金融やヘルスケアなどの専門分野では、ユーザーは意思決定のために正確で適切な情報を必要とすることがよくあります。従来の生成モデルは、自然言語理解と生成に優れていますが、専門知識の精度が不足している可能性があります。RAG モデルは、取得と生成のテクノロジーを統合することにより、回答の精度とコンテキストの関連性を効果的に向上させます。このトピック では、Platform for AI(PAI)をコアプラットフォームとして使用することにより、金融およびヘルスケア分野向けの RAG ベースのアプリケーションを提供します。
前提条件
LangStudio は、ベクトルデータベースとして Faiss または Milvus をサポートしています。Milvus を使用する場合は、最初に Milvus データベースを作成する必要があります。
説明ほとんどの場合、Faiss は追加のデータベースを作成する必要のないテスト環境で使用されます。本番環境では、大量のデータを処理できる Milvus を使用することをお勧めします。
RAG ナレッジベースに必要なデータは、OSS にアップロードされています。
1. (オプション)LLM および埋め込みモデルをデプロイする
RAG ベースのアプリケーションフローには、LLM と埋め込みモデルの両方が必要です。このセクションでは、Model Gallery を介して必要なモデルサービスを迅速にデプロイする方法について説明します。デプロイされたモデル サービスがビジネス要件を満たし、OpenAI API をサポートしている場合は、この手順をスキップして直接使用できます。
クイックスタート > Model Gallery を選択し、次の 2 つのシナリオのモデルをデプロイします。
命令に基づいて微調整された LLM を選択してください。基本モデルは、ユーザーの命令に従って質問に確実に答えることができません。
[大規模言語モデル] を シナリオ セクションで選択し、[DeepSeek-R1-Distill-Qwen-7B] をデプロイします。

[埋め込み] を シナリオ セクションで選択し、[bge-m3 埋め込みモデル] をデプロイします。

2. 接続を作成する
このトピックで作成された LLM および埋め込み接続は、[クイックスタート] > [Model Gallery] にデプロイされた Elastic Algorithm Service(EAS)モデル サービスに基づいています。その他の接続タイプの詳細については、「接続を構成する」をご参照ください。
2.1 LLM 接続を作成する
LangStudio に移動し、ワークスペースを選択して、[接続] > [モデルサービス] を選択します。表示されるタブで、[新しい接続] をクリックして、一般的な LLM モデル サービス接続を作成します。

次の表に、主要なパラメーターを示します。
パラメーター | 説明 |
名前 | Model Gallery を介してモデルをデプロイする場合、モデルの詳細ページでモデル名を取得できます。モデルの詳細ページに移動するには、Model Gallery ページで関連するモデルカードをクリックします。詳細については、「接続を構成する」の「モデル サービス」セクションをご参照ください。 |
サービスプロバイダー |
|
2.2 埋め込み接続を作成する
2.1 LLM 接続を作成する を参照して、埋め込み接続を作成できます。

2.3 ベクトルデータベース接続を作成する
アプリケーション開発(LangStudio)ページで、[接続] > [データベース] を選択します。[接続を作成] をクリックします。表示されるタブで、[新しい接続] をクリックして、Milvus データベース接続を作成します。

次の表に、主要なパラメーターを示します。
パラメーター | 説明 |
uri | Milvus インスタンスのエンドポイント。 |
token | Milvus インスタンスにログオンするためのユーザー名とパスワード。 |
database | データベース名。デフォルトデータベース |
3. ナレッジベースインデックスを作成する
コーパスを解析、チャンク化、ベクトル化、およびベクトルデータベースに保存するには、ナレッジベースインデックスを作成する必要があります。次の表に、主要なパラメーターを示します。その他の構成の詳細については、「ナレッジベースを作成する」をご参照ください。
パラメーター | 説明 |
基本構成 | |
データソース OSS パス | 前提条件 の RAG ナレッジベースの OSS パスに値を設定します。 |
出力 OSS パス | ドキュメントの解析中に生成された中間結果とインデックス情報を保存するパスに値を設定します。 重要 FAISS をベクトルデータベースとして使用する場合、アプリケーションフローは生成されたインデックスファイルを OSS に保存します。PAI のデフォルトロールを使用する場合(ランタイムを開始する ページで [インスタンス RAM ロール] を [PAI のデフォルトロール] に設定)、アプリケーションフローはワークスペースのデフォルトストレージバケットにアクセスできます。したがって、このパラメーターをワークスペースのストレージパスがある OSS バケットのディレクトリに設定することをお勧めします。カスタムロールを使用する場合は、カスタムロールに OSS アクセス許可を付与する必要があります。AliyunOSSFullAccess ポリシーをロールにアタッチすることをお勧めします。 |
埋め込みモデルとデータベース | |
埋め込みタイプ | [一般的な埋め込みモデル] を選択します。 |
埋め込み接続 | 2.2 埋め込み接続を作成する で作成した埋め込み接続を選択します。 |
ベクトルデータベースタイプ | [ベクトルデータベース Milvus] を選択します。 |
ベクトルデータベース接続 | 2.3 ベクトルデータベース接続を作成する で作成した Milvus データベース接続を選択します。 |
テーブル名 | 前提条件 で作成した Milvus データベースのコレクションに値を設定します。 |
VPC 構成 | |
VPC | Milvus インスタンスと同じ VPC、または Milvus インスタンスが存在する VPC に接続されている VPC を選択します。 |
4. RAG ベースのアプリケーションフローを作成して実行する
LangStudio に移動し、ワークスペースを選択して、[アプリケーションフロー] タブをクリックします。表示されるタブで、[アプリケーションフローを作成] をクリックして、RAG ベースのアプリケーションフローを作成します。

アプリケーションフローの詳細ページで、[ランタイムを作成] をクリックしてランタイムを作成し、起動します。注: システムが Python ノードを解析する前にランタイムが起動されていること、または [その他のツール] を表示できることを確認してください。

主要なパラメーター:
VPC: 前提条件 の Milvus インスタンスと同じ VPC、または Milvus インスタンスが存在する VPC に接続されている VPC を選択します。
アプリケーションフローを開発します。

ノードのデフォルト設定を保持するか、ビジネス要件に基づいて構成します。主要なノードには次の設定を使用します。
ナレッジ取得: ナレッジベースからユーザーの質問に関連するテキストを取得します。
インデックス名: 3. ナレッジベースインデックスを作成する で作成したナレッジベースインデックスを選択します。
上位 K: 返す上位一致の数。
LLM: 取得したドキュメントをコンテキストとして使用し、ドキュメントをユーザーの質問とともに LLM に送信して、回答を生成します。
モデル構成: 2.1 LLM 接続を作成する で作成した接続を選択します。
チャット履歴: このスイッチをオンにすると、チャット履歴機能が有効になり、以前の会話が入力変数として使用されます。
各コンポーネントの詳細については、「付録: 組み込みコンポーネントの説明」をご参照ください。
アプリケーションフローをデバッグまたは実行します。詳細ページの右上隅にある [実行] をクリックして、アプリケーションフローを実行します。アプリケーションフローのランタイム中の一般的な問題については、「よくある質問」をご参照ください。

トレースを表示します。生成された回答の下にある [トレースを表示] をクリックして、トレースの詳細またはトポロジービューを表示します。

5. アプリケーションフローをデプロイする
アプリケーションフローの開発ページで、右上隅にある [デプロイ] をクリックして、アプリケーションフローを EAS サービスとしてデプロイします。パラメーターのデフォルト設定を保持するか、ビジネス要件に基づいて構成します。主要なパラメーターには次の設定を使用します。
[リソース情報] セクションの : サービスインスタンスの数を入力します。テスト目的では、このパラメーターを 1 に設定します。本番環境では、単一障害点(SPOF)のリスクを軽減するために、複数のインスタンスを構成することをお勧めします。本番環境では、単一障害点(SPOF)のリスクを軽減するために、複数のインスタンスを構成することをお勧めします。
VPC(VPC) セクションの VPC (VPC) : Milvus インスタンスと同じ VPC、または Milvus インスタンスが存在する VPC に接続されている VPC を選択します。
デプロイメントの詳細については、「アプリケーションフローをデプロイする」をご参照ください。
6. サービスを呼び出す
デプロイメントが成功すると、PAI の Elastic Algorithm Service(EAS)ページにリダイレクトされます。[オンラインデバッグ] タブで、リクエストを構成して送信します。リクエスト本文のキーは、アプリケーションフローの[開始ノード] の [チャット入力] フィールドと一致している必要があります。この例では、デフォルトフィールド question が使用されます。

サービスを呼び出すその他の方法(API 操作など)と詳細な手順については、「サービスを呼び出す」をご参照ください。