La génération augmentée par récupération (RAG) améliore les capacités d'un grand modèle de langage (LLM) pour les questions-réponses spécifiques à un domaine en récupérant des informations pertinentes depuis une base de connaissances externe et en les combinant avec l'entrée de l'utilisateur. PAI-EAS propose une solution de déploiement basée sur des scénarios qui vous permet de construire un système de discussion RAG avec le LLM et la base de données vectorielle de votre choix.
Périmètre
Cette rubrique s'applique à PAI-RAG v0.4.x. Pour les versions antérieures, consultez PAI-RAG (v0.3.x).
Étape 1 : Déployer le service RAG
Connectez-vous à la console PAI. Sélectionnez une région en haut de la page. Ensuite, sélectionnez l'espace de travail souhaité et cliquez sur Elastic Algorithm Service (EAS).
Dans l'onglet Inference Service, cliquez sur Deploy Service. Dans la section Scenario-based Model Deployment, cliquez sur RAG-based Smart Dialogue Deployment.
-
Sur la page RAG-based LLM Chatbot Deployment, configurez les paramètres clés suivants :
-
Version: Sélectionnez LLM Decoupled Deployment pour déployer uniquement le service RAG.
RemarqueL'option LLM Integrated Deployment déploie le service RAG et le LLM dans la même instance de service EAS. Étant donné que les LLM nécessitent des ressources importantes, ce mode est recommandé uniquement lorsque vous utilisez des modèles plus petits.
RAG Version :
pai-rag:0.4.3.-
Resource Information :
Resource Type : Sélectionnez Public Resources.
Deployment : Le service RAG lui-même consomme peu de ressources. Nous vous recommandons de sélectionner une spécification disposant d'au moins 8 vCPU et 16 Go de mémoire, telle que
ecs.c7.2xlargeouecs.c7.4xlarge.
-
Paramètres de la base de données vectorielle :
Vector Database Type : Sélectionnez FAISS pour créer une base de données vectorielle locale afin de démarrer rapidement. Pour les environnements de production, nous vous recommandons d'utiliser une base de données vectorielle éprouvée. Pour obtenir des instructions de configuration, consultez Utiliser une base de données vectorielle Alibaba Cloud.
OSS Path : Sélectionnez un répertoire de stockage OSS existant dans la région actuelle pour stocker vos fichiers de base de connaissances téléchargés. Si vous ne disposez pas d'un chemin de stockage disponible, consultez Démarrage rapide dans la console pour en créer un.
VPC : Un VPC est requis pour accéder au service de modèle Alibaba Cloud Model Studio via Internet public. Pour ce faire, configurez un VPC, activez une passerelle NAT publique et configurez une entrée SNAT. Pour plus d'informations, consultez Autoriser un service EAS à accéder à Internet public.
-
Une fois les paramètres configurés, cliquez sur Deploy. Le déploiement du service prend généralement environ 5 minutes. Lorsque le Service Status passe à Running, le déploiement est réussi.
Étape 2 : Prise en main des questions-réponses sur la base de connaissances
Dans l'onglet Inference Service, localisez votre service RAG déployé et accédez à sa page de détails. Cliquez sur Web applications dans le coin supérieur droit pour ouvrir l'interface utilisateur web.

2,1 Configuration d'un LLM
Dans le coin inférieur gauche, cliquez sur Settings > Model pour ouvrir la page de configuration du modèle. Cet exemple illustre la configuration du modèle qwen3-8b depuis Alibaba Cloud Model Studio. Pour plus d'informations sur la configuration des modèles, consultez la rubrique Configuration des modèles.
Les appels aux modèles d'Alibaba Cloud Model Studio sont facturés séparément. Pour plus d'informations, consultez la rubrique Facturation d'Alibaba Cloud Model Studio.
Pour appeler des modèles depuis Alibaba Cloud Model Studio, vous devez configurer un VPC avec accès à Internet public pour votre service RAG.
Model ID : Identifiant permettant de sélectionner un modèle lors d'une conversation. Dans cet exemple, saisissez Qwen3-8B_bailian.
-
Endpoint URL : Adresse du service de modèle. L'adresse du service pour Alibaba Cloud Model Studio dans la région Chine (Pékin) est https://dashscope.aliyuncs.com/compatible-mode/v1.
ImportantL'URL doit se terminer par
/v1ou/v2. Pour un service EAS, ajoutez/v1à l'URL d'appel du service. API key : Pour plus d'informations, consultez la rubrique Obtention d'une clé API.
Model Name : Saisissez qwen3-8b.

