Buckets:
Compartilhando pipelines e modelos
Compartilhe seus pipelines, modelos e agendadores no Hub com PushToHubMixin. Este mixin:
- cria um repositório no Hub
- salva os arquivos do seu modelo, agendador ou pipeline para que possam ser recarregados posteriormente
- envia a pasta contendo esses arquivos para o Hub
Faça login na sua conta do Hugging Face com o seu token de acesso.
from huggingface_hub import notebook_login
notebook_login()
hf auth login
Faça push para o namespace do seu usuário com um id curto ("my-controlnet-model") ou para uma organização com "your-org/my-controlnet-model".
Modelos
Para enviar um modelo para o Hub, chame push_to_hub() e especifique o id do repositório do modelo.
from diffusers import ControlNetModel
controlnet = ControlNetModel(
block_out_channels=(32, 64),
layers_per_block=2,
in_channels=4,
down_block_types=("DownBlock2D", "CrossAttnDownBlock2D"),
cross_attention_dim=32,
conditioning_embedding_out_channels=(16, 32),
)
controlnet.push_to_hub("my-controlnet-model")
O método push_to_hub() salva o arquivo config.json do modelo e os pesos são salvos automaticamente como arquivos safetensors.
Carregue o modelo novamente com ControlNetModel.from_pretrained().
model = ControlNetModel.from_pretrained("your-namespace/my-controlnet-model")
Agendador
Para enviar um agendador para o Hub, chame push_to_hub() e especifique o id do repositório do agendador.
from diffusers import DDIMScheduler
scheduler = DDIMScheduler(
beta_start=0.00085,
beta_end=0.012,
beta_schedule="scaled_linear",
clip_sample=False,
set_alpha_to_one=False,
)
scheduler.push_to_hub("my-ddim-scheduler")
O método push_to_hub() salva o arquivo scheduler_config.json do agendador no repositório especificado.
Carregue o agendador novamente com from_pretrained().
scheduler = DDIMScheduler.from_pretrained("your-namespace/my-ddim-scheduler")
Pipeline
Para enviar um pipeline para o Hub, carregue-o com from_pretrained() e, em seguida, chame push_to_hub() com um id de repositório.
import torch
from diffusers import DiffusionPipeline
pipeline = DiffusionPipeline.from_pretrained(
"Qwen/Qwen-Image", dtype=torch.bfloat16, device_map="cuda" # or "mps", "xpu", "cpu"
)
pipeline.push_to_hub("your-namespace/my-qwen-image")
O método push_to_hub() salva cada componente em uma subpasta no repositório. Carregue o pipeline novamente com DiffusionPipeline.from_pretrained().
pipeline = DiffusionPipeline.from_pretrained("your-namespace/my-qwen-image")
Privacidade
Defina private=True em push_to_hub() para manter os arquivos de um modelo, agendador ou pipeline privados.
controlnet.push_to_hub("my-controlnet-model-private", private=True)
Pass create_pr=True para abrir um pull request em um repositório existente no Hub, em vez de fazer push diretamente para a branch padrão.
Modelos e pipelines também aceitam variant= no push quando você deseja um arquivo de pesos nomeado, como fp16. Schedulers não usam variant.
Repositórios privados são visíveis apenas para você. Outros usuários não poderão clonar o repositório e ele não aparecerá nos resultados de busca. Mesmo que um usuário tenha a URL do seu repositório privado, ele receberá um 404 - Sorry, we can't find the page you are looking for. Você deve estar logado para carregar um modelo de um repositório privado.
Xet Storage Details
- Size:
- 4.76 kB
- Xet hash:
- e64e1015d78f8a9ce5fe7e8d5b15d3247a073a46b90d2c363a3da291e64bedd6
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.