Partager via


Test de charge d'une application de chat Python en utilisant la méthode RAG avec Locust

Cet article fournit le processus permettant d'effectuer des tests de charge sur une application de conversation Python à l'aide du modèle de génération augmentée par récupération (RAG) avec Locust, un outil open source populaire de test de charge. L’objectif principal du test de charge est de s’assurer que la charge attendue sur votre application de conversation ne dépasse pas le quota actuel de transactions de service Azure OpenAI par minute (TPM). En simulant le comportement de l’utilisateur sous une charge importante, vous pouvez identifier les goulots d’étranglement potentiels et les problèmes d’extensibilité dans votre application. Ce processus est essentiel pour garantir que votre application de conversation reste réactive et fiable, même en cas de forte quantité de demandes utilisateur.

Note

Cet article utilise un ou plusieurs modèles d’application IA comme base pour les exemples et les conseils qu’il contient. Les modèles d’application IA vous fournissent des implémentations de référence bien gérées qui sont faciles à déployer. Ils aident à garantir un point de départ de haute qualité pour vos applications IA.

Prerequisites

Ouvrir l’exemple d’application de test de charge

Le test de charge est un test Locust dans la solution d'application de chat Python. Revenez à cet article, déployez la solution, puis utilisez cet environnement de développement de conteneur pour effectuer les étapes suivantes.

Exécuter le test

  1. Installez le package Locust, qui est utilisé pour simuler des utilisateurs simultanés et générer la charge sur votre application de conversation :

    python -m pip install locust
    
  2. Démarrez Locust, qui utilise le fichier de test Locust locustfile.py. Vous pouvez le trouver à la racine du référentiel. L’exemple comporte une ChatUser classe qui simule un utilisateur qui pose des questions et reçoit des réponses de l’application de conversation.

    locust ChatUser
    
  3. Une fois locust démarré, il lance une interface web locale que vous utilisez pour configurer et surveiller le test de charge. Ouvrez le site web Locust en cours d’exécution, tel que http://localhost:8089.

  4. Entrez les valeurs suivantes dans le site web Locust.

    Propriété Valeur
    Nombre d’utilisateurs 20
    Accélérer 1
    Host https://<YOUR-CHAT-APP-URL>.azurewebsites.net (URL de base de votre application de conversation déployée)

    Capture d’écran montrant le test Locust avec les valeurs renseignées.

  5. Sélectionnez Démarrer Swarm pour démarrer le test.

  6. Sélectionnez Graphiques pour surveiller la progression des tests.

    Capture d’écran montrant le graphique Locust pendant l'exécution d'un test.

Nettoyer les ressources

Lorsque vous avez terminé le test de charge, nettoyez les ressources. Les ressources Azure créées dans cet article sont facturées dans votre abonnement Azure. Si vous pensez ne plus avoir besoin de ces ressources, supprimez-les pour éviter des frais supplémentaires. Après avoir supprimé des ressources spécifiques à cet article, n’oubliez pas de revenir à l’autre tutoriel de l’application de conversation et de suivre les étapes de nettoyage.

Revenez à l’article de l’application de conversation pour nettoyer ces ressources.

Obtenir de l’aide

Si vous rencontrez des problèmes lors de l’utilisation de ce testeur de charge, ajoutez votre problème à la page web Problèmes du référentiel.