😊 ようこそ!
CogVideoX-Funは、CogVideoX構造に基づいて修正されたパイプラインであり、生成の柔軟性を提供します。AI画像とビデオの生成、Diffusion TransformerのベースラインモデルとLoraモデルのトレーニングに使用できます。すでにトレーニングされたCogVideoX-Funモデルから直接予測を行い、異なる解像度で約6秒間、8fps(1〜49フレーム)のビデオを生成できます。ユーザーは独自のベースラインモデルとLoraモデルをトレーニングして、特定のスタイル変換を実現することもできます。
異なるプラットフォームからのクイックスタートをサポートします。詳細はクイックスタートを参照してください。
新機能:
- I2Vモデルと関連するトレーニング予測コードをV1.5バージョンに更新。[2024.12.16]
- 報酬逆伝播を使用してLoraをトレーニングし、生成されたビデオを最適化し、人間の好みにより一致させます。詳細はこちらをご覧ください。新しいバージョンのコントロールモデルは、Canny、Depth、Pose、MLSDなどのさまざまな条件をサポートします。[2024.11.21]
- CogVideoX-Fun Controlはdiffusersでサポートされています。サポートを提供してくれたa-r-r-o-wに感謝します。このPRでサポートが提供されました。詳細はドキュメントをご覧ください。[2024.10.16]
- i2vモデルを再トレーニングし、ノイズを追加してビデオの動きの幅を広げました。コントロールモデルのトレーニングコードとコントロールモデルをアップロードしました。[2024.09.29]
- コードを作成しました!現在、WindowsとLinuxをサポートしています。2bおよび5bモデルをサポートし、256x256x49から1024x1024x49までの任意の解像度でビデオを生成できます。[2024.09.18]
機能:
DSWには無料のGPU時間があり、ユーザーは一度申請でき、申請後3か月間有効です。
AliyunはFreetierで無料のGPU時間を提供しています。取得してAliyun PAI-DSWで使用し、5分以内にCogVideoX-Funを開始できます!
私たちのComfyUIは次のとおりです。詳細はComfyUI READMEを参照してください。
Dockerを使用する場合、マシンにグラフィックスカードドライバとCUDA環境が正しくインストールされていることを確認してください。
次のコマンドをこの方法で実行します:
# イメージをプル
docker pull mybigpai-public-registry.cn-beijing.cr.aliyuncs.com/easycv/torch_cuda:cogvideox_fun
# イメージに入る
docker run -it -p 7860:7860 --network host --gpus all --security-opt seccomp:unconfined --shm-size 200g mybigpai-public-registry.cn-beijing.cr.aliyuncs.com/easycv/torch_cuda:cogvideox_fun
# コードをクローン
git clone https://github.com/aigc-apps/CogVideoX-Fun.git
# CogVideoX-Funのディレクトリに入る
cd CogVideoX-Fun
# 重みをダウンロード
mkdir models/Diffusion_Transformer
mkdir models/Personalized_Model
wget https://pai-aigc-photog.oss-cn-hangzhou.aliyuncs.com/cogvideox_fun/Diffusion_Transformer/CogVideoX-Fun-V1.1-2b-InP.tar.gz -O models/Diffusion_Transformer/CogVideoX-Fun-V1.1-2b-InP.tar.gz
cd models/Diffusion_Transformer/
tar -xvf CogVideoX-Fun-V1.1-2b-InP.tar.gz
cd ../../
以下の環境でCogVideoX-Funの実行を確認しました:
Windowsの詳細:
- OS: Windows 10
- python: python3.10 & python3.11
- pytorch: torch2.2.0
- CUDA: 11.8 & 12.1
- CUDNN: 8+
- GPU: Nvidia-3060 12G & Nvidia-3090 24G
Linuxの詳細:
- OS: Ubuntu 20.04, CentOS
- python: python3.10 & python3.11
- pytorch: torch2.2.0
- CUDA: 11.8 & 12.1
- CUDNN: 8+
- GPU:Nvidia-V100 16G & Nvidia-A10 24G & Nvidia-A100 40G & Nvidia-A100 80G
重みを保存するために約60GBのディスクスペースが必要です。確認してください!
重みを指定されたパスに配置することをお勧めします:
📦 models/
├── 📂 Diffusion_Transformer/
│ ├── 📂 CogVideoX-Fun-V1.1-2b-InP/
│ └── 📂 CogVideoX-Fun-V1.1-5b-InP/
├── 📂 Personalized_Model/
│ └── あなたのトレーニング済みのトランスフォーマーモデル / あなたのトレーニング済みのLoraモデル(UIロード用)
表示されている結果はすべて画像に基づいています。
解像度-1024
00000005.mp4 |
00000006.mp4 |
00000009.mp4 |
00000010.mp4 |
解像度-768
00000001.mp4 |
00000002.mp4 |
00000005.mp4 |
00000006.mp4 |
解像度-512
00000036.mp4 |
00000035.mp4 |
00000034.mp4 |
00000033.mp4 |
プロンプト | CogVideoX-Fun-V1.1-5B | CogVideoX-Fun-V1.1-5B HPSv2.1 Reward LoRA |
CogVideoX-Fun-V1.1-5B MPS Reward LoRA |
---|---|---|---|
翼のある豚がダイヤモンドの山の上を飛んでいる |
00000008.mp4 |
00000008.mp4 |
00000008.mp4 |
犬が野原を走り、猫が木に登る |
00000002.mp4 |
00000002.mp4 |
00000002.mp4 |
demo_pose.mp4 |
demo_scribble.mp4 |
demo_depth.mp4 |
美しい澄んだ目と金髪の若い女性が白い服を着て体をひねり、カメラは彼女の顔に焦点を合わせています。高品質、傑作、最高品質、高解像度、超微細、夢のような。 | 美しい澄んだ目と金髪の若い女性が白い服を着て体をひねり、カメラは彼女の顔に焦点を合わせています。高品質、傑作、最高品質、高解像度、超微細、夢のような。 | 若いクマ。 |
00000010.mp4 |
00000011.mp4 |
00000012.mp4 |
解像度-512 | 解像度-768 | 解像度-1024 |
1.mp4 |
2.mp4 |
3.mp4 |
解像度-768
00000008.mp4 |
00000010.mp4 |
00000020.mp4 |
00000030.mp4 |
解像度-512 | 解像度-768 | 解像度-1024 |
1.mp4 |
2.mp4 |
3.mp4 |
- ステップ1: 対応する重みをダウンロードし、modelsフォルダに配置します。
- ステップ2: predict_t2v.pyファイルでprompt、neg_prompt、guidance_scale、およびseedを変更します。
- ステップ3: predict_t2v.pyファイルを実行し、生成された結果を待ちます。結果はsamples/cogvideox-fun-videos-t2vフォルダに保存されます。
- ステップ4: 他のトレーニング済みのバックボーンとLoraを組み合わせたい場合は、状況に応じてpredict_t2v.pyおよびLora_pathを変更します。
- ステップ1: 対応する重みをダウンロードし、modelsフォルダに配置します。
- ステップ2: app.pyファイルを実行してグラフページに入ります。
- ステップ3: ページに基づいて生成モデルを選択し、prompt、neg_prompt、guidance_scale、およびseedを入力し、生成をクリックして生成結果を待ちます。結果はsamplesフォルダに保存されます。
詳細はComfyUI READMEを参照してください。
完全なCogVideoX-Funトレーニングパイプラインには、データ前処理とVideo DiTトレーニングが含まれている必要があります。
画像データを使用してLoraモデルをトレーニングする簡単なデモを提供しました。詳細はwikiをご覧ください。
長いビデオのセグメンテーション、クリーニング、説明のための完全なデータ前処理リンクは、ビデオキャプションセクションのREADMEを参照してください。
テキストから画像およびビデオ生成モデルをトレーニングしたい場合。この形式でデータセットを配置する必要があります。
📦 project/
├── 📂 datasets/
│ ├── 📂 internal_datasets/
│ ├── 📂 train/
│ │ ├── 📄 00000001.mp4
│ │ ├── 📄 00000002.jpg
│ │ └── 📄 .....
│ └── 📄 json_of_internal_datasets.json
json_of_internal_datasets.jsonは標準のJSONファイルです。json内のfile_pathは相対パスとして設定できます。以下のように:
[
{
"file_path": "train/00000001.mp4",
"text": "スーツとサングラスを着た若い男性のグループが街の通りを歩いている。",
"type": "video"
},
{
"file_path": "train/00000002.jpg",
"text": "スーツとサングラスを着た若い男性のグループが街の通りを歩いている。",
"type": "image"
},
.....
]
次のように絶対パスとして設定することもできます:
[
{
"file_path": "/mnt/data/videos/00000001.mp4",
"text": "スーツとサングラスを着た若い男性のグループが街の通りを歩いている。",
"type": "video"
},
{
"file_path": "/mnt/data/train/00000001.jpg",
"text": "スーツとサングラスを着た若い男性のグループが街の通りを歩いている。",
"type": "image"
},
.....
]
データ前処理時にデータ形式が相対パスの場合、scripts/train.sh
を次のように設定します。
export DATASET_NAME="datasets/internal_datasets/"
export DATASET_META_NAME="datasets/internal_datasets/json_of_internal_datasets.json"
データ形式が絶対パスの場合、scripts/train.sh
を次のように設定します。
export DATASET_NAME=""
export DATASET_META_NAME="/mnt/data/json_of_internal_datasets.json"
次に、scripts/train.shを実行します。
sh scripts/train.sh
一部のパラメータの設定の詳細については、Readme Train、Readme Lora、およびReadme Controlを参照してください。
V1.5:
名称 | ストレージスペース | Hugging Face | Model Scope | 説明 |
---|---|---|---|---|
CogVideoX-Fun-V1.5-5b-InP | 20.0 GB | 🤗Link | 😄Link | 公式のグラフ生成ビデオモデルは、複数の解像度(512、768、1024)でビデオを予測できます。85フレーム、8フレーム/秒でトレーニングされています。 |
CogVideoX-Fun-V1.5-Reward-LoRAs | - | 🤗リンク | 😄リンク | 公式の報酬逆伝播技術モデルで、CogVideoX-Fun-V1.5が生成するビデオを最適化し、人間の嗜好によりよく合うようにする。 |
V1.1:
名称 | ストレージスペース | Hugging Face | Model Scope | 説明 |
---|---|---|---|---|
CogVideoX-Fun-V1.1-2b-InP | 13.0 GB | 🤗リンク | 😄リンク | 公式のグラフ生成ビデオモデルは、複数の解像度(512、768、1024、1280)でビデオを予測できます。49フレーム、8フレーム/秒でトレーニングされています。参照画像にノイズが追加され、V1.0と比較して動きの幅が広がっています。 |
CogVideoX-Fun-V1.1-5b-InP | 20.0 GB | 🤗リンク | 😄リンク | 公式のグラフ生成ビデオモデルは、複数の解像度(512、768、1024、1280)でビデオを予測できます。49フレーム、8フレーム/秒でトレーニングされています。参照画像にノイズが追加され、V1.0と比較して動きの幅が広がっています。 |
CogVideoX-Fun-V1.1-2b-Pose | 13.0 GB | 🤗リンク | 😄リンク | 公式のポーズコントロールビデオモデルは、複数の解像度(512、768、1024、1280)でビデオを予測できます。49フレーム、8フレーム/秒でトレーニングされています。 |
CogVideoX-Fun-V1.1-2b-Control | 13.0 GB | 🤗Link | 😄Link | 公式のコントロールビデオモデルは、複数の解像度(512、768、1024、1280)でビデオを予測できます。49フレーム、8フレーム/秒でトレーニングされています。Canny、Depth、Pose、MLSDなどのさまざまなコントロール条件をサポートします。 |
CogVideoX-Fun-V1.1-5b-Pose | 20.0 GB | 🤗リンク | 😄リンク | 公式のポーズコントロールビデオモデルは、複数の解像度(512、768、1024、1280)でビデオを予測できます。49フレーム、8フレーム/秒でトレーニングされています。 |
CogVideoX-Fun-V1.1-5b-Control | 20.0 GB | 🤗リンク | 😄リンク | 公式のコントロールビデオモデルは、複数の解像度(512、768、1024、1280)でビデオを予測できます。49フレーム、8フレーム/秒でトレーニングされています。Canny、Depth、Pose、MLSDなどのさまざまなコントロール条件をサポートします。 |
CogVideoX-Fun-V1.1-Reward-LoRAs | - | 🤗リンク | 😄リンク | 公式の報酬逆伝播技術モデルで、CogVideoX-Fun-V1.1が生成するビデオを最適化し、人間の嗜好によりよく合うようにする。 |
V1.0:
名称 | ストレージスペース | Hugging Face | Model Scope | 説明 |
---|---|---|---|---|
CogVideoX-Fun-2b-InP | 13.0 GB | 🤗リンク | 😄リンク | 公式のグラフ生成ビデオモデルは、複数の解像度(512、768、1024、1280)でビデオを予測できます。49フレーム、8フレーム/秒でトレーニングされています。 |
CogVideoX-Fun-5b-InP | 20.0 GB | 🤗リンク | 😄リンク | 公式のグラフ生成ビデオモデルは、複数の解像度(512、768、1024、1280)でビデオを予測できます。49フレーム、8フレーム/秒でトレーニングされています。 |
- 日本語をサポート。
- CogVideo: https://github.com/THUDM/CogVideo/
- EasyAnimate: https://github.com/aigc-apps/EasyAnimate
このプロジェクトはApache License (Version 2.0)の下でライセンスされています。
CogVideoX-2Bモデル(対応するTransformersモジュール、VAEモジュールを含む)は、Apache 2.0ライセンスの下でリリースされています。
CogVideoX-5Bモデル(Transformersモジュール)は、CogVideoXライセンスの下でリリースされています。