Diffusers documentation
Berasal dari DiffusionPipeline
Mulai
Inferensi
Menggunakan pipeline difusi
Adaptor dan personalisasi
Optimalkan dan skalakan
Performa dasar
Kecepatan dan memori
Inferensi terdistribusi
Kuantisasi
Akselerasi spesifik perangkat keras
Metode komunitas
Modular Diffusers
IkhtisarMulai CepatBerasal dari DiffusionPipelineStatesModularPipelineBlocksSequentialPipelineBlocksLoopSequentialPipelineBlocksAutoPipelineBlocksModularPipelinePemanduComponentsManagerTemplate docstring dan parameter otomatisMembangun Blok KustomMenggunakan Blok Kustom dengan Mellon
Pelatihan dan penyesuaian halus
Sumber daya
Kontribusi
API
Berasal dari DiffusionPipeline
Jika Anda sudah familiar dengan DiffusionPipeline dan baru pertama kali bekerja dengan ModularPipeline, ada beberapa hal yang bekerja dengan cara berbeda. Hal-hal tersebut diuraikan di sini agar Anda memahaminya sebelum mengikuti quickstart.
- Pemmuatan bersifat lambat dan fleksibel. from_pretrained() membangun pipeline dari
modular_model_index.jsonrepositori tanpa memuat bobot apa pun. load_components() kemudian memuat komponen-komponen tersebut, dan tidak harus sekaligus: secara default memuat semuanya, tetapi Anda dapat memuat hanya komponen yang Anda sebutkan dengannames, atau set yang dibutuhkan satu alur kerja denganworkflow. update_components() memungkinkan Anda menggunakan kembali komponen yang sudah Anda miliki, atau komponen yang berbeda dari spesifikasi repositori. Lihat Pemmuatan komponen dan Pembaruan komponen. - ModularPipeline membaca indeks yang berbeda,
modular_model_index.json, tetapi juga berfungsi dengan repositori yang hanya memilikimodel_index.json, selama model tersebut memiliki modular pipeline. Kebalikannya tidak berlaku: DiffusionPipeline dan kelasAutoPipelinetidak berfungsi dengan repositori yang hanya memilikimodular_model_index.json. - Panggilan mengembalikan status pipeline, yang juga menyimpan nilai-nilai antara (
prompt_embeds,latents, …). Minta apa yang Anda butuhkan dengan argumenoutput,output="images"atauoutput=["images", "latents"], atau baca atribut dari status, seperti pada quickstart. Lihat States. - Classifier-free guidance didukung di komponen
guider, bukan sebagai argumen pemanggilanguidance_scale:pipe.update_components(guider=ClassifierFreeGuidance(guidance_scale=5.0)). Lihat panduan guiders. - Tidak ada
callback_on_step_end; namun, Anda dapat menyisipkan blok ke dalam loop denoising untuk menggunakan fungsi callback yang sudah ada. Lihat Pipelines modular di panduan callback. - Pipeline adalah graf dari blok-blok yang dapat Anda ubah (pop, insert, replace) sebelum membangunnya dengan init_pipeline();
pipe.blocksmengembalikan salinan, jadi ubah blok-bloknya terlebih dahulu. Lihat Mengomposisi workflow baru. - Offloading ditangani oleh ComponentsManager, yang dapat melayani beberapa pipeline yang berbagi komponen. Lihat panduan ComponentsManager.