Allgemeine Einführung
Petals ist ein Open-Source-Projekt, das vom BigScience Workshop entwickelt wurde, um große Sprachmodelle (Large Language Models, LLMs) über einen verteilten Rechenansatz auszuführen. Benutzer können LLMs wie Llama 3.1, Mixtral, Falcon und BLOOM zu Hause mit Consumer-GPUs oder Google Colab ausführen und feinabstimmen. Petals verwendet einen BitTorrent-ähnlichen Ansatz, um verschiedene Teile des Modells auf die Geräte mehrerer Benutzer zu verteilen, was eine effiziente Inferenz und Feinabstimmung ermöglicht.
Funktionsliste
- Ausführen großer SprachmodelleUnterstützt werden die Modelle Llama 3.1 (bis zu 405B), Mixtral (8x22B), Falcon (40B+) und BLOOM (176B).
- verteilte SchlussfolgerungAusführen des Modells über ein verteiltes Netzwerk mit Single-Batch-Inferenzgeschwindigkeiten von bis zu 6 Token/Sek. (Llama 2 70B) und 4 Token/Sek. (Falcon 180B).
- Schnelle FeinabstimmungUnterstützung für eine schnelle Feinabstimmung der Modelle durch den Benutzer für eine Vielzahl von Aufgaben.
- von der Gemeinschaft gesteuertAuf der Grundlage einer Gemeinschaft von Nutzern, die GPU-Ressourcen gemeinsam nutzen, können Nutzer ihre eigenen GPUs beisteuern, um die Rechenleistung von Petals zu erhöhen.
- Flexible APIPyTorch: Bietet eine flexible API ähnlich wie PyTorch und Transformers, mit Unterstützung für benutzerdefinierte Pfade und die Anzeige von versteckten Status.
- DatenschutzDatenverarbeitung: Die Datenverarbeitung erfolgt über ein öffentliches Netz, und die Benutzer können private Netze einrichten, um sensible Daten zu schützen.
Hilfe verwenden
Installation und Nutzung
- Installation von Abhängigkeiten::
- Linux + Anaconda::
conda install pytorch pytorch-cuda=11.7 -c pytorch -c nvidia pip install git+https://github.com/bigscience-workshop/petals python -m petals.cli.run_server meta-llama/Meta-Llama-3.1-405B-Instruct
- Fenster + WSLBitte beachten Sie Wiki.
- Docker::
sudo docker run -p 31330:31330 --ipc host --gpus all --volume petals-cache:/cache --rm \ learningathome/petals:main \ python -m petals.cli.run_server --port 31330 meta-llama/Meta-Llama-3.1-405B-Instruct
- macOS + Apple M1/M2-GPUs::
brew install python python3 -m pip install git+https://github.com/bigscience-workshop/petals python3 -m petals.cli.run_server meta-llama/Meta-Llama-3.1-405B-Instruct
- Linux + Anaconda::
- Betriebsmodell::
- Wählen Sie eines der verfügbaren Modelle aus, zum Beispiel:
from transformers import AutoTokenizer from petals import AutoDistributedModelForCausalLM modell_name = "meta-llama/Meta-Llama-3.1-405B-Instruct" tokenizer = AutoTokenizer.from_pretrained(model_name) model = AutoDistributedModelForCausalLM.from_pretrained(model_name) inputs = tokeniser("Eine Katze saß", return_tensors="pt")["input_ids"] outputs = model.generate(inputs, max_new_tokens=5) print(tokeniser.decode(outputs[0]))
- Wählen Sie eines der verfügbaren Modelle aus, zum Beispiel:
- Beitrag GPU::
- Die Nutzer können die Rechenleistung von Petals durch den Anschluss eines Grafikprozessors erhöhen. Modell Nabe.
Hauptfunktionen
- Modell auswählen: Zugang Blütenblätter Website das gewünschte Modell aus.
- Modelle ladenLaden Sie das Modell und führen Sie es gemäß den oben beschriebenen Installationsschritten aus.
- Feinabstimmung des ModellsVerwenden Sie die von Petals bereitgestellte API zur Feinabstimmung des Modells für eine Vielzahl von Aufgaben.
- Text generierenTextgenerierung über verteilte Netzwerke für Chatbots und interaktive Anwendungen.