Modelle ins ONNX-Format konvertieren
Das AI Toolkit unterstützt das Open Neural Network Exchange (ONNX)-Format für die lokale Ausführung von Modellen. ONNX ist ein offener Standard zur Darstellung von Machine-Learning-Modellen, der eine gemeinsame Menge von Operatoren und ein Dateiformat definiert, das die Ausführung von Modellen auf verschiedenen Hardwareplattformen ermöglicht.
Um Modelle aus anderen Katalogen, wie Microsoft Foundry oder Hugging Face, im AI Toolkit zu verwenden, müssen Sie diese zuerst in das ONNX-Format konvertieren.
Dieses Tutorial führt Sie durch die Konvertierung von Hugging Face-Modellen in das ONNX-Format und deren Laden in das AI Toolkit.
Umgebung einrichten
Zum Konvertieren von Modellen von Hugging Face oder Microsoft Foundry benötigen Sie das Tool Model Builder.
Folgen Sie diesen Schritten, um Ihre Umgebung einzurichten
-
Stellen Sie sicher, dass Sie entweder Anaconda oder Miniconda auf Ihrem Gerät installiert haben.
-
Erstellen Sie eine dedizierte Conda-Umgebung für Model Builder und installieren Sie die erforderlichen Abhängigkeiten (
onnx,torch,onnxruntime_genaiundtransformers)conda create -n model_builder python==3.11 -y conda activate model_builder pip install onnx torch onnxruntime_genai==0.6.0 transformersHinweis: Für bestimmte neuere Modelle, wie z. B. Phi-4-mini, müssen Sie möglicherweise die neueste Entwicklungsversion von transformers direkt von GitHub installieren
pip install git+https://github.com/huggingface/transformers
Auf Hugging Face-Modelle zugreifen
Es gibt mehrere Möglichkeiten, auf Hugging Face-Modelle zuzugreifen. In diesem Tutorial verwenden wir die huggingface_hub CLI als Beispiel, um die Verwaltung eines Modell-Repositorys zu demonstrieren.
Hinweis: Stellen Sie sicher, dass Ihre Python-Umgebung ordnungsgemäß eingerichtet ist, bevor Sie fortfahren.
So laden Sie Modelle von Hugging Face herunter
-
pip install -U "huggingface_hub[cli]" -
Alle Dateien im heruntergeladenen Repository werden während der Konvertierung verwendet.
Verzeichnisstruktur erstellen
Das AI Toolkit lädt ONNX-Modelle aus seinem Arbeitsverzeichnis
- Windows:
%USERPROFILE%\.aitk\models - Unix-ähnliche Systeme (macOS):
$HOME/.aitk/models
Um sicherzustellen, dass Ihre Modelle korrekt geladen werden, erstellen Sie die erforderliche vierstufige Verzeichnisstruktur innerhalb des Arbeitsverzeichnisses des AI Toolkits. Zum Beispiel
mkdir C:\Users\Administrator\.aitk\models\microsoft\Phi-3.5-vision-instruct-onnx\cpu\phi3.5-cpu-int4-rtn-block-32
In diesem Beispiel ist die vierstufige Verzeichnisstruktur microsoft\Phi-3.5-vision-instruct-onnx\cpu\phi3.5-cpu-int4-rtn-block-32.
Die Benennung der vierstufigen Verzeichnisstruktur ist wichtig. Jede Verzeichnisebene entspricht einem bestimmten Systemparameter: $publisherName\$modelName\$runtime\$displayName. Der $displayName wird in der lokalen Modellbaumansicht oben links in der Erweiterung angezeigt. Verwenden Sie eindeutige displayName-Werte für verschiedene Modelle, um Verwechslungen zu vermeiden.
Modelle ins ONNX-Format konvertieren
Führen Sie den folgenden Befehl aus, um Ihr Modell in das ONNX-Format zu konvertieren
python -m onnxruntime_genai.models.builder -m $modelPath -p $precision -e $executionProvider -o $outputModelPath -c $cachePath --extra_options include_prompt_templates=1
Gängige Präzisions- und Ausführungsanbieter-Kombinationen sind: FP32 CPU, FP32 CUDA, FP16 CUDA, FP16 DML, INT4 CPU, INT4 CUDA und INT4 DML.
Hier ist ein vollständiges Beispielkommando zum Konvertieren eines Modells in das ONNX-Format
python -m onnxruntime_genai.models.builder -m C:\hfmodel\phi3 -p fp16 -e cpu -o C:\Users\Administrator\.aitk\models\microsoft\Phi-3-mini-4k-instruct\cpu\phi3-cpu-int4-rtn-block-32-acc-level-4 -c C:\temp --extra_options include_prompt_templates=1
Weitere Details zu Präzision und Ausführungsanbietern finden Sie in diesen Tutorials
Modelle in das AI Toolkit laden
Nach der Konvertierung verschieben Sie Ihre ONNX-Modelldatei in das neu erstellte Verzeichnis. Das AI Toolkit lädt ONNX-Modelle nach der Aktivierung automatisch aus diesem Verzeichnis.
Sie finden Ihre Modelle in der Ansicht MEINE MODELLE. Um ein Modell zu verwenden, doppelklicken Sie auf seinen Namen oder öffnen Sie TOOLS > Playground und wählen Sie das Modell aus der Dropdown-Liste aus, um mit der Interaktion zu beginnen.
Hinweis: Das AI Toolkit unterstützt das direkte Löschen von manuell hinzugefügten Modellen nicht. Um ein Modell zu entfernen, löschen Sie sein Verzeichnis manuell.
Unterstützte Modelle für die Konvertierung
Die folgende Tabelle listet Modelle auf, die für die Konvertierung in das ONNX-Format im AI Toolkit unterstützt werden
| Support-Matrix | Jetzt unterstützt | In Entwicklung | Auf der Roadmap |
|---|---|---|---|
| Modellarchitekturen | DeepSeek, Gemma, Llama, Mistral, Phi (Sprache + Vision), Qwen, Nemotron, Granite, AMD OLMo |
Whisper |
Stable Diffusion |