2,2 Ajout d'une base de connaissances
Un modèle d'embedding par défaut est préconfiguré, ce qui vous permet de créer immédiatement une base de connaissances et d'y importer des documents.
-
Créez une base de connaissances. Dans le volet de navigation de gauche, cliquez sur Knowledge Base. Sur la page Knowledge Base, cliquez sur New Knowledge Base.
Par exemple, pour créer une base de connaissances relative aux spécifications techniques de l'iPhone 16, définissez le nom de la base de connaissances sur iPhone16 et conservez les paramètres par défaut pour les autres paramètres.
Importez un fichier. Dans l'onglet File Management, cliquez sur Upload File. Une fois le fichier importé, cliquez sur Start Parsing. Fichier d'exemple : iPhone 16 and iPhone 16 Plus - Technical Specifications - Apple (Chinese mainland).pdf.

Consultez le fichier de la base de connaissances. Une fois l'importation terminée, vous pouvez cliquer sur le nom du fichier pour afficher les fragments de document.
-
Testez la récupération. Basculez vers l'onglet Retrieval Test et saisissez une requête (par exemple,
iPhone16) pour tester la récupération dans la base de connaissances.
2,3 Questions-réponses sur la base de connaissances
-
Dans le volet de navigation de gauche, cliquez sur New Chat. En haut de la page de conversation, sélectionnez un modèle. En bas, cliquez sur Knowledge Base, sélectionnez la base de connaissances à utiliser (par exemple, iPhone16), cliquez sur Activate, puis sur Save.
RemarqueNous vous recommandons de tester la configuration du modèle dans une conversation avant d'activer la base de connaissances.

Saisissez votre question dans la zone de conversation.

Étape 3 : Explorer les modes avancés de questions-réponses
Questions-réponses multimodales (chat texte et image)
Les questions-réponses multimodales nécessitent la configuration de variables d'environnement de stockage OSS pour stocker les fichiers et images téléchargés, ainsi que l'utilisation d'un modèle multimodal.
-
Configurez les variables d'environnement de stockage OSS pour le service RAG. Le déploiement basé sur des scénarios ne prend pas directement en charge la définition des variables d'environnement. Sur la page de déploiement du service, cliquez sur Convert to Custom Deployment dans le coin supérieur droit. Pour un service existant, cliquez sur Update pour accéder à la page de déploiement. Dans la section Environment Information , ajoutez les variables d'environnement suivantes :
FILE_STORE_TYPE : Définissez cette valeur sur oss.
-
OSS_BUCKET : Saisissez le nom de votre bucket OSS.
RemarqueLorsque FILE_STORE_TYPE est défini sur oss, un répertoire nommé
pairag_knowledgebasesest automatiquement créé dans le OSS_BUCKET pour stocker les fichiers de base de connaissances et les pièces jointes des chats. Si FILE_STORE_TYPE n'est pas défini, les fichiers sont stockés par défaut dans le répertoire OSS monté. OSS_ENDPOINT : L'endpoint OSS. Pour plus d'informations, consultez Régions et endpoints OSS. Un exemple est
oss-cn-hangzhou.aliyuncs.com.OSS_ACCESS_KEY_ID et OSS_ACCESS_KEY_SECRET : Une paire AccessKey (ID et secret) disposant de l'autorisation AliyunOSSFullAccess.
Configurez un LLM multimodal (tel que la série Qwen-VL). L'exemple suivant utilise qwen3-vl-plus. Activez l'option de modèle multimodal.

La figure suivante illustre un exemple de chat.

