Buckets:

hf-doc-build/doc / diffusers /v0.43.0 /pt /modular_diffusers /coming_from_diffusion_pipeline.md
mishig's picture
|
download
raw
3.54 kB

Vindo do DiffusionPipeline

Se você está familiarizado com DiffusionPipeline e está trabalhando com um ModularPipeline pela primeira vez, algumas coisas funcionam de maneira diferente. Elas estão listadas aqui para que você as tenha em mente antes de seguir o quickstart.

  • O carregamento é preguiçoso e flexível. from_pretrained() monta o pipeline a partir do modular_model_index.json do repositório sem carregar nenhum peso. load_components() então os carrega, e não precisa ser tudo de uma vez: por padrão, carrega tudo, mas você pode carregar apenas os componentes que nomear com names, ou o conjunto que um workflow precisa com workflow. update_components() permite reutilizar um componente que você já possui, ou um que difere da especificação do repositório. Veja Carregando componentes e Atualizando componentes.
  • ModularPipeline lê um índice diferente, modular_model_index.json, mas também funciona com um repositório que possui apenas um model_index.json, desde que o modelo tenha um pipeline modular. O inverso não é verdadeiro: DiffusionPipeline e as classes AutoPipeline não funcionam com um repositório que possui apenas um modular_model_index.json.
  • Uma chamada retorna o estado do pipeline, que também armazena os valores intermediários (prompt_embeds, latents, ...). Solicite o que você precisa com o argumento output, output="images" ou output=["images", "latents"], ou leia um atributo do estado, como no quickstart. Veja States.
  • O Classifier-free guidance é suportado no componente guider, e não como argumento de chamada de guidance_scale: pipe.update_components(guider=ClassifierFreeGuidance(guidance_scale=5.0)). Consulte o guia de guiders.
  • Não existe callback_on_step_end; no entanto, você pode inserir um bloco no loop de desruidamento para usar suas funções de callback existentes. Consulte Pipelines modulares no guia de callbacks.
  • O pipeline é um grafo de blocos que você pode modificar (remover, inserir, substituir) antes de construí-lo com init_pipeline(); pipe.blocks retorna uma cópia, então edite os blocos primeiro. Consulte Compor novos fluxos de trabalho.
  • O offloading é tratado por um ComponentsManager, que pode atender a vários pipelines que compartilham componentes. Consulte o guia do ComponentsManager.

Xet Storage Details

Size:
3.54 kB
·
Xet hash:
6c92eac6f1dec73842eb44cfefd6a7c3f27e7ac48cca37e49907263b4a4f204f

Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.