Perché convertire GGUF in ONNX?
Si desidera convertire GGUF in .onnx per eseguire un modello in ONNX Runtime, DirectML o altri acceleratori cross-platform che non leggono il formato GGUF. Poiché ONNX richiede un grafo di calcolo standard e GGUF è un contenitore quantizzato specifico per llama.cpp, è necessario prima ricostruire un modello PyTorch normale e poi esportarlo.
Come convertire GGUF in ONNX
De-quantizzazione da GGUF a safetensors OPEN-SOURCE
Usa un convertitore come lo strumento ungguf o uno script di lettura gguf per trasformare il file .gguf in safetensors a piena precisione caricabili da Transformers.
Esportazione in ONNX con Optimum FREE
Punta Optimum al modello ricostruito: optimum-cli export onnx --model ./model-dir onnx-out/ scriverà il file .onnx.
Esportazione manuale con PyTorch OPEN-SOURCE
Per architetture non supportate, carica il modello in PyTorch e chiama autonomamente torch.onnx.export(model, dummy_input, "model.onnx").
Informazioni su questi formati
Un file .gguf è un file GGML Universal Format, il contenitore binario utilizzato da llama.cpp e strumenti correlati per memorizzare un modello linguistico di grandi dimensioni come file…
Apri dettagli .GGUF →Un file .ONNX è un file di dati utilizzato da software specifici.
Apri dettagli .ONNX →Qualità e a cosa prestare attenzione
- La de-quantizzazione di un GGUF quantizzato non può recuperare la precisione persa durante la quantizzazione originale, e i tipi di quantizzazione complessi (come le varianti IQ) potrebbero non convertirsi correttamente.
- Il file ONNX risultante è a piena precisione, quindi può essere diverse volte più grande del compatto GGUF di partenza.
- Optimum supporta solo determinate architetture in modo predefinito; modelli di nicchia o personalizzati potrebbero richiedere una configurazione di esportazione manuale o fallire.