Aphrodite est le moteur backend officiel de Pygmalionai. Il est conçu pour servir de point de terminaison d'inférence pour le site Web de Pygmalionai et pour permettre de servir des modèles compatibles avec le visage étreint à un grand nombre d'utilisateurs avec des vitesses rapides flamboyantes (grâce à l'attention paginée de VLLM).
Aphrodite s'appuie sur et intègre le travail exceptionnel de divers projets.
Le calcul nécessaire pour le développement d'Aphrodite est fourni par ARC Calcul.
(09/2024) V0.6.1 est ici. Vous pouvez désormais charger des modèles FP16 dans des formats quant FP2 aux FP7, pour obtenir un débit extrêmement élevé et enregistrer sur la mémoire.
(09/2024) V0.6.0 est libéré, avec d'énormes améliorations de débit, de nombreux nouveaux formats quantiques (y compris FP8 et LLM-Compressor), le tenseur asymétrique parallèle, le pipeline parallèle et plus encore! Veuillez consulter la documentation exhaustive des guides utilisateur et développeur.
Installez le moteur:
pip install -U aphrodite-engineEnsuite, lancez un modèle:
aphrodite run meta-llama/Meta-Llama-3.1-8B-InstructCela créera un serveur API compatible OpenAI qui peut être accessible au port 2242 du localhost. Vous pouvez brancher l'API dans une interface utilisateur qui prend en charge OpenAI, comme SillyTavern.
Veuillez vous référer à la documentation de la liste complète des arguments et des drapeaux que vous pouvez transmettre au moteur.
Vous pouvez jouer avec le moteur dans la démo ici:
De plus, nous fournissons une image Docker pour un déploiement facile. Voici une commande de base pour vous aider à démarrer:
docker run --runtime nvidia --gpus all
-v ~ /.cache/huggingface:/root/.cache/huggingface
# --env "CUDA_VISIBLE_DEVICES=0,1,2,3,4,5,6,7"
-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 "Cela tirera l'image du moteur Aphrodite (~ 8GIB Download) et lancera le moteur avec le modèle LLAMA-3.1-8B-Istruct au port 2242.
Pour les utilisateurs de Windows, il est recommandé d'utiliser Tabbyapi à la place, si vous n'avez pas besoin de support par lots.
Pour les appareils pris en charge, voir ici. D'une manière générale, tous les GPU semi-modernes sont pris en charge - jusqu'à Pascal (GTX 10xx, P40, etc.), nous prenons également en charge les GPU AMD, les CPU Intel et les GPU, Google TPU et AWS Inferentia.
Par conception, Aphrodite occupe 90% du VRAM de votre GPU. Si vous ne servez pas de LLM à grande échelle, vous voudrez peut-être limiter la quantité de mémoire qu'il prend. Vous pouvez le faire dans l'exemple de l'API en lançant le serveur avec le --gpu-memory-utilization 0.6 (0,6 signifie 60%).
Vous pouvez afficher la liste complète des commandes en exécutant aphrodite run --help .
Le moteur Aphrodite n'aurait pas été possible sans le travail phénoménal d'autres projets open-source. Les crédits vont à:
Tout le monde est invité à contribuer. Vous pouvez prendre en charge le projet en ouvrant les demandes de traction de nouvelles fonctionnalités, correctifs ou améliorations générales UX.