Moteur Aphrodite : un moteur d'inférence LLM efficace qui supporte plusieurs formats de quantification et l'inférence distribuée.

Introduction générale

Aphrodite Engine est le moteur dorsal officiel de PygmalionAI, conçu pour fournir un point final d'inférence pour les sites PygmalionAI et pour soutenir le déploiement rapide de modèles compatibles avec Hugging Face. Le moteur exploite la technologie Paged Attention de vLLM pour permettre une gestion efficace des K/V et un traitement séquentiel par lots, ce qui améliore considérablement la vitesse d'inférence et l'utilisation de la mémoire. aphrodite Engine prend en charge un large éventail de formats de quantification et d'inférence distribuée, et convient à une large gamme d'appareils GPU et TPU modernes.

 

Liste des fonctions

  • Traitement par lots en continuLes résultats de l'analyse de l'information sont présentés dans le tableau suivant : Traiter efficacement les demandes multiples et améliorer la vitesse d'inférence.
  • Paged AttentionOptimiser la gestion des K/V pour améliorer l'utilisation de la mémoire.
  • Noyau optimisé pour CUDA: Amélioration de la performance de l'inférence.
  • Soutien quantitatifLe système de quantification de l'AQLM est compatible avec de nombreux formats de quantification tels que l'AQLM, l'AWQ, le Bitsandbytes, etc.
  • inférence distribuéeCache KV : prise en charge du cache KV 8 bits pour les exigences en matière de longueur de contexte et de débit élevés.
  • Prise en charge de plusieurs appareilsCompatible avec les GPU NVIDIA, AMD, Intel et les TPU Google.
  • Déploiement DockerLes images Docker sont fournies pour simplifier le processus de déploiement.
  • Compatible avec l'APILa technologie de l'IA est compatible avec les API de l'OpenAI, ce qui facilite l'intégration dans les systèmes existants.

 

Utiliser l'aide

Processus d'installation

  1. Installation des dépendances: :
    • Assurez-vous que les versions 3.8 à 3.12 de Python sont installées sur votre système.
    • Pour les utilisateurs de Linux, la commande suivante est recommandée pour installer les dépendances :
     sudo apt update && sudo apt install python3 python3-pip git wget curl bzip2 tar
    
    • Pour les utilisateurs de Windows, une installation WSL2 est recommandée :
     wsl --install
    sudo apt update && sudo apt install python3 python3-pip git wget curl bzip2 tar
    
  2. Installation du moteur Aphrodite: :
    • Utilisez pip pour l'installation :
     pip install -U aphrodite-engine
    
  3. modèle d'amorçage: :
    • Exécutez la commande suivante pour démarrer le modèle : bash
      aphrodite run meta-llama/Meta-Llama-3.1-8B-Instruct
    • Cela créera un serveur API compatible avec OpenAI avec un port par défaut de 2242.

Déploiement avec Docker

  1. Extraction d'une image Docker: :
   docker pull alpindale/aphrodite-openai:latest
  1. Exécution d'un conteneur Docker: :
   docker run --runtime nvidia --gpus all \
-v ~/.cache/huggingface:/root/.cache/huggingface \
-p 2242:2242 \
--ipc=host \
alpindale/aphrodite-openai:latest \
--model NousResearch/Meta-Llama-3.1-8B-Instruct \
--tensor-parallel-size 8 \
--api-keys "sk-empty"

Principales fonctions

  1. Traitement par lots en continu: :
    • Aphrodite Engine améliore considérablement la vitesse d'inférence grâce à la technologie de traitement par lots en continu, qui permet de traiter plusieurs requêtes en même temps. Les utilisateurs n'ont qu'à spécifier les paramètres de traitement par lots au démarrage.
  2. Paged Attention: :
    • Cette technologie optimise la gestion des K/V et améliore l'utilisation de la mémoire. Aucune configuration supplémentaire n'est requise de la part de l'utilisateur et l'optimisation est automatiquement appliquée par le système.
  3. Soutien quantitatif: :
    • Plusieurs formats de quantification sont pris en charge, tels que AQLM, AWQ, Bitsandbytes, etc. L'utilisateur peut spécifier le format de quantification souhaité lorsqu'il lance le modèle :
     aphrodite run --quant-format AQLM meta-llama/Meta-Llama-3.1-8B-Instruct
    
  4. inférence distribuée: :
    • Prise en charge du cache KV 8 bits pour les exigences de longueur de contexte et de débit élevés. Les utilisateurs peuvent démarrer le raisonnement distribué avec la commande suivante :
     aphrodite run --tensor-parallel-size 8 meta-llama/Meta-Llama-3.1-8B-Instruct
    
  5. Intégration de l'API: :
    • Aphrodite Engine fournit des API compatibles avec OpenAI pour faciliter l'intégration dans les systèmes existants. Les utilisateurs peuvent démarrer le serveur API avec la commande suivante : bash
      aphrodite run --api-keys "your-api-key" meta-llama/Meta-Llama-3.1-8B-Instruct
© déclaration de droits d'auteur

Articles connexes

Pas de commentaires

Vous devez être connecté pour participer aux commentaires !
S'inscrire maintenant
aucun
Pas de commentaires...