Repo ini berisi definisi model PyTorch, bobot terlatih, dan kode inferensi/pengambilan sampel untuk makalah kami yang menjelajahi Hunyuan-DiT. Anda dapat menemukan lebih banyak visualisasi di halaman proyek kami.
Hunyuan-DiT: Transformator Difusi Multi-Resolusi yang Kuat dengan Pemahaman Tiongkok yang Mendalam
DialogGen: Sistem Dialog Interaktif Multi-modal untuk Pembuatan Teks-ke-Gambar Multi-putaran
15 Juli 2024: HunYuanDiT dan Shakker.Ai bersama-sama meluncurkan acara penyesuaian berdasarkan model HunYuanDiT 1.2. Dengan menerbitkan lora atau model yang disempurnakan berdasarkan HunYuanDiT, Anda bisa mendapatkan bonus hingga $230 dari Shakker.Ai. Lihat Shakker.Ai untuk lebih jelasnya.
15 Juli 2024: ? Perbarui ComfyUI untuk mendukung alur kerja standar dan kompatibilitas dengan bobot dari modul t2i dan pelatihan Lora untuk versi 1.1/1.2, serta yang dilatih oleh Kohya atau skrip resmi. Lihat ComfyUI untuk detailnya.
15 Juli 2024: ⚡ Kami menawarkan lingkungan Docker untuk CUDA 11/12, memungkinkan Anda melewati instalasi rumit dan bermain dengan satu klik! Lihat buruh pelabuhan untuk detailnya.
08 Juli 2024: ? Versi HYDiT-v1.2 dirilis. Silakan periksa HunyuanDiT-v1.2 dan Distillation-v1.2 untuk lebih jelasnya.
03 Juli 2024: ? Versi Kohya-hydit sekarang tersedia untuk model v1.1 dan v1.2, dengan GUI untuk inferensi. Versi resmi Kohya sedang ditinjau. Lihat kohya untuk detailnya.
27 Juni 2024: ? Hunyuan-Captioner dirilis, memberikan teks terperinci untuk data pelatihan. Lihat mllm untuk detailnya.
27 Juni 2024: ? Mendukung LoRa dan ControlNet di diffuser. Lihat diffuser untuk detailnya.
27 Juni 2024: ? Skrip Inferensi VRAM GPU 6GB dirilis. Lihat ringan untuk detailnya.
19 Juni 2024: ? ControlNet dirilis, mendukung kontrol cerdik, pose, dan kedalaman. Lihat kode pelatihan/inferensi untuk detailnya.
13 Juni 2024: ⚡ Versi HYDiT-v1.1 dirilis, yang mengurangi masalah saturasi gambar yang berlebihan dan mengatasi masalah tanda air. Silakan periksa HunyuanDiT-v1.1 dan Distillation-v1.1 untuk lebih jelasnya.
13 Juni 2024: ? Kode pelatihan dirilis, menawarkan pelatihan parameter penuh dan pelatihan LoRA.
06 Juni 2024: ? Hunyuan-DiT sekarang tersedia di ComfyUI. Silakan periksa ComfyUI untuk lebih jelasnya.
06 Jun 2024: Kami memperkenalkan versi Distilasi untuk akselerasi Hunyuan-DiT, yang mencapai akselerasi 50% pada GPU NVIDIA. Silakan periksa Distilasi untuk lebih jelasnya.
05 Juni 2024: ? Hunyuan-DiT sekarang tersedia di ? Diffuser! Silakan periksa contoh di bawah ini.
04 Juni 2024: Dukung tautan Tencent Cloud untuk mengunduh model yang telah dilatih sebelumnya! Silakan periksa tautan di bawah ini.
22 Mei 2024: Kami memperkenalkan versi TensorRT untuk akselerasi Hunyuan-DiT, yang mencapai akselerasi 47% pada GPU NVIDIA. Silakan periksa TensorRT-libs untuk mendapatkan petunjuknya.
22 Mei 2024: Kami mendukung demo yang menjalankan pembuatan gambar teks2 multi-putaran sekarang. Silakan periksa skrip di bawah ini.
Selamat datang di Tencent Hunyuan Bot berbasis web kami, tempat Anda dapat menjelajahi produk inovatif kami! Cukup masukkan petunjuk yang disarankan di bawah ini atau petunjuk imajinatif lainnya yang berisi kata kunci terkait gambar untuk mengaktifkan fitur pembuatan teks-ke-gambar Hunyuan. Bebaskan kreativitas Anda dan ciptakan gambar apa pun yang Anda inginkan, semuanya gratis!
Anda dapat menggunakan perintah sederhana yang mirip dengan teks bahasa alami
画一只穿着西装的猪
menggambar babi dalam setelan jas
bisnis, bisnis, bisnis, dan bisnis
menghasilkan lukisan, gaya cyberpunk, mobil sport
atau interaksi bahasa multi-putaran untuk membuat gambar.
画一个木制的鸟
menggambar burung kayu
变成玻璃的
berubah menjadi kaca
Hunyuan-DiT (Model Teks-ke-Gambar)
Kesimpulan
Pos pemeriksaan
Versi Distilasi
Versi TensorRT
Pelatihan
Lora
Controlnet (Pose, Cerdik, Kedalaman)
Inferensi VRAM GPU 6GB
Adaptor IP
Pos pemeriksaan Hunyuan-DiT-S (model 0,7B)
Hmm
Kesimpulan
Kesimpulan
Hunyuan-Captioner (Teks ulang pasangan gambar-teks mentah)
Hunyuan-DialogGen (Model Peningkatan Cepat)
Demo Web (Gradio)
Demo T2I multi-putaran (Gradio)
Demo Kli
UI yang nyaman
Diffuser
Kohya
UI Web
Hunyuan-DiT: Transformator Difusi Multi-Resolusi yang Kuat dengan Pemahaman Tiongkok yang Mendalam
Contoh
instruksi
Kesimpulan
gradio
KontrolNet
Inferensi VRAM GPU 6GB
Menggunakan Gradio
Menggunakan ? Diffuser
Menggunakan Baris Perintah
Konfigurasi Lainnya
Menggunakan NyamanUI
Menggunakan Kohya
Menggunakan versi Sebelumnya
Persiapan Data
Pelatihan Parameter Penuh
LoRA
Panduan Instalasi untuk Linux
Arsitektur DiT Bilingual Cina-Inggris
Pembuatan Text2Image multi-putaran
Berita!!
Cobalah di web
Paket Sumber Terbuka
Isi
Abstrak
Fitur Utama Hunyuan-DiT
Perbandingan
Visualisasi
Persyaratan
Ketergantungan dan Instalasi
Unduh Model Terlatih - 1. Menggunakan HF-Mirror - 2. Lanjutkan Unduhan
Pelatihan
Kesimpulan
Adaptor
Penulis Teks Hunyuan
Akselerasi (untuk Linux)
BibTeX
Mulai Sejarah
Kami menghadirkan Hunyuan-DiT, transformator difusi teks-ke-gambar dengan pemahaman mendalam tentang bahasa Inggris dan Mandarin. Untuk membangun Hunyuan-DiT, kami merancang struktur transformator, encoder teks, dan pengkodean posisi dengan cermat. Kami juga membangun seluruh jalur data dari awal untuk memperbarui dan mengevaluasi data guna pengoptimalan model berulang. Untuk pemahaman bahasa yang lebih detail, kami melatih Model Bahasa Besar Multimodal untuk menyempurnakan keterangan gambar. Terakhir, Hunyuan-DiT dapat melakukan dialog multi-modal multi-putaran dengan pengguna, menghasilkan dan menyempurnakan gambar sesuai dengan konteksnya. Melalui protokol evaluasi manusia holistik yang dirancang dengan cermat dengan lebih dari 50 penilai manusia profesional, Hunyuan-DiT menetapkan teknologi baru dalam generasi pencitraan Tiongkok dibandingkan dengan model sumber terbuka lainnya.
Hunyuan-DiT adalah model difusi dalam ruang laten, seperti yang digambarkan pada gambar di bawah. Mengikuti Model Difusi Laten, kami menggunakan Variational Autoencoder (VAE) terlatih untuk mengompresi gambar ke dalam ruang laten berdimensi rendah dan melatih model difusi untuk mempelajari distribusi data dengan model difusi. Model difusi kami diparameterisasi dengan transformator. Untuk menyandikan perintah teks, kami memanfaatkan kombinasi CLIP bilingual (Inggris dan Mandarin) yang telah dilatih sebelumnya dan encoder T5 multibahasa.
Memahami instruksi bahasa alami dan melakukan interaksi multi-putaran dengan pengguna adalah penting untuk sistem teks-ke-gambar. Ini dapat membantu membangun proses penciptaan yang dinamis dan berulang yang mewujudkan ide pengguna menjadi kenyataan langkah demi langkah. Di bagian ini, kami akan merinci bagaimana kami memberdayakan Hunyuan-DiT dengan kemampuan untuk melakukan percakapan multi-putaran dan pembuatan gambar. Kami melatih MLLM untuk memahami dialog pengguna multi-putaran dan menghasilkan teks baru untuk pembuatan gambar.
Untuk membandingkan kemampuan pembuatan HunyuanDiT dan model lainnya secara komprehensif, kami membuat set pengujian 4 dimensi, termasuk Konsistensi Gambar-Teks, Tidak Termasuk Artefak AI, Kejelasan Subjek, Estetika. Lebih dari 50 evaluator profesional melakukan evaluasi.
Model | Sumber Terbuka | Konsistensi Teks-Gambar (%) | Tidak termasuk Artefak AI (%) | Kejelasan Subjek (%) | Estetika (%) | Keseluruhan (%) | ||||
---|---|---|---|---|---|---|---|---|---|---|
SDXL | ✔ | 64.3 | 60.6 | 91.1 | 76.3 | 42.7 | ||||
PixArt-α | ✔ | 68.3 | 60.9 | 93.2 | 77.5 | 45.5 | ||||
Taman bermain 2.5 | ✔ | 71.9 | 70.8 | 94.9 | 83.3 | 54.3 | ||||
SD 3 | ✘ | 77.1 | 69.3 | 94.6 | 82.5 | 56.7 | ||||
Pertengahan Perjalanan v6 | ✘ | 73.5 | 80.2 | 93.5 | 87.2 | 63.3 | ||||
DALL-E 3 | ✘ | 83.9 | 80.3 | 96,5 | 89.4 | 71.0 | ||||
Hunyuan-DiT | ✔ | 74.2 | 74.3 | 95.4 | 86.6 | 59.0 |
Elemen Tiongkok
Masukan Teks Panjang
Pembuatan Text2Image multi-putaran
Repo ini terdiri dari DialogGen (model peningkatan cepat) dan Hunyuan-DiT (model teks-ke-gambar).
Tabel berikut menunjukkan persyaratan untuk menjalankan model (ukuran batch = 1):
Model | --load-4bit (DialogGen) | Memori Puncak GPU | GPU |
---|---|---|---|
DialogGen + Hunyuan-DiT | ✘ | 32G | A100 |
DialogGen + Hunyuan-DiT | ✔ | 22G | A100 |
Hunyuan-DiT | - | 11G | A100 |
Hunyuan-DiT | - | 14G | RTX3090/RTX4090 |
Diperlukan GPU NVIDIA dengan dukungan CUDA.
Kami telah menguji GPU V100 dan A100.
Minimum : Memori GPU minimum yang dibutuhkan adalah 11GB.
Direkomendasikan : Sebaiknya gunakan GPU dengan memori 32GB untuk kualitas generasi yang lebih baik.
Sistem operasi yang diuji: Linux
Mulailah dengan mengkloning repositori:
git clone https://github.com/tencent/HunyuanDiTcd HunyuanDiT
Kami menyediakan file environment.yml
untuk menyiapkan lingkungan Conda. Petunjuk instalasi Conda tersedia di sini.
Kami merekomendasikan CUDA versi 11.7 dan 12.0+.
# 1. Siapkan conda environmentconda env create -f environment.yml# 2. Aktifkan environmentconda activation HunyuanDiT# 3. Instal pip dependenciespython -m pip install -r requiremen.txt# 4. Instal flash perhatian v2 untuk akselerasi (membutuhkan CUDA 11.6 atau di atas)python -m pip install git+https://github.com/Dao-AILab/[email protected]
Selain itu, Anda juga dapat menggunakan buruh pelabuhan untuk mengatur lingkungan.
# 1. Gunakan tautan berikut untuk mengunduh file tar gambar buruh pelabuhan.# Untuk CUDA 12wget https://dit.hunyuan.tencent.com/download/HunyuanDiT/hunyuan_dit_cu12.tar# Untuk CUDA 11wget https://dit.hunyuan. tencent.com/download/HunyuanDiT/hunyuan_dit_cu11.tar# 2. Impor file tar docker dan tampilkan meta gambar informasi# Untuk memuat CUDA 12docker -i hunyuan_dit_cu12.tar# Untuk memuat CUDA 11docker -i hunyuan_dit_cu11.tar docker image ls# 3. Jalankan container berdasarkan imagedocker run -dit --gpus all --init --net=host --uts=host --ipc=host --name hunyuandit --security-opt=seccomp= tidak dibatasi --ulimit=stack=67108864 --ulimit=memlock=-1 --hak istimewa docker_image_tag
Untuk mendownload modelnya, instal dulu huggingface-cli. (Instruksi terperinci tersedia di sini.)
python -m pip instal "huggingface_hub[cli]"
Kemudian unduh modelnya menggunakan perintah berikut:
# Buat direktori bernama 'ckpts' di mana model akan disimpan, memenuhi prasyarat untuk menjalankan demo.mkdir ckpts# Gunakan alat huggingface-cli untuk mengunduh model.# Waktu pengunduhan dapat bervariasi dari 10 menit hingga 1 jam tergantung pada kondisi jaringan.huggingface-cli unduh Tencent-Hunyuan/HunyuanDiT-v1.2 --local-dir ./ckpts
Jika Anda mengalami kecepatan pengunduhan yang lambat di Tiongkok, Anda dapat mencoba mirror untuk mempercepat proses pengunduhan. Misalnya,
HF_ENDPOINT=https://hf-mirror.com pelukanwajah-cli unduh Tencent-Hunyuan/HunyuanDiT-v1.2 --local-dir ./ckpts
huggingface-cli
mendukung melanjutkan pengunduhan. Jika pengunduhan terhenti, Anda cukup menjalankan kembali perintah unduh untuk melanjutkan proses pengunduhan.
Catatan: Jika kesalahan No such file or directory: 'ckpts/.huggingface/.gitignore.lock'
terjadi selama proses pengunduhan, Anda dapat mengabaikan kesalahan tersebut dan menjalankan kembali perintah unduh.
Semua model akan diunduh secara otomatis. Untuk informasi lebih lanjut tentang model ini, kunjungi repositori Hugging Face di sini.
Model | #Param | URL Unduhan Huggingface | URL Unduhan Tencent Cloud |
---|---|---|---|
mT5 | 1.6B | mT5 | mT5 |
KLIP | 350M | KLIP | KLIP |
Tokenizer | - | Tokenizer | Tokenizer |
DialogGen | 7.0B | DialogGen | DialogGen |
sdxl-vae-fp16-fix | 83M | sdxl-vae-fp16-fix | sdxl-vae-fp16-fix |
Hunyuan-DiT-v1.0 | 1.5B | Hunyuan-DiT | Hunyuan-DiT-v1.0 |
Hunyuan-DiT-v1.1 | 1.5B | Hunyuan-DiT-v1.1 | Hunyuan-DiT-v1.1 |
Hunyuan-DiT-v1.2 | 1.5B | Hunyuan-DiT-v1.2 | Hunyuan-DiT-v1.2 |
Demo data | - | - | Demo data |
Lihat perintah di bawah ini untuk menyiapkan data pelatihan.
Instal dependensi
Kami menawarkan perpustakaan pengelolaan data yang efisien, bernama IndexKits, yang mendukung pengelolaan pembacaan ratusan juta data selama pelatihan, lihat selengkapnya di dokumen.
#1 Instal dependensicd HunyuanDiT pip install -e ./IndexKits
Pengunduhan data
Jangan ragu untuk mengunduh demo data.
#2 Pengunduhan datawget -O ./dataset/data_demo.zip https://dit.hunyuan.tencent.com/download/HunyuanDiT/data_demo.zip buka zip ./dataset/data_demo.zip -d ./dataset mkdir ./dataset/porcelain/arrows ./dataset/porcelain/jsons
Konversi data
Buat file CSV untuk data pelatihan dengan kolom yang tercantum pada tabel di bawah.
Bidang | Diperlukan | Keterangan | Contoh |
---|---|---|---|
image_path | Diperlukan | jalur gambar | ./dataset/porcelain/images/0.png |
text_zh | Diperlukan | teks | Pengembalian Dana |
md5 | Opsional | gambar md5 (Algoritma Intisari Pesan 5) | d41d8cd98f00b204e9800998ecf8427e |
width | Opsional | lebar gambar | 1024 |
height | Opsional | tinggi gambar | 1024 |
️ Bidang opsional seperti MD5, lebar, dan tinggi dapat dihilangkan. Jika dihilangkan, skrip di bawah ini akan menghitungnya secara otomatis. Proses ini dapat memakan waktu ketika menangani data pelatihan berskala besar.
Kami menggunakan Arrow untuk format data pelatihan, menawarkan representasi data dalam memori yang standar dan efisien. Skrip konversi disediakan untuk mengubah file CSV menjadi format Panah.
#3 Konversi data python ./hydit/data_loader/csv2arrow.py ./dataset/porcelain/csvfile/image_text.csv ./dataset/porcelain/arrows 1
Pemilihan Data dan Pembuatan File Konfigurasi
Kami mengonfigurasi data pelatihan melalui file YAML. Dalam file ini, Anda dapat menyiapkan strategi pemrosesan data standar untuk memfilter, menyalin, menghapus duplikasi, dan lainnya terkait data pelatihan. Untuk detail lebih lanjut, lihat ./IndexKits.
Untuk contoh file, silakan merujuk ke file. Untuk file konfigurasi parameter lengkap, lihat file.
Buat file indeks data pelatihan menggunakan file YAML.
# Persiapan Data Resolusi Tunggal idk base -c dataset/yamls/porcelain.yaml -t dataset/porcelain/jsons/porcelain.json # Persiapan Data Multi Resolusi entahlah multireso -c dataset/yamls/porcelain_mt.yaml -t dataset/porcelain/jsons/porcelain_mt.json
Struktur direktori untuk dataset porcelain
adalah:
cd ./kumpulan data porselen ├──gambar/ (file gambar) │ ├──0.png │ ├──1.png │ ├──...... ├──csvfile/ (file csv berisi pasangan teks-gambar) │ ├──image_text.csv ├──arrows/ (file panah yang berisi semua data pelatihan yang diperlukan) │ ├──00000.panah │ ├──00001.panah │ ├──...... ├──jsons/ (file indeks data pelatihan akhir yang membaca data dari file panah selama pelatihan) │ ├──porcelain.json │ ├──porcelain_mt.json
Persyaratan:
Persyaratan minimumnya adalah satu GPU dengan memori minimal 20 GB, namun kami menyarankan untuk menggunakan GPU dengan memori sekitar 30 GB untuk menghindari pembongkaran memori host.
Selain itu, kami mendorong pengguna untuk memanfaatkan beberapa GPU di berbagai node untuk mempercepat pelatihan pada kumpulan data besar.
Melihat:
Pengguna pribadi juga dapat menggunakan Kohya yang ringan untuk menyempurnakan model dengan memori sekitar 16 GB. Saat ini, kami mencoba untuk lebih mengurangi penggunaan memori kerangka tingkat industri kami untuk pengguna pribadi.
Jika Anda memiliki cukup memori GPU, coba hapus --cpu-offloading
atau --gradient-checkpointing
untuk mengurangi biaya waktu.
Khusus untuk pelatihan terdistribusi, Anda memiliki fleksibilitas untuk mengontrol pelatihan satu node / multi-node dengan menyesuaikan parameter seperti --hostfile
dan --master_addr
. Untuk lebih jelasnya, lihat tautan.
# Pelatihan Resolusi TunggalPYTHONPATH=./ sh hydit/train.sh --index-file dataset/porcelain/jsons/porcelain.json# Pelatihan Multi ResolusiPYTHONPATH=./ sh hydit/train.sh --index-file dataset/porcelain/jsons /porcelain_mt.json --multireso --reso-step 64# Pelatihan dengan HunyuanDiT versi lama (<= v1.1)PYTHONPATH=./ sh hydit/train_v1.1.sh --index-file dataset/porcelain/jsons/porcelain.json
Setelah pos pemeriksaan disimpan, Anda dapat menggunakan perintah berikut untuk mengevaluasi model.
# Inferensi # Anda harus mengganti 'log_EXP/xxx/checkpoints/final.pt' dengan path.python sample_t2i.py --infer-mode fa --prompt "青花瓷风格,一只可爱的哈士奇" --no-enhance - -dit-berat log_EXP/xxx/checkpoints/final.pt --load-key module# HunyuanDiT versi lama (<= v1.1)# Anda harus mengganti 'log_EXP/xxx/checkpoints/final.pt' dengan path Anda yang sebenarnya.python sample_t2i.py --infer-mode fa - -prompt "青花瓷风格,一只可爱的哈士奇" --model-root ./HunyuanDiT-v1.1 --use-style-cond --size-cond 1024 1024 --beta-end 0,03 --no-enhance --dit-weight log_EXP/xxx/checkpoints/final.pt --load- modul kunci
Kami menyediakan skrip pelatihan dan inferensi untuk LoRA, yang dirinci di ./lora.
# Pelatihan untuk porselen LoRA.PYTHONPATH=./ sh lora/train_lora.sh --index-file dataset/porcelain/jsons/porcelain.json# Inferensi menggunakan LORA Weights.python sample_t2i.py --infer-mode fa --prompt yang terlatih "青花瓷风格,一只小狗" --tidak-meningkatkan --lora-ckpt log_EXP/001-lora_porcelain_ema_rank64/checkpoints/0001000.pt
Kami menawarkan dua jenis anak timbangan LoRA terlatih untuk porcelain
dan jade
, lihat detailnya di tautan
cd HunyuanDiT# Gunakan alat huggingface-cli untuk mengunduh model.huggingface-cli unduh Tencent-Hunyuan/HYDiT-LoRA --local-dir ./ckpts/t2i/lora# Quick startpython sample_t2i.py --infer-mode fa - -mengingatkan "青花瓷风格,一只猫在追蝴蝶" --no-enhance --load-key ema --lora-ckpt ./ckpts/t2i/lora/porcelain
Contoh data pelatihan | |||
青花瓷风格,一只蓝色的鸟儿站在蓝色的花瓶上,周围点缀着白色花朵,背景是白色 (Gaya porselen, a burung biru berdiri di atas vas biru, dikelilingi bunga putih, dengan latar belakang putih. ) | 青花瓷风格,这是一幅蓝白相间的陶瓷盘子,上面描bisnis asuransi kesehatan (Gaya porselen, ini adalah piring keramik biru dan putih yang menggambarkan rubah dan anak-anaknya berjalan-jalan di hutan, dengan latar belakang putih.) | porselen gaya, dengan latar belakang hitam, serigala biru berdiri di atas piring biru dan putih, dikelilingi oleh pepohonan dan bulan.) | 青花瓷风格,在蓝色背景上,一只蓝色蝴蝶和白色花朵被放置在中央 (Gaya porselen, dengan latar belakang biru, kupu-kupu biru dan bunga putih ditempatkan di tengah.) |
Contoh hasil inferensi | |||
青花瓷风格,苏州园林 (Gaya porselen, Taman Suzhou.) | 青花瓷风格,一朵荷花 (Gaya porselen, bunga teratai.) | 青花瓷风格,一只羊(Gaya porselen, seekor domba.) | 青花瓷风格,一个女孩在雨中跳舞(Gaya porselen, seorang gadis menari di tengah hujan.) |
Menjalankan HunyuanDiT dalam GPU VRAM di bawah 6GB kini tersedia berdasarkan diffuser. Di sini kami memberikan instruksi dan demo untuk memulai cepat Anda.
Versi 6GB mendukung kartu grafis seri arsitektur Nvidia Ampere seperti RTX 3070/3080/4080/4090, A100, dan lain sebagainya.
Satu-satunya hal yang perlu Anda lakukan adalah menginstal perpustakaan berikut:
pip install -U bitsandbytes pip instal git+https://github.com/huggingface/diffusers pip instal obor==2.0.0
Kemudian Anda dapat menikmati perjalanan teks-ke-gambar HunyuanDiT secara langsung di bawah GPU VRAM 6GB!
Ini demo untuk Anda.
cd HunyuanDiT# Mulai cepatmodel_id=Tencent-Hunyuan/HunyuanDiT-v1.2-Diffusers-Distilasi prompt=一个宇航员在骑马 menyimpulkan_langkah=50 skala_panduan=6 python3 lite/inference.py ${model_id} ${prompt} ${infer_steps} ${guidance_scale}
Detail lebih lanjut dapat ditemukan di ./lite.
Pastikan lingkungan conda diaktifkan sebelum menjalankan perintah berikut.
# Secara default, kami memulai UI berbahasa Mandarin. Menggunakan Flash Attention untuk akselerasi.python app/hydit_app.py --infer-mode fa# Anda dapat menonaktifkan model peningkatan jika memori GPU tidak mencukupi.# Peningkatan tidak akan tersedia sampai Anda memulai ulang aplikasi tanpa `--no- tingkatkan` bendera. python app/hydit_app.py --no-enhance --infer-mode fa# Mulai dengan UI bahasa Inggrispython app/hydit_app.py --lang en --infer-mode fa# Mulai UI generasi T2I multi-putaran. # Jika memori GPU Anda kurang dari 32 GB, gunakan '--load-4bit' untuk mengaktifkan kuantisasi 4-bit, yang memerlukan setidaknya 22 GB memori.python app/multiTurnT2I_app.py --infer-mode fa
Kemudian demonya dapat diakses melalui http://0.0.0.0:443. Perlu dicatat bahwa 0.0.0.0 di sini harus XXXX dengan IP server Anda.
Silakan instal PyTorch versi 2.0 atau lebih tinggi terlebih dahulu untuk memenuhi persyaratan versi perpustakaan diffuser yang ditentukan.
Instal diffuser, pastikan versinya setidaknya 0.28.1:
pip instal git+https://github.com/huggingface/diffusers.git
atau
pemasangan pip diffuser
Anda dapat menghasilkan gambar dengan perintah berbahasa Mandarin dan Inggris menggunakan skrip Python berikut:
import torchfrom diffusers import HunyuanDiTPipelinepipe = HunyuanDiTPipeline.from_pretrained("Tencent-Hunyuan/HunyuanDiT-v1.2-Diffusers", torch_dtype=torch.float16)pipe.to("cuda")# Anda juga dapat menggunakan perintah bahasa Inggris karena HunyuanDiT mendukung kedua bahasa Inggris dan bahasa Mandarin# prompt = "Seorang astronot menunggang kuda"prompt = "一个宇航员在骑马"image = pipa(prompt).images[0]
Anda dapat menggunakan model sulingan kami untuk menghasilkan gambar lebih cepat:
import torchfrom diffusers import HunyuanDiTPipelinepipe = HunyuanDiTPipeline.from_pretrained("Tencent-Hunyuan/HunyuanDiT-v1.2-Diffusers-Distilled", torch_dtype=torch.float16)pipe.to("cuda")# Anda juga dapat menggunakan prompt bahasa Inggris karena mendukung HunyuanDiT baik bahasa Inggris dan Cina# prompt = "Seorang astronot mengendarai kuda"prompt = "一个宇航员在骑马"image = pipa(prompt, num_inference_steps=25).images[0]
Detail lebih lanjut dapat ditemukan di HunyuanDiT-v1.2-Diffusers-Distilled
Fungsi lainnya: Untuk fungsi lain seperti LoRA dan ControlNet, silakan lihat README dari ./diffusers.
Kami menyediakan beberapa perintah untuk memulai cepat:
# Hanya Teks-ke-Gambar. Flash Attention modepython sample_t2i.py --infer-mode fa --prompt "渔舟唱晚" --no-enhance# Hasilkan gambar dengan ukuran gambar lain.python sample_t2i.py --infer-mode fa --prompt "渔舟唱晚" --ukuran gambar 1280 768# Peningkatan Cepat + Teks-ke-Gambar. DialogGen dimuat dengan kuantisasi 4-bit, tetapi mungkin kehilangan kinerja.python sample_t2i.py --infer-mode fa --prompt "渔舟唱晚" --load-4bit
Contoh perintah lainnya dapat ditemukan di example_prompts.txt
Kami mencantumkan beberapa konfigurasi yang lebih berguna untuk kemudahan penggunaan:
Argumen | Bawaan | Keterangan |
---|---|---|
--prompt | Tidak ada | Teks meminta untuk pembuatan gambar |
--image-size | 1024 1024 | Ukuran gambar yang dihasilkan |
--seed | 42 | Benih acak untuk menghasilkan gambar |
--infer-steps | 100 | Jumlah langkah pengambilan sampel |
--negative | - | Dorongan negatif untuk menghasilkan citra |
--infer-mode | obor | Mode inferensi (obor, fa, atau trt) |
--sampler | ddpm | Sampler difusi (ddpm, ddim, atau dpmms) |
--no-enhance | PALSU | Nonaktifkan model peningkatan cepat |
--model-root | ckpts | Direktori root dari pos pemeriksaan model |
--load-key | ya | Memuat model siswa atau model EMA (ema atau modul) |
--load-4bit | Fasle | Muat model DialogGen dengan kuantisasi 4bit |
Mendukung dua alur kerja: Standard ComfyUI dan Diffusers Wrapper, dengan yang pertama direkomendasikan.
Mendukung HunyuanDiT-v1.1 dan v1.2.
Modul pendukung, model lora dan klip lora dilatih oleh Kohya.
Modul pendukung, model lora dilatih oleh skrip pelatihan resmi HunyunDiT.
KontrolNet akan segera hadir.
Detail lebih lanjut dapat ditemukan di ./comfyui-hydit
Kami mendukung kode khusus untuk kohya_ss GUI, dan kode pelatihan skrip sd untuk HunyuanDiT. Detail lebih lanjut dapat ditemukan di ./kohya_ss-hydit
Hunyuan-DiT <= v1.1
# =============== v1.1 = ==============# Unduh modelhuggingface-cli unduh Tencent-Hunyuan/HunyuanDiT-v1.1 --local-dir ./HunyuanDiT-v1.1# Inferensi dengan modelpython sample_t2i.py --mode kesimpulan fa --prompt "渔舟唱晚" --model-root ./HunyuanDiT-v1.1 --use-style-cond --size-cond 1024 1024 --beta-end 0,03# ============ === v1.0 ============== =# Unduh unduhan modelhuggingface-cli Tencent-Hunyuan/HunyuanDiT --local-dir ./HunyuanDiT-v1.0# Inferensi dengan modelpython sample_t2i.py --infer-mode fa --prompt "渔舟唱晚" --model-root ./HunyuanDiT-v1. 0 --use-style-cond --size-cond 1024 1024 --beta-akhir 0,03
Kami menyediakan skrip pelatihan untuk ControlNet, yang dirinci di ./controlnet.
# Pelatihan untuk ControlNet.PYTHONPATH=./ sh hydit/train_controlnet.sh yang cerdik
Kami menawarkan tiga jenis beban ControlNet terlatih untuk depth
dan pose
canny
, lihat detailnya di tautan
cd HunyuanDiT# Gunakan alathuggingface-cli untuk mengunduh model.# Sebaiknya gunakan bobot sulingan sebagai model dasar untuk inferensi ControlNet, karena bobot yang telah kami sediakan telah dilatih pada bobot tersebut.huggingface-cli unduh Tencent-Hunyuan/HYDiT-ControlNet- v1.2 --local-dir ./ckpts/t2i/controlnet unduh huggingface-cli Tencent-Hunyuan/Distillation-v1.2 ./pytorch_model_distill.pt --local-dir ./ckpts/t2i/model# Mulai cepatpython3 sample_controlnet.py --infer-mode fa --no-enhance --load -penyulingan kunci --infer-langkah 50 --tipe kontrol cerdik --prompt "在夜晚的酒店门前,一座古老的中国风格的狮子雕像矗立着,它的眼睛闪烁着光芒,仿佛在守护着这座建筑。背景是夜晚foto, foto, foto, foto, foto, foto, foto, foto, foto, foto, foto, foto, foto, foto, foto, foto "" --condition-image-path controlnet/asset/input/canny.jpg --control-weight 1.0
Masukan Kondisi | ||
Kontrol CerdikNet | Kontrol KedalamanNet | Pose KontrolNet |
bisnis, bisnis, dan bisnis,它的眼睛闪烁着光芒,仿佛在守护着这座建筑。背景是夜晚的酒店前,构图方式是特写,平视,居中构图。这张照片呈现了真实摄影风格,蕴含了中国雕塑文化,同时展现了神秘氛围(Di Malam hari, patung singa kuno bergaya Tiongkok berdiri di depan hotel, matanya berbinar seolah menjaga gedung. Latar belakangnya adalah pintu masuk hotel pada malam hari, dengan komposisi close-up, eye-level, dan terpusat. Foto ini menghadirkan gaya fotografi realistis, mewujudkan budaya patung Tiongkok, dan mengungkap suasana misterius.) | 在茂密的森林中,一只黑白相间的熊猫静静地坐在绿树红花中,周围是山川和海洋。背景是dalam Di hutan lebat, seekor panda hitam putih duduk dengan tenang di antara pepohonan hijau dan bunga merah, dikelilingi pegunungan dan lautan. Latar belakangnya adalah hutan siang hari dengan banyak cahaya. Foto menggunakan komposisi close-up, eye-level, dan terpusat untuk menciptakan efek realistis.) | 在白天的森林中,一位穿着绿色上衣的亚洲女性站在大象旁边。照片采用了中景、平视和居中dalam Di hutan siang hari, seorang wanita Asia yang mengenakan kemeja hijau berdiri di samping seekor gajah. Foto menggunakan komposisi medium shot, eye-level, dan centered untuk menciptakan efek realistis. Gambar ini mewujudkan budaya fotografi karakter dan menyampaikan suasana yang tenang.) |
Keluaran KontrolNet | ||
Hunyuan-Captioner memenuhi kebutuhan teknik teks-ke-gambar dengan mempertahankan konsistensi gambar-teks tingkat tinggi. Itu dapat menghasilkan deskripsi gambar berkualitas tinggi dari berbagai sudut, termasuk deskripsi objek, hubungan objek, informasi latar belakang, gaya gambar, dll. Kode kami didasarkan pada implementasi LLaVA.
A. Instal dependensi
Ketergantungan dan instalasi pada dasarnya sama dengan model dasar .
B. Pengunduhan model
# Gunakan alat huggingface-cli untuk mengunduh model.huggingface-cli unduh Tencent-Hunyuan/HunyuanCaptioner --local-dir ./ckpts/captioner
Model kami mendukung tiga mode berbeda termasuk: membuat teks berbahasa Mandarin secara langsung , membuat teks berbahasa Mandarin berdasarkan pengetahuan khusus , dan secara langsung membuat teks bahasa Inggris . Informasi yang dimasukkan dapat berupa isyarat yang akurat atau label yang berisik (misalnya, deskripsi mentah yang dirayapi dari internet). Model tersebut mampu menghasilkan deskripsi yang andal dan akurat berdasarkan informasi yang disisipkan dan konten gambar.
Mode | Templat Cepat | Keterangan |
---|---|---|
keterangan_zh | jam tangan foto | Keterangan dalam bahasa Cina |
masukkan_konten | 根据提示词“{}”,描述这张图 foto | Caption dengan sisipan pengetahuan |
keterangan_en | Tolong jelaskan isi gambar ini | Keterangan dalam bahasa Inggris |
A. Inferensi gambar tunggal dalam bahasa Cina
python mllm/caption_demo.py --mode "caption_zh" --image_file "mllm/images/demo1.png" --model_path "./ckpts/captioner"
B. Masukkan pengetahuan spesifik ke dalam teks
python mllm/caption_demo.py --mode "insert_content" --content "宫保鸡丁" --image_file "mllm/images/demo2.png" --model_path "./ckpts/captioner"
C. Inferensi gambar tunggal dalam bahasa Inggris
python mllm/caption_demo.py --mode "caption_en" --image_file "mllm/images/demo3.png" --model_path "./ckpts/captioner"
D. Inferensi beberapa gambar dalam bahasa Cina