ファイルを知る、使いこなす。
.safetensors

Safetensors AIモデル

AI・機械学習

JSONヘッダーとテンソルデータで重みを保存する形式です。pickleと異なり重みの読み込みで任意のPythonオブジェクトを復元する設計ではありませんが、周辺アプリや付属コードまで無害だとは保証しません。

主な用途
AIモデルのテンソル・重み保存
中身の種類
バイナリデータ
目次・よくある質問・根拠資料を見る

内容の最終確認: · 編集:Kai

開き方・操作手順

使っている環境や目的の項目を開いて、手順を確認してください。

まず用途と配布セットを確認

ベースモデル・LoRA・部品を区別します。

  1. 配布元の説明と利用条件を読み、作成ソフト・版・用途を記録します。
  2. モデルカードで、完全な重みかLoRA等の追加重みか、必要なベースモデル名を確認します。
  3. 原本を保管し、必要な設定・関連ファイルをコピーの作業フォルダーに揃えます。
対応環境で構造を確認

読み込み成功と推論成功は分けて確認します。

  1. 公式safetensorsのsafe_openで、コピーのテンソル名を確認します。
  2. get_sliceで形状を確認し、モデルの層名・期待する次元と照合します。
  3. 分割保存ならindex.jsonと全分割ファイルの名前・容量を確認します。
既知の入力で動作を確認

入力仕様を合わせ、元の結果と照合します。

  1. 配布元が指定する対応アプリまたはモデル構造へ、設定と重みを読み込みます。
  2. 既知の画像・短い文章など、そのモデル用の前処理をした入力を渡します。
  3. 出力と必要メモリを確認し、LoRAなら有効・無効時の違いも記録します。

操作名・対応状況はアプリ・OS・版によって異なります。変更する前に原本を残してください。

開けないとき:症状から確認

  • 重みだけではモデル全体が動かない場合があります。config・トークナイザー・インデックス・分割ファイルが必要か配布資料を確認します。
  • shape mismatchはモデル構造と重みの不一致の可能性があります。画像生成のベースモデル・LoRAなど役割と対応版を確認します。
  • ファイルが数百バイトしかない:配布ページや取得案内を保存した可能性があります。期待する容量と照合します。
  • 分割の一つだけを読んで失敗:配布一覧から全シャードとインデックスを揃えます。
  • LoRAをベースとして選んで失敗:同じ拡張子でも役割が違います。対応する読み込み欄とベースを確認します。

別のモデル形式から移すとき

  1. 信頼できる元モデルと対応フレームワークを確認し、公式の重み書き出しAPIを使います。
  2. テンソル名・形状・型と、推論結果を元モデルと照合します。
  3. 書き出し前後で同じ入力を使い、出力の形状・値・処理時間を比較します。モデル定義と変換条件も保存します。

元のpickle系モデルの読み込み自体にコード実行リスクがあります。知らないCKPT/PTを変換目的で読み込まないでください。設定やトークナイザーも自動で一つに入るとは限りません。

必要な部品をそろえるチェックリスト

本体重み、設定、トークナイザーや画像前処理設定、分割インデックスを配布一覧で照合します。追加重みには対応ベースの版も必要です。

ファイル名を似せて置いても層の形状が違えば使えません。不一致のキーを無視する前に、別のアーキテクチャを混ぜていないか調べます。

この手順の根拠:Hugging Face / PyTorch Foundation · Safetensors documentation / Hugging Face · Metadata Parsing / Hugging Face · Instantiate a big model

変換できた後に残すもの

重みだけの移行では元の学習状態や設定は自動で移りません。モデルカードと利用条件、対応版、テスト入力・出力を一緒に記録します。

安全な保存形式でも付属Pythonコードの実行許可は別の判断です。エラーを消すために未知のコードを追加しないようにします。

この手順の根拠:Hugging Face / PyTorch Foundation · Safetensors documentation / Hugging Face · Metadata Parsing / Hugging Face · Instantiate a big model

関連形式との違い

関連形式との違い
形式主な役割確認する点
SAFETENSORSテンソルの保存設定やモデル構造は別の場合
GGUFggml系での推論実行エンジンの対応が必要
PT / CKPTフレームワーク別の保存保存方法と実行リスクを確認

取り扱いと安全性

形式の設計と配布元の信頼性を分けて判断します。要求される外部コードやアプリ拡張を有効化する前に提供元を確認します。

よくある質問

SafetensorsだけでAIが動く?

モデル構造・設定・トークナイザー等が必要な場合があります。配布セットを確認します。

拡張子がSafetensorsなら安全?

いいえ。任意オブジェクト復元を避ける設計ですが、ソフトや付属コード・入手元も確認します。

LoRAとベースモデルの違いは?

役割が違います。同じ形式でも、対応ベースモデルや読み込み方法を配布資料で確認します。

ファイルが小さいほど軽いモデル?

追加重みや分割の一部かもしれません。モデル全体の必要容量とメモリを確認します。

重みを一覧できれば正常?

構造を読めた確認です。モデルとの互換性や推論の正しさは、既知の入力で別に確認します。

形式の基本情報:正式名称・MIME type・管理団体
名称
Safetensors tensor serialization
管理・仕様
Hugging Face origin / PyTorch Foundation project
MIME type
No broadly established dedicated MIME type; generic binary transfer

公式・一次情報

  • プロジェクト公式Safetensors documentation

    テンソル読み込みAPIと保存形式です。周辺コードの安全性まで保証しません。

    Hugging Face / PyTorch Foundation · リンク確認:
  • プロジェクト公式Metadata Parsing

    ヘッダー内のテンソル名・型・形状を確認できます。

    Hugging Face · リンク確認:
  • 公式資料Instantiate a big model

    分割した重みとインデックスの読み込み条件です。

    Hugging Face · リンク確認: