Alibaba Cloud Model Studio と AnalyticDB for PostgreSQL を使用した、Compute Nest での RAGサービスの構築

![AI-Artificial-Intelligence-chipset-.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3724645/2ee181bc-5a55-1e9c-3d22-9eb1bbdd4f7c.png)


このチュートリアルでは、Alibaba Cloud Model Studio、Compute Nest、および AnalyticDB for PostgreSQL を使用して、検索拡張生成 (RAG) サービスを構築する方法について詳しく説明します。 Model Studio を使用すると、Qwen などの上位層の生成 AI モデルを活用して AI アプリケーションを簡単に開発、デプロイ、管理できます。 このサービスを構築することにより、企業内での安全で効率的なデータ処理が保証され、AI 機能が強化され、シームレスな自然言語クエリが可能になります。

## はじめに

[Alibaba Cloud Model Studio](https://www.alibabacloud.com/en/product/modelstudio) は、生成 AI アプリケーションを開発するための包括的なプラットフォームです。 Compute Nest と AnalyticDB for PostgreSQL を使用すると、安全で効率的な検索拡張生成 (RAG) サービスを作成して、企業内の AI 機能を強化できます。

## Alibaba Cloud Model Studio の概要

![model-studio-features.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3724645/dfd4c357-dff2-288d-06a6-0a2633a78db2.png)
*上図にに示す機能は順次リリース予定です。*

### Model Studio とは

[Alibaba Cloud Model Studio](https://www.alibabacloud.com/en/product/modelstudio) は、生成 AI モデルの開発、デプロイ、管理を簡素化することを目的としたエンドツーエンドのプラットフォームです。 Qwen-Max、Qwen-Plus、Qwen-Turbo、Qwen 2 シリーズなど、業界をリードする基盤モデルにアクセス可能な Model Studio には、モデルのファインチューニング、評価、デプロイ、およびエンタープライズシステムとの統合のためのツールが用意されています。

### Model Studio の主な機能

1.&nbsp; **主要な基盤モデル (FM) に簡単にアクセス**：

- Qwen-Max、Qwen-Plus、Qwen-Turbo、Qwen 2 シリーズなどのモデルは、拡張された AI 機能でアプリケーションを強化します。

2.&nbsp; **組み込みのモデル推論および評価ワークフロー**：

- 教師ありファインチューニング (SFT) および低ランク適応 (LoRA) がサポートされています。

- モデル圧縮、推論アクセラレーション、および多次元評価ツールを備えています。

- ワンクリックでモデルをデプロイできます。

3.&nbsp; **生成 AI アプリケーションの開発を簡素化**：

- 視覚的なワークフローでアプリケーションを開発できます。

- テンプレートを用いてプロンプトエンジニアリングを実行できます。

- ビジネスシステムと統合するための、豊富な API が用意されています。

4.&nbsp; **広範なセキュリティ対策**：

- 分離された VPC ネットワークでデータが保護されます。

- 責任ある AI を確実に実践するためのコンテンツガバナンスとヒューマンインザループ介入のためのツールが用意されています。

5.&nbsp; **サードパーティのモデル**：

- Q&A、執筆、NL2SQL (自然言語から SQL への変換) 機能などで使用される Tongyi などのサードパーティモデルがサポートされています。

6.&nbsp; **データ管理**：

- データセットのクレンジングと管理を実行できます。

- 検索拡張生成 (RAG) で検索とデータアクセスを強化できます。

7.&nbsp; **業界特化型モデル**：

- ヘルスケア、金融、法律サービスなど、各業界向けののカスタムモデルが用意されています。

8.&nbsp; **API と SDK**:

- 迅速な統合とエージェント開発のためのアシスタント API と SDK 一式が用意されています。

## 前提条件

開始前に、以下の事項を確認してください。

- Alibaba Cloud アカウントが作成済みである必要があります。

- クラウドサービスと AI モデルについての知識が必要です。

## ステップ 1：Alibaba Cloudアカウントのセットアップ

Alibaba Cloud アカウントの作成が済んでいない場合は作成します：[アカウントを作成する](https://www.alibabacloud.com/)

## ステップ 2：Compute Nest にアクセス

Compute Nest に移動して、生成 AI 用のサービスを確認します： [Compute Nest](https://computenest.console.aliyun.com/service/instance/create/ap-southeast-1?type=user&ServiceId=service-09b1567c53a44da78fbf&ServiceVersion=beta)

![model-studio-rag.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3724645/93c37093-ec3f-ae95-c4c6-0cbba03c8c59.png)


## ステップ 3：インスタンスとパラメーターの設定

インスタンスに対して必要なパラメーターを設定します。

1. **サービスインスタンス名**：分かりやすいインスタンス名を指定します。

2. **Elastic Computing Services (ECS) パラメーター**：ドキュメント処理を高速化するには、`ecs.c6.2xlarge` を選択することを推奨します。

3. **インスタンスパスワード**：インスタンス用に安全なパスワードを作成します。

![インスタンスパラメーター](https://img.alicdn.com/imgextra/i1/O1CN01kJbPrK1UJfwv2U74m_!!6000000002497-0-tps-4590-2298.jpg)

## ステップ 4：AnalyticDB for PostgreSQL のセットアップ

AnalyticDB for PostgreSQL インスタンスを設定します。

1. **インスタンス仕様**：データ量に基づいて適切な仕様を選択します。

2. **セグメントストレージサイズ**：必要に応じて調整します。

3. **DB ユーザー名**：デフォルトは `kbsuser` です。独自のユーザー名も選択できます。

4. **DB パスワード**：強力なパスワードを作成します 。記号 (@ など) は使用しないでください。

![adbpg.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3724645/4964e659-06a5-ead0-4692-6ba0291b33e8.png)



## ステップ 5：WebUI 資格情報の設定

RAG サービスを管理し、サービスと対話するための Web UI 資格情報を設定します。

1. **ユーザー名**：デフォルトは `admin`です。別のユーザー名も選択できます。

2. **パスワード**：強力で安全なパスワードを作成します。

![webui.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3724645/0fa369c7-2256-f791-51ac-a9a140c2143f.png)


## ステップ 6：Model Studio API キーの追加

サービス間の通信を認証し、容易に実行するために、Model Studio API キーを追加します。

**API キー**：Model Studio のセットアップから取得した API キーを入力します。

![model-studio-api.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3724645/fada7b0e-03d3-10e7-9f25-ac959de65cf5.png)


Model Studio API キーを取得する方法は[こちら](https://www.alibabacloud.com/help/en/model-studio/developer-reference/get-api-key)をご参照ください。

## ステップ 7：ネットワーク設定

安全で信頼性の高い接続を確保するために、適切なネットワーク設定を選択します。

### 既存のインフラストラクチャ設定の選択

1.&nbsp;新しい VPC (Virtual Private Cloud) を作成するか、または既存の VPC を使用するかを選択します。

- **WhetherCreateVpc**：新しい VPC が必要な場合は、`[作成]` を選択します。

2.&nbsp;**VPC ID**：既存の VPC の ID を入力するか、または新しい VPC を作成します。

- **VPC の作成**：新しい VPC を作成する場合は、「[Alibaba Cloud VPC 作成ガイド](https://www.alibabacloud.com/help/doc-detail/65398.htm)」に従います。

3.&nbsp;**VSwitch ID**：既存の vSwitch の ID を選択するか、または新しい vSwitch を作成します。

- **vSwitch の作成**：手順は「[vSwitch作成ガイド](https://www.alibabacloud.com/help/doc-detail/65399.htm)」で確認できます。

4.&nbsp;**タグとリソースグループ**:

- **タグ**：作成したリソースに付加されているタグを指定します。

- **タグキー**：タグキーを選択します。

- **タグ値**：タグ値を選択します。

- **リソースグループ**：作成したサービスインスタンスが属するリソースグループを選択します。

- **リソースグループの作成**：「[リソースグループの作成](https://www.alibabacloud.com/help/doc-detail/94497.htm)」の手順に従います。

設定後、**[次へ：注文の確認]** をクリックします。

![network-resources.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3724645/992e1990-7bae-ef2e-14ec-d18635b6c9bd.png)


これらの手順に従うことにより、Alibaba Cloud Model Studio RAGサービスを効果的にサポートするために、WebUI の資格情報とネットワーク設定を正しく設定できます。

パラメーターの設定後、**[次へ：注文の確認]** をクリックします。

![confirm-order.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3724645/6aeb02a3-7502-4c54-7465-7a43ba07187c.png)


## ステップ 7：Gradio for Web UI の統合

Gradio を使用して、サービスと対話するための Web インターフェースを作成します。

1. **Gradio の設定**：インストールと設定については、Gradio の[ドキュメント](https://www.gradio.app/docs/interface)に従ってください。

2. **サービスの統合**：Gladio をバックエンドサービス (Model Studio API エンドポイントおよび AnalyticDB for PostgreSQL) に接続します。

## ステップ 8：RAG サービスのデプロイ

すべての設定項目を確認し、**利用規約**に同意します。 **[今すぐ作成]** をクリックして、RAG サービスをデプロイします。

![サービスのデプロイ](https://img.alicdn.com/imgextra/i4/O1CN01gcHadn1dl07aLFXLX_!!6000000003775-0-tps-4628-2522.jpg)

## RAG サービスの使用

### 一般的な質問への回答

ユーザーは Gradio Web インターフェース経由で質問をすることができ、Model Studio API は入力に基づいて応答を返します。

![サービスの使用](https://img.alicdn.com/imgextra/i1/O1CN01ivxie027LklECpEmd_!!6000000007781-0-tps-3324-1814.jpg)

### 検索拡張のためのドキュメントのアップロード

ユーザーは、ベクトルデータベースに保存されるドキュメントをアップロードして、モデルの検索機能を強化できます。

### サービスの変更

許可されたユーザーは、ECS インスタンスにアクセスして、サービスに必要な変更や更新を加えることができます。

## 追加リソース

RAG サービスをさらに理解して最適化するには、以下のリソースをご確認ください。

- [Alibaba Cloud Model Studio の Web サイト](https://www.alibabacloud.com/en/product/modelstudio)

- [Alibaba Cloud Model Studio のドキュメント](https://www.alibabacloud.com/help/en/model-studio/)

- [Compute Nest のドキュメント](https://www.alibabacloud.com/blog/compute-nest-enabling-cutting-edge-generative-ai-integration-and-knowledge-base-systems-in-collaboration-with-alibaba-cloud_600421)

- [AnalyticDB for PostgreSQL のドキュメント](https://www.alibabacloud.com/help/product/28108.htm)

- [Gradio のドキュメント](https://www.gradio.app/docs/interface)



**関連チュートリアル：**

- [Alibaba Cloud PAI の高度な LLM および LangChain 機能による生成 AI の強化](https://www.alibabacloud.com/blog/empowering-generative-ai-with-alibaba-cloud-pais-advanced-llm-and-langchain-features_600577)

- [ComputeNest で RAG サービスを迅速に構築する](https://www.alibabacloud.com/blog/quickly-building-a-rag-service-on-compute-nest-with-llm-on-pai-eas-and-analyticdb-for-postgresql_600783)

- [大規模言語モデルの合理化されたデプロイと PAI-EAS との統合](https://www.alibabacloud.com/blog/streamlined-deployment-and-integration-of-large-language-models-with-pai-eas_600762)

- [独自の AI チャットバディのデプロイ-  Hugging Face を使用した Qwen チャットモデルのデプロイガイド](https://www.alibabacloud.com/blog/deploy-your-own-ai-chat-buddy---the-qwen-chat-model-deployment-with-hugging-face-guide_600859)

- [AI 革命に火をつける - Qwen、RAG、LangChain との旅](https://www.alibabacloud.com/blog/igniting-the-ai-revolution---a-journey-with-qwen-rag-and-langchain_600876)

- [Qwen と Model Studio によるマルチモーダルサービスの構築](https://www.alibabacloud.com/blog/building-multimodal-services-with-qwen-and-model-studio_600962)

- [会話を一段上のレベルへ：カスタマイズ可能で高い費用効果を発揮する、Alibaba Cloud での LLM + VectorDB  ](https://www.alibabacloud.com/blog/next-level-conversations-llm-%2B-vectordb-with-alibaba-cloud-is-customizable-and-cost-efficient_599985)


## 結論

このチュートリアルでは、[Alibaba Cloud Model Studio](https://www.alibabacloud.com/en/product/modelstudio)、Compute Nest、AnalyticDB for PostgreSQL を使用して、検索拡張生成 (RAG) サービスを構築するプロセス全体について説明しました。 Qwen を含む Model Studio の強力な生成 AI モデルを活用することで、自社での AI アプリケーションの開発、デプロイ、管理を合理化できます。 今回のようなサービスを構築することより、自然言語クエリからドキュメント検索の拡張まで、安全でスケーラブル、かつ効率的な対話が保証されます。 これらの手順に従うことで、高度な AI 機能を利用できるようになり、組織内でのデータ管理と利用を変革できます。 継続的な最適化とサポートについては、追加のリソースと関連チュートリアルをご参照ください。

<hr />

この記事は英語から翻訳されました。 元の記事は[こちら](https://www.alibabacloud.com/blog/building-a-retrieval-augmented-generation-rag-service-on-compute-nest-with-alibaba-cloud-model-studio-and-analyticdb-for-postgresql_601412)で確認できます。