AI画像生成を学んでいると、「UNet」「safetensors」「Diffusers」といった用語が頻繁に出てきます。
それぞれ関連はありますが、役割はまったく異なります。
この記事では、
- UNetとは何か
- safetensorsとの違い
- Diffusersの意味(略語も含む)
を、初心者でも理解できるように整理して解説します。
UNetとは?
UNet(ユー・ネット)は、**画像処理に使われるニューラルネットワークの構造(アーキテクチャ)**です。
もともとは医療画像の解析(セグメンテーション)用に開発されましたが、現在では次のような用途で広く使われています。
- AI画像生成
- ノイズ除去
- スタイル変換
- 画像復元
Stable DiffusionにおけるUNetの役割
Stable Diffusionでは、画像は「ノイズ」から徐々に生成されます。
このプロセスの中心にいるのがUNetです。
UNetはノイズを段階的に取り除き、画像を形作る役割を持つ
つまり、画像生成の“エンジン”のような存在です。
safetensorsとは?
safetensorsは、AIモデルの重みを保存するためのファイル形式です。
代表的な拡張子:
.safetensors.ckpt.pt
この中でもsafetensorsは、
- セキュリティが高い(任意コードが実行されない)
- 読み込みが高速
という特徴があります。
UNetとsafetensorsの違い
ここが混同されやすいポイントです。
| 用語 | 正体 |
|---|---|
| UNet | モデルの構造(設計図) |
| safetensors | モデルのデータを保存するファイル |
つまり、
UNetは中身の仕組み、safetensorsはそれを保存する容器
です。
safetensorsの中身
Stable Diffusionのsafetensorsには、通常以下が含まれています。
- UNet(画像生成のコア)
- VAE(画像を生成するデコーダ)
- Text Encoder(テキスト理解)
- その他の構成要素
つまり、
UNetはファイル全体の一部に過ぎない
という点が重要です。
Diffusersとは?(何の略?)
「Diffusers(ディフューザーズ)」は、
Hugging Faceが提供する、拡散モデル専用のPythonライブラリです。
Diffusion(拡散)とは何か?
ここでいう「拡散」とは、
画像にノイズを加えたり、逆にノイズを取り除いて画像を生成するプロセス
のことです。
Stable Diffusionもこの「拡散モデル」の一種です。
Diffusers形式とは?
Diffusersライブラリでは、モデルを次のようなフォルダ構造で管理します。
├── unet/
├── vae/
├── text_encoder/
├── tokenizer/
└── model_index.json
この形式を「Diffusers形式」と呼びます。
なぜDiffusers形式にするのか?
元の.safetensorsや.ckptは「全部入りファイル」ですが、
- 構造情報が不足する場合がある
- 一部だけ取り出すのが難しい
- ツールによっては扱えない
といった問題があります。
そのため、
Diffusers形式に変換してから扱うのが一般的
になっています。
まとめ
- UNetは画像生成の中核となるニューラルネットワーク構造
- safetensorsはモデルを保存するファイル形式
- Diffusersは拡散モデルを扱うためのライブラリ
- Diffusers形式にするとモデルを分解して扱える
一言で理解する
UNet = 脳の構造
safetensors = 記憶を保存したファイル
Diffusers = それらを扱うためのツール


