Los modelos de lenguaje grande (LLM) son tecnología de vanguardia con la que estoy experimentando. Si bien los servicios administrados como OpenAI ofrecen un uso rentable de un LLM, hay escenarios en los que es necesario ejecutar un LLM localmente. Esto puede deberse al manejo de datos confidenciales o a la necesidad de resultados de alta calidad en idiomas distintos del inglés. Los LLM de código abierto igualan la calidad de los principales actores como OpenAI, pero a menudo exigen importantes recursos informáticos. La implementación de modelos más pequeños en plataformas como AWS Lambda puede ofrecer alternativas rentables.
Mi objetivo con este proyecto es implementar un LLM de código abierto más pequeño, específicamente Microsoft Phi-2, un modelo de 2.700 millones de parámetros que rivaliza con los resultados de modelos de código abierto más grandes. Exploraré LLM y lambdas basadas en Docker, evaluaré el rendimiento y evaluaré los costos para aplicaciones del mundo real.
Asegúrese de que estén instaladas las herramientas necesarias, incluida una cuenta de AWS, AWS CLI, Docker y Python.
lambda_function.py
.requirements.txt
, comenzando con la biblioteca de AWS ( boto3
).Dockerfile
especificando la composición de la imagen de Docker.docker-compose.yml
para ejecutar y construir el contenedor.docker-compose up
.llama-cpp-python
a requirements.txt
. Reconstruya el contenedor y pruébelo con un mensaje real usando curl
.
Ejecute la implementación utilizando el script proporcionado ( deploy.sh
). Esto implica crear o verificar el repositorio de ECR, la función de IAM, la autenticación Docker-ECR, la construcción de imágenes de Docker, la carga de imágenes de ECR, la adquisición de ARN de la función de IAM, la verificación, configuración e implementación de la función Lambda.
Utilice la URL de la función Lambda obtenida durante la implementación para realizar pruebas con un mensaje.
Conocimiento práctico de programación, Docker, AWS y Python.
No dude en explorar, modificar y ejecutar los scripts proporcionados para implementar y probar LLM de código abierto en AWS Lambda.