Prueba de carga de la aplicación de chat de Python mediante RAG con locust
En este artículo se proporciona el proceso para realizar pruebas de carga en una aplicación de chat de Python mediante el patrón RAG con Locust, una popular herramienta de prueba de carga de código abierto. El objetivo principal de las pruebas de carga es asegurarse de que la carga esperada en la aplicación de chat no supere la cuota actual de transacciones de Azure OpenAI por minuto (TPM). Al simular el comportamiento del usuario bajo una carga pesada, puede identificar posibles cuellos de botella y problemas de escalabilidad en la aplicación. Este proceso es fundamental para asegurarse de que la aplicación de chat sigue respondiendo y confiable, incluso cuando se enfrenta a un gran volumen de solicitudes de usuario.
Vea el vídeo de demostración para obtener más información sobre las pruebas de carga de la aplicación de chat.
Nota:
En este artículo se usan una o varias plantillas de aplicación de IA como base para los ejemplos e instrucciones del artículo. Las plantillas de aplicación de IA proporcionan implementaciones de referencia bien mantenidas y fáciles de implementar que ayudan a garantizar un punto de partida de alta calidad para las aplicaciones de IA.
Requisitos previos
Suscripción de Azure. Crear una cuenta gratuita
Acceso concedido a Azure OpenAI en la suscripción de Azure que quiera. Actualmente, solo la aplicación concede acceso a este servicio. Para solicitar acceso a Azure OpenAI, rellene el formulario en https://aka.ms/oai/access.
Los contenedores de desarrollo están disponibles para ambos ejemplos, con todas las dependencias necesarias para completar este artículo. Puede ejecutar los contenedores de desarrollo en GitHub Codespaces (en un explorador) o localmente mediante Visual Studio Code.
- Solo necesita una cuenta de GitHub
Aplicación de chat de Python con RAG : si configuró la aplicación de chat para usar una de las soluciones de equilibrio de carga, este artículo le ayudará a probar el equilibrio de carga. Las soluciones de equilibrio de carga incluyen Azure Container Apps.
Abrir aplicación de ejemplo de prueba de carga
La prueba de carga se encuentra en la solución de la aplicación de chat de Python como una prueba de locust. Debe volver a ese artículo, implementar la solución y, a continuación, usar ese entorno de desarrollo de contenedores de desarrollo para completar los pasos siguientes.
Ejecutar la prueba
Instale las dependencias de la prueba de carga.
python3 -m pip install -r requirements-dev.txt
Inicie Locust, que usa el archivo de prueba locust: locustfile.py se encuentra en la raíz del repositorio.
locust
Abra el sitio web locust en ejecución, como
http://localhost:8089
.Escriba lo siguiente en el sitio web de Locust.
Propiedad Valor Número de usuarios 20 Ascenso 1 Host https://<YOUR-CHAT-APP-URL>.azurewebsites.net
Seleccione Iniciar swarm para iniciar la prueba.
Seleccione Gráficos para ver el progreso de la prueba.
Limpieza de recursos
Cuando haya terminado con las pruebas de carga, limpie los recursos. Los recursos Azure creados en este artículo se facturan a su suscripción Azure. Si no espera necesitar estos recursos en el futuro, elimínelos para evitar incurrir en más gastos. Después de eliminar recursos específicos de este artículo, recuerde volver al otro tutorial de la aplicación de chat y seguir los pasos de limpieza.
Vuelva al artículo de la aplicación de chat para limpiar esos recursos.
Obtener ayuda
Si tiene problemas para usar este evaluador de carga, registre el problema en los problemas del repositorio.