Die generate()-API aus dem Quellcode erstellen

Voraussetzungen

  • cmake
  • .NET6 (wenn C# erstellt wird)

Das onnxruntime-genai-Repository klonen

git clone https://github.com/microsoft/onnxruntime-genai
cd onnxruntime-genai

Die generate()-API erstellen

Dieser Schritt geht davon aus, dass Sie sich im Stammverzeichnis des onnxruntime-genai-Repositorys befinden.

Alle unten aufgeführten Build-Befehle verfügen über ein --config-Argument, das die folgenden Optionen akzeptiert

  • Release erstellt Release-Binärdateien
  • Debug erstellt Binärdateien mit Debug-Symbolen
  • RelWithDebInfo erstellt Release-Binärdateien mit Debug-Informationen

Python-API erstellen

Windows CPU-Erstellung

python build.py --config Release

Windows DirectML-Erstellung

python build.py --use_dml --config Release

Linux-Erstellung

python build.py --config Release

Linux CUDA-Erstellung

python build.py --use_cuda --config Release

Mac-Erstellung

python build.py --config Release

Java-API erstellen

python build.py --build_java --config Release

Für Android erstellen

Wenn Sie unter Windows erstellen, installieren Sie ninja.

pip install ninja

Führen Sie das Build-Skript aus.

python build.py --build_java --android --android_home <path to your Android SDK> --android_ndk_path <path to your NDK installation> --android_abi  [armeabi-v7a|arm64-v8a|x86|x86_64] --config Release

Die Bibliothek in Ihre Anwendung installieren

Python Wheel installieren

# Change dir to the folder containing the onnxruntime-genai wheel
# Example for Linux: cd build/Linux/Release/wheel/
pip install *.whl

NuGet installieren

Kommt bald

JAR installieren

Kopieren Sie build/Windows/Release/src/java/build/libs/*.jar in Ihre Anwendung.

AAR installieren

Kopieren Sie build/Android/Release/src/java/build/android/outputs/aar/onnxruntime-genai-release.aar in Ihre Anwendung.

C/C++ Header-Datei und Bibliothek installieren

Windows

Verwenden Sie den Header in src\ort_genai.h und die Bibliotheken in build\Windows\Release

Linux

Verwenden Sie den Header in src/ort_genai.h und die Bibliotheken in build/Linux/Release