file formats
GGUFとsafetensorsの違い|優劣ではなく用途とランタイムで考える
GGUFとsafetensorsは、同じモデルの重みを配布する場面でも、想定するランタイムと周辺ファイルが異なります。 優劣ではなく、今使うアプリがどちらを読み込めるかから選びます。
それぞれの役割
| 観点 | GGUF | safetensors |
|---|---|---|
| 主な用途 | llama.cpp系・LM Studio・Ollamaなどでのローカル実行 | 学習・配布・Transformers系環境 |
| 特徴 | 単一ファイルに重み+メタデータ+チャットテンプレートをまとめる | 安全でシンプルな重み保存形式 |
| 周辺情報 | architecture、量子化、tokenizer、chat template等をmetadataに持てる | 通常はrepository内のconfig・tokenizer・model code等と組み合わせる |
| 量子化の見分け | Q4_K_M、IQ4_XS等のtensor typeをGGUF内とファイル名で確認 | 拡張子だけでは量子化方式や実行時の精度を決められない |
| 互換性 | 使用するllama.cpp系runtimeのarchitecture対応を確認 | 使用するTransformers等のmodel実装・version対応を確認 |
| 選ぶ基準 | LM Studio等でローカル推論するならGGUF版を確認 | 学習・微調整・Transformers読み込みなら配布repositoryの手順を確認 |
Hugging Faceでは同じモデル名でも「GGUF版リポジトリ」と「safetensors版リポジトリ」が別になっていることがあります。 LM Studioで使うなら GGUF 版を選ぶのが迷いにくいです。ただしツールによって対応形式は違うため、過剰に断定はしません。
同じモデル名でも同じ成果物ではない
変換されたGGUFは、元のsafetensorsと同じmodel familyを由来にしていても、量子化、metadata、chat template、converter versionが異なる別成果物です。 publisher、base modelのrevision、変換条件、licenseをmodel cardで照合し、名前が似ているだけで同一と判断しません。
形式だけで品質や安全性も決まりません。配布元の信頼性と実際の出力は別に確認し、GGUFの取得時は 安全な取得チェックリストを使います。変換し直す必要がある場合も、元modelのlicenseと 現行converterが対象architectureを扱えることを先に確認します。
更新履歴:2026-08-31 runtime、周辺ファイル、量子化、revisionの違いを判断軸として追加。