Questions-réponses agentiques (appel d'outils MCP)
Ce mode exploite les capacités de raisonnement et d'appel d'outils du modèle (comme la recherche et les cartes) pour répondre à des questions complexes.
Voici un exemple d'utilisation de ce mode :
Configurez un modèle prenant en charge le raisonnement. Dans la configuration du modèle, activez l'option Deep Thinking.

-
Configurez la recherche.
-
Sélectionnez le moteur de recherche : Tavily Search.
Pour la recherche en chinois, vous pouvez également configurer Alibaba Cloud General Search .
Clé API Tavily : Rendez-vous sur le site officiel de Tavily pour créer un compte et obtenir une clé API.

-
-
Configurez Amap MCP. Dans le coin inférieur gauche, cliquez sur Settings > MCP et configurez les paramètres suivants.
MCP Name : amaps
MCP Link : https://mcp-server-amap-jitptfyoyw.cn-hangzhou.fcapp.run/sse
MCP Type : SSE
-
Testez la conversation. Dans le volet de navigation de gauche, cliquez sur New Chat. En haut de la page, sélectionnez Qwen3-8B. En bas de la page de chat, sélectionnez Deep Thinking, Search et MCP (activez amaps).

Étape 4 : Évaluer les performances RAG
Le système RAG intègre un module d'évaluation qui vous aide à analyser quantitativement les performances des questions-réponses selon différentes configurations. Les étapes suivantes décrivent le processus d'évaluation :
-
Créez un jeu de données. Dans le volet de navigation de gauche, cliquez sur Evaluation. Sur la page Evaluation, cliquez sur New Dataset.

-
Importez des échantillons. Cliquez sur le jeu de données créé pour ouvrir la tâche d'évaluation. Dans l'onglet Samples , cliquez sur Import Data.

-
Créez une nouvelle configuration d'exécution. Dans l'onglet Run Settings, cliquez sur New Configuration et configurez les paramètres selon vos besoins.

-
Créez une configuration d'évaluation. Dans l'onglet Evaluator Settings , cliquez sur New Configuration et sélectionnez une configuration et un type d'évaluateur selon vos besoins.

-
Exécutez une expérience d'évaluation. Dans l'onglet Samples , sélectionnez les échantillons à évaluer, cliquez sur Run Experiment , saisissez un nom d'expérience et sélectionnez une Run Configuration et une Evaluation Configuration selon vos besoins.

-
Consultez les résultats de l'évaluation. Une fois l'expérience créée, vous êtes automatiquement redirigé vers la page des détails de l'expérience. Vous pouvez également accéder à l'onglet Run History et sélectionner l'expérience cible.

Configuration de production
Utiliser une base de données vectorielle Alibaba Cloud
PAI-RAG prend en charge la création d'une bibliothèque de récupération vectorielle à l'aide d'Elasticsearch, d'Hologres, d'OpenSearch ou d'RDS for PostgreSQL.
Hologres, Elasticsearch et RDS for PostgreSQL permettent un accès via le réseau interne ou Internet public. Nous vous recommandons d'utiliser le réseau interne pour l'accès.
OpenSearch ne prend en charge que l'accès via Internet public.
Elasticsearch
Préparer une instance
Si vous ne disposez pas d'instance Elasticsearch, connectez-vous à la console Alibaba Cloud Elasticsearch et créez-en une avec les paramètres suivants. Pour plus d'informations, consultez la rubrique Créer une instance Alibaba Cloud Elasticsearch.
Region and Availability Zone : sélectionnez la même région que votre service EAS.
VPC : sélectionnez le même VPC que votre service EAS afin d'autoriser l'accès via le réseau interne.
Instance Type : sélectionnez Standard.
Scenario Initialization Configuration : sélectionnez General-purpose.
Paramètres du service
Vous devez autoriser votre instance Elasticsearch à créer automatiquement des index. Sur la page de votre instance Elasticsearch, cliquez sur Modify Configurations et définissez le paramètre Auto Create Index sur Allow Auto Create Index. Pour plus d'informations, consultez la rubrique Configurer les paramètres YML.
Vector Database Type : sélectionnez Elasticsearch.
Private Endpoint and Port : sur la page des détails de votre instance Elasticsearch, repérez le point de terminaison privé et le port dans la section Informations de base. Le format est le suivant :
http://<private_endpoint>:<private_port>.-
Index Name : le comportement du système dépend du fait que vous saisissiez un nom d'index nouveau ou existant.
-
Saisir un nouveau nom : EAS crée automatiquement un index compatible avec PAI-RAG lors du déploiement.
ImportantPar défaut, Alibaba Cloud Elasticsearch n'autorise pas la création automatique d'index. Sur la page de votre instance Elasticsearch, cliquez sur Modify Configurations, mettez à jour le fichier YML et définissez le paramètre Auto Create Index sur Allow Auto Create Index. Pour plus d'informations, consultez la rubrique Configurer les paramètres YML.
Saisir un nom existant : EAS utilise directement l'index existant. Assurez-vous que l'index a été créé par le service PAI-RAG afin de maintenir la compatibilité structurelle.
-
Account et Password : configurez le nom d'utilisateur et le mot de passe que vous avez définis lors de la création de l'instance Elasticsearch. Le nom d'utilisateur par défaut est elastic. Si vous avez oublié le mot de passe, vous pouvez réinitialiser le mot de passe d'accès d'une instance.
OSS Path : sélectionnez un répertoire de stockage OSS existant dans la région actuelle. Vous pouvez gérer votre base de connaissances en montant un chemin OSS.
Gérer les index avec Kibana
Elasticsearch propose des fonctionnalités de gestion des index. Pour plus d'informations, consultez la rubrique Se connecter à un cluster Elasticsearch à l'aide d'un client Kibana.
Hologres
Assurez-vous d'avoir acheté une instance Hologres.
Vector Database Type : sélectionnez Hologres.
Invocation Information : les informations d'hôte pour le VPC spécifié. Accédez à la page des détails de l'instance dans la console Hologres. Dans la section Network Information, cliquez sur Copy à côté de Specified VPC pour obtenir le point de terminaison. L'hôte correspond à la partie de ce point de terminaison située avant
:80.Database Name : le nom de la base de données de l'instance Hologres. Si vous n'en possédez pas, consultez la rubrique Créer une base de données.
Account : un compte utilisateur personnalisé que vous avez créé. Pour plus d'informations, consultez la rubrique Créer un utilisateur personnalisé. Pour le champ Select member role, sélectionnez Instance Super Administrator (SuperUser).
Password : le mot de passe du compte utilisateur personnalisé.
-
Table Name : le comportement du système dépend du fait que vous saisissiez un nom de table nouveau ou existant.
Saisir un nouveau nom : EAS crée automatiquement une table compatible avec PAI-RAG lors du déploiement.
Saisir un nom existant : EAS utilise directement la table existante. Assurez-vous que la table a été créée par le service PAI-RAG afin de maintenir la compatibilité structurelle.
OSS Path : sélectionnez un répertoire de stockage OSS existant dans la région actuelle. Vous pouvez gérer votre base de connaissances en montant un chemin OSS.
OpenSearch
Préparer une instance
Si vous ne disposez pas d'instance OpenSearch, connectez-vous à la console OpenSearch et créez-en une avec les paramètres suivants. Pour plus d'informations, consultez la rubrique Acheter une instance OpenSearch Vector Search Edition.
Product Version : sélectionnez Vector Search Edition.
Region and Availability Zone et VPC : OpenSearch ne prend en charge que l'accès via Internet public, il n'est donc pas nécessaire que ces paramètres soient cohérents avec ceux de votre service EAS.
Paramètres du service
Vector Database Type : sélectionnez OpenSearch.
-
Endpoint : le point de terminaison public de votre instance OpenSearch Vector Search Edition.
RemarqueVous devez activer l'accès public pour l'instance OpenSearch Vector Search Edition et ajouter l'adresse IP publique EAS à la liste d'autorisation.
Instance ID : obtenez l'ID de l'instance à partir de la liste des instances OpenSearch Vector Search Edition.
Username et Password : le nom d'utilisateur et le mot de passe que vous avez définis lors de la création de l'instance OpenSearch Vector Search Edition.
-
Table Name : vous devez d'abord créer une table d'index répondant aux exigences. Pour créer une table, consultez la rubrique Configurer une instance et utilisez les paramètres clés suivants :
-
Sélectionnez le modèle de scénario généraliste et importez le fichier de configuration suivant pour la configuration des champs.
Dans le schéma Index Schema, assurez-vous que la dimension du vecteur correspond à la dimension du modèle d'incorporation. Pour le paramètre Distance Type, nous vous recommandons de sélectionner InnerProduct.
-
Connectez-vous à la console Alibaba Cloud OpenSearch Vector Search Edition et cliquez sur l'ID de votre instance pour accéder à la page Instance Details.
Accédez à la page de gestion des tables pour gérer la table d'index. Pour plus d'informations, consultez la rubrique Gestion des tables.

Accédez à la page de gestion des vecteurs pour exécuter des tests de requête et gérer les données. Pour plus d'informations, consultez la rubrique Gestion des vecteurs.
-
Si vous ne disposez pas d'instance RDS for PostgreSQL, accédez à la page de création d'instance RDS, configurez les paramètres clés suivants et suivez les instructions à l'écran pour finaliser le paiement et l'activation. Pour plus d'informations, consultez la rubrique Créer une instance ApsaraDB RDS for PostgreSQL.
Engine : sélectionnez PostgreSQL.
VPC : sélectionnez le même VPC que votre service EAS afin d'autoriser l'accès via le réseau interne.
Privileged Account : dans la section More Configurations, configurez un compte privilégié. Sélectionnez Set Now et configurez le compte de base de données ainsi que le mot de passe.
-
Créez une base de données.
Cliquez sur le nom de l'instance. Dans le volet de navigation de gauche, cliquez sur Database Management, puis sur Create Database.
Dans le panneau Create Database, configurez le Database (DB) Name. Pour le champ Authorized Account, sélectionnez le compte privilégié que vous avez créé. Pour plus d'informations sur les autres paramètres, consultez la rubrique Créer une base de données et un compte.
Une fois les paramètres configurés, cliquez sur Create.
Vector Database Type : sélectionnez RDS for PostgreSQL.
Host address : le point de terminaison interne de votre instance RDS for PostgreSQL. Vous pouvez le trouver sur la page Database Connection de l'instance dans la console ApsaraDB RDS for PostgreSQL.
Port : la valeur par défaut est 5432. Saisissez le port réel s'il est différent.
Database : le Authorized Account de la base de données doit être un privileged account. Pour plus d'informations, consultez la rubrique Créer une base de données et un compte. Vous devez également installer les extensions vector et jieba pour la base de données.
Table Name : un nom personnalisé pour la table de la base de données.
Account et Password : le nom d'utilisateur autorisé et le mot de passe que vous avez configurés lors de la création de la base de données. Pour savoir comment créer un compte privilégié, consultez la rubrique Créer une base de données et un compte. Pour le champ Account Type, sélectionnez Privileged Account.
OSS Path : sélectionnez un répertoire de stockage OSS existant dans la région actuelle. Vous pouvez gérer votre base de connaissances en montant un chemin OSS.
Accédez à la liste des instances RDS, basculez vers la région où se trouve votre instance et cliquez sur le nom de l'instance pour accéder à la page des détails de l'instance.
Dans le volet de navigation de gauche, sélectionnez Database Management. Dans la colonne Actions de la base de données cible, cliquez sur SQL Query.
Saisissez le Database Account et le Database Password, qui correspondent aux identifiants du compte privilégié que vous avez définis lors de la création de l'instance RDS for PostgreSQL, puis cliquez sur Sign in.
Une fois connecté, vous pouvez interroger la liste des bases de connaissances importées dans l'instance de base de données.

Lorsque vous déployez le service d'embedding sur EAS, utilisez l'élément de configuration VPC pour sélectionner le même VPC et la même zone que l'instance ECS qui héberge la base de données vectorielle. Cela garantit une communication à faible latence via le réseau interne.
Pour les scénarios inter-régions, utilisez Cloud Enterprise Network (CEN) ou une connexion d'appairage VPC pour connecter les réseaux.
La passerelle partagée EAS prend en charge l'appel via une adresse VPC, et la passerelle dédiée prend en charge l'appel entre régions.
Les bases de données vectorielles sont des charges de travail intensives en mémoire et en E/S. Pour une base de données vectorielle autogérée, choisissez un type d'instance ECS avec une grande capacité de mémoire, tel que r5,4xlarge (16 vCPU, 128 GiB). Les familles d'instances optimisées pour la mémoire r5, r6 et re4 offrent entre 16 GiB et 1920 GiB de mémoire, ce qui vous permet de sélectionner un type d'instance en fonction de la taille de votre base de connaissances.
Dans un environnement de production, mettez en œuvre votre propre solution de sauvegarde et de haute disponibilité pour les données vectorielles. EAS ne gère pas les données vectorielles pour vous.
Gérer les index et les données
RDS for PostgreSQL
Préparer une instance
Paramètres du service
Assurez-vous d'avoir créé une instance RDS for PostgreSQL.
Gestion de la base de données
FAQ
Q : Comment déployer un service de récupération vectorielle localement sur PAI
Solution
Déploiement hybride : embedding sur GPU avec une base de données vectorielle sur CPU
Architecture : EAS prend en charge un déploiement hybride dans lequel le modèle d'embedding s'exécute sur une instance accélérée par GPU et une base de données vectorielle autogérée s'exécute sur une instance ECS basée sur un CPU. Par exemple, déployez le modèle d'embedding sur ecs.gn6e-c12g1,12xlarge, qui fournit quatre GPU NVIDIA V100, et exécutez Milvus ou Elasticsearch sur un type d'instance ECS optimisé pour la mémoire des séries r5 ou r6. Cette combinaison dissocie les besoins de calcul liés à la génération d'embeddings des exigences de mémoire liées au stockage et à la récupération des vecteurs.
Cette approche convient aux environnements de développement et de test à petite échelle. Pour un environnement de production, évaluez les stratégies de haute disponibilité et de sauvegarde des données, ou utilisez l'un des services de base de données vectorielle gérés par Alibaba Cloud décrits plus haut dans cette rubrique.
Configuration réseau :
Considérations relatives aux performances :
Q : Un service de récupération vectorielle peut-il être déployé sur DSW ?
Data Science Workshop (DSW) est adapté à la validation des modèles de langage de grande taille (LLM) et au débogage du code. Ne l'utilisez pas pour déployer un service de récupération vectorielle multi-conteneurs incluant des composants Milvus, d'embedding et de reranker. Pour un déploiement de génération augmentée par récupération (RAG) adapté à la production, utilisez Elastic Algorithm Service (EAS).