Allgemeine Einführung
Aphrodite Engine ist die offizielle Backend-Engine für PygmalionAI. Sie wurde entwickelt, um einen Inferenz-Endpunkt für PygmalionAI-Sites bereitzustellen und die schnelle Bereitstellung von Hugging-Face-kompatiblen Modellen zu unterstützen. Die Engine nutzt die Paged Attention-Technologie von vLLM, um eine effiziente K/V-Verwaltung und sequenzielle Stapelverarbeitung zu ermöglichen, was die Inferenzgeschwindigkeit und die Speichernutzung erheblich verbessert. aphrodite Engine unterstützt eine Vielzahl von Quantisierungsformaten und verteilte Inferenz und ist für eine Vielzahl moderner GPU- und TPU-Geräte geeignet.
Funktionsliste
- Kontinuierliche StapelverarbeitungEffizienter Umgang mit mehreren Anfragen und schnellere Inferenz.
- Ausgerufene AufmerksamkeitOptimieren Sie die K/V-Verwaltung, um die Speichernutzung zu verbessern.
- CUDA-optimierter Kernel: Verbesserung der Inferenzleistung.
- Quantitative UnterstützungUnterstützt mehrere Quantisierungsformate wie AQLM, AWQ, Bitsandbytes, usw.
- verteilte Schlussfolgerung8-Bit-KV-Cache-Unterstützung für hohe Kontextlängen und hohe Durchsatzanforderungen.
- Multi-Geräte-UnterstützungKompatibel mit NVIDIA, AMD, Intel GPUs und Google TPUs.
- Docker-BereitstellungBereitstellung von Docker-Images zur Vereinfachung des Bereitstellungsprozesses.
- API-kompatibelUnterstützt OpenAI-kompatible APIs zur einfachen Integration in bestehende Systeme.
Hilfe verwenden
Ablauf der Installation
- Installation von Abhängigkeiten::
- Stellen Sie sicher, dass die Python-Versionen 3.8 bis 3.12 auf Ihrem System installiert sind.
- Für Linux-Benutzer wird der folgende Befehl empfohlen, um die Abhängigkeiten zu installieren:
sudo apt update && sudo apt install python3 python3-pip git wget curl bzip2 tar
- Für Windows-Benutzer wird eine WSL2-Installation empfohlen:
wsl --install sudo apt update && sudo apt install python3 python3-pip git wget curl bzip2 tar
- Einbau des Aphrodite-Motors::
- Verwenden Sie pip zur Installation:
pip install -U aphrodite-engine
- Grundierungsmodell::
- Führen Sie den folgenden Befehl aus, um das Modell zu starten:
bash
aphrodite run meta-llama/Meta-Llama-3.1-8B-Instruct
- Dadurch wird ein OpenAI-kompatibler API-Server mit einem Standard-Port von 2242 erstellt.
- Führen Sie den folgenden Befehl aus, um das Modell zu starten:
Bereitstellen mit Docker
- Ziehen eines Docker-Images::
docker pull alpindale/aphrodite-openai:latest
- Ausführen eines Docker-Containers::
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"
Hauptfunktionen
- Kontinuierliche Stapelverarbeitung::
- Die Aphrodite-Engine verbessert die Geschwindigkeit der Schlussfolgerungen durch die Technologie der kontinuierlichen Stapelverarbeitung, mit der mehrere Anfragen gleichzeitig verarbeitet werden können. Die Benutzer geben einfach die Parameter für die Stapelverarbeitung beim Start an.
- Ausgerufene Aufmerksamkeit::
- Diese Technologie optimiert die K/V-Verwaltung und verbessert die Speichernutzung. Es ist keine zusätzliche Konfiguration durch den Benutzer erforderlich, und die Optimierung wird automatisch vom System vorgenommen.
- Quantitative Unterstützung::
- Es werden mehrere Quantisierungsformate unterstützt, z. B. AQLM, AWQ, Bitsandbytes, usw. Der Benutzer kann das gewünschte Quantisierungsformat beim Start des Modells angeben:
aphrodite run --quant-format AQLM meta-llama/Meta-Llama-3.1-8B-Instruct
- verteilte Schlussfolgerung::
- Unterstützt 8-Bit-KV-Cache für hohe Kontextlängen und hohe Durchsatzanforderungen. Benutzer können das verteilte Reasoning mit dem folgenden Befehl starten:
aphrodite run --tensor-parallel-size 8 meta-llama/Meta-Llama-3.1-8B-Instruct
- API-Einbindung::
- Aphrodite Engine bietet OpenAI-kompatible APIs zur einfachen Integration in bestehende Systeme. Benutzer können den API-Server mit dem folgenden Befehl starten:
bash
aphrodite run --api-keys "Ihr-api-key" meta-llama/Meta-Llama-3.1-8B-Instruct
- Aphrodite Engine bietet OpenAI-kompatible APIs zur einfachen Integration in bestehende Systeme. Benutzer können den API-Server mit dem folgenden Befehl starten: