Varför konvertera GGUF till ONNX?
Folk vill ha GGUF som .onnx för att köra en modell i ONNX Runtime, DirectML eller andra plattformsoberoende acceleratorer som inte läser GGUF. Eftersom ONNX behöver en standardiserad beräkningsgraf och GGUF är en llama.cpp-specifik kvantiserad behållare, måste du först rekonstruera en vanlig PyTorch-modell och sedan exportera den.
Hur man konverterar GGUF till ONNX
Dekvantisera GGUF till safetensors OPEN-SOURCE
Använd en konverterare som verktyget ungguf eller ett gguf-lässkript för att förvandla .gguf tillbaka till safetensors med full precision som Transformers kan ladda.
Exportera till ONNX med Optimum FREE
Peka Optimum på den rekonstruerade modellen: optimum-cli export onnx --model ./model-dir onnx-out/ skriver .onnx-filen.
Exportera manuellt med PyTorch OPEN-SOURCE
För arkitekturer som inte stöds, ladda modellen i PyTorch och anropa torch.onnx.export(model, dummy_input, „model.onnx”) själv.
Om dessa format
En .gguf-fil är en GGML Universal Format-fil, den binära behållare som används av llama.cpp och relaterade verktyg för att lagra en stor språkmodell som en enda fil. Den innehåller…
Öppna detaljer för .GGUF →En .ONNX-fil är en datafil som används av specifik programvara.
Öppna detaljer för .ONNX →Kvalitet & vad man bör tänka på
- Dekvantisering av en kvantiserad GGUF kan inte återställa den precision som förlorades under kvantiseringen, och komplexa kvantiseringstyper (som IQ-varianter) kanske inte går att konvertera helt felfritt.
- Den resulterande ONNX-filen har full precision, så den kan vara flera gånger större än den kompakta GGUF-filen du startade med.
- Optimum stöder endast vissa arkitekturer direkt; nischade eller anpassade modeller kan behöva en manuell exportkonfiguration eller misslyckas.