Diffusers documentation

Tệp đơn

You are viewing main version, which requires installation from source. If you'd like regular pip install, checkout the latest stable version (v0.42.1).
Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

Tệp đơn

Phương thức from_single_file() cho phép bạn tải:

  • một mô hình được lưu trữ trong một tệp duy nhất, hữu ích nếu bạn làm việc với các mô hình từ hệ sinh thái diffusion, chẳng hạn như Automatic1111, và thường dựa vào bố cục tệp đơn để lưu trữ và chia sẻ mô hình
  • một mô hình được lưu trữ theo bố cục phân phối ban đầu của nó, hữu ích nếu bạn đang làm việc với các mô hình được tinh chỉnh bằng các dịch vụ khác và muốn tải trực tiếp chúng vào các đối tượng mô hình và pipeline của Diffusers

Đọc hướng dẫn Các tệp và bố cục mô hình để tìm hiểu thêm về bố cục Diffusers-multifolder so với bố cục tệp đơn, cũng như cách tải các mô hình được lưu trữ trong những bố cục khác nhau này.

Các pipeline được hỗ trợ

Các mô hình được hỗ trợ

FromSingleFileMixin

lớp diffusers.loaders.FromSingleFileMixin

< >

( )

Tải trọng số mô hình được lưu ở định dạng .ckpt vào một DiffusionPipeline.

from_single_file

< >

( pretrained_model_link_or_path**kwargs )

Tham số

  • pretrained_model_link_or_path (str hoặc os.PathLike, tùy chọn) — Có thể là:
    • Một liên kết đến tệp .ckpt (ví dụ "https://huggingface.co/<repo_id>/blob/main/<path_to_file>.ckpt") trên Hub.
    • Đường dẫn đến tệp chứa tất cả trọng số của pipeline.
  • dtype (str hoặc torch.dtype, tùy chọn) — Ghi đè torch.dtype mặc định và tải mô hình với một dtype khác.
  • force_download (bool, tùy chọn, mặc định là False) — Có nên buộc tải lại (re-download) trọng số mô hình và các tệp cấu hình, ghi đè lên các phiên bản đã được lưu trong bộ nhớ đệm nếu chúng tồn tại hay không.
  • cache_dir (str | os.PathLike, tùy chọn) — Đường dẫn đến thư mục nơi cấu hình mô hình được huấn luyện trước đã tải xuống được lưu đệm nếu không sử dụng bộ lưu đệm tiêu chuẩn.
  • proxies (dict[str, str], tuỳ chọn) — Một từ điển các máy chủ proxy để sử dụng theo giao thức hoặc điểm cuối, ví dụ, {'http': 'foo.bar:3128', 'http://hostname': 'foo.bar:4012'}. Các proxy này được sử dụng cho mỗi yêu cầu.
  • local_files_only (bool, tùy chọn, mặc định là False) — Xác định có chỉ tải trọng số và tệp cấu hình của mô hình từ cục bộ hay không. Nếu đặt thành True, mô hình sẽ không được tải xuống từ Hub.
  • token (str hoặc bool, tùy chọn) — Token được sử dụng làm HTTP bearer authorization cho các tệp từ xa. Nếu True, token được tạo từ diffusers-cli login (được lưu trong ~/.huggingface) sẽ được sử dụng.
  • revision (str, tùy chọn, mặc định là "main") — Phiên bản mô hình cụ thể cần sử dụng. Nó có thể là tên nhánh, tên thẻ, id commit, hoặc bất kỳ định danh nào được Git cho phép.
  • original_config_file (str, tùy chọn) — Đường dẫn đến tệp cấu hình gốc được sử dụng để huấn luyện mô hình. Nếu không được cung cấp, tệp cấu hình sẽ được suy ra từ tệp checkpoint.
  • config (str, tuỳ chọn) — Có thể là:
    • Một chuỗi, repo id (ví dụ CompVis/ldm-text2im-large-256) của một pipeline được huấn luyện trước có trên Hub.
    • Đường dẫn đến một thư mục (ví dụ ./my_pipeline_directory/) chứa các cấu hình thành phần pipeline ở định dạng Diffusers.
  • disable_mmap (‘bool’, tùy chọn, mặc định là ‘False’) — Có vô hiệu hóa mmap khi tải mô hình Safetensors hay không. Tùy chọn này có thể cho hiệu suất tốt hơn khi mô hình nằm trên ổ đĩa mạng hoặc ổ cứng.
  • kwargs (từ điển các tham số từ khóa còn lại, tùy chọn) — Có thể được dùng để ghi đè lên các biến load và saveable (các thành phần pipeline của lớp pipeline cụ thể). Các thành phần bị ghi đè sẽ được truyền trực tiếp vào phương thức __init__ của pipeline. Xem ví dụ bên dưới để biết thêm thông tin.

Tạo một DiffusionPipeline từ trọng số pipeline được huấn luyện trước, lưu ở định dạng .ckpt hoặc .safetensors. Pipeline mặc định được đặt ở chế độ đánh giá (model.eval()).

Ví dụ:

>>> from diffusers import StableDiffusionPipeline

>>> # Download pipeline from huggingface.co and cache.
>>> pipeline = StableDiffusionPipeline.from_single_file(
...     "https://huggingface.co/WarriorMama777/OrangeMixs/blob/main/Models/AbyssOrangeMix/AbyssOrangeMix.safetensors"
... )

>>> # Download pipeline from local file
>>> # file is downloaded under ./v1-5-pruned-emaonly.ckpt
>>> pipeline = StableDiffusionPipeline.from_single_file("./v1-5-pruned-emaonly.ckpt")

>>> # Enable float16 and move to GPU
>>> pipeline = StableDiffusionPipeline.from_single_file(
...     "https://huggingface.co/stable-diffusion-v1-5/stable-diffusion-v1-5/blob/main/v1-5-pruned-emaonly.ckpt",
...     torch_dtype=torch.float16,
... )
>>> pipeline.to("cuda")

FromOriginalModelMixin

lớp diffusers.loaders.FromOriginalModelMixin

< >

( )

Tải trọng số được huấn luyện trước đã lưu ở định dạng .ckpt hoặc .safetensors vào một mô hình.

from_single_file

< >

( pretrained_model_link_or_path_or_dict: str | None = None**kwargs )

Tham số

  • pretrained_model_link_or_path_or_dict (str, tuỳ chọn) — Có thể là:
    • Một liên kết đến tệp .safetensors hoặc .ckpt (ví dụ "https://huggingface.co/<repo_id>/blob/main/<path_to_file>.safetensors") trên Hub.
    • Đường dẫn đến một tệp cục bộ chứa trọng số của mô hình thành phần.
    • Một state dict chứa trọng số của mô hình thành phần.
  • config (str, tuỳ chọn) —
    • Một chuỗi, repo id (ví dụ CompVis/ldm-text2im-large-256) của một pipeline được huấn luyện trước có trên Hub.
    • Đường dẫn đến một thư mục (ví dụ ./my_pipeline_directory/) chứa các cấu hình thành phần pipeline ở định dạng Diffusers.
  • subfolder (str, tùy chọn, mặc định là "") — Vị trí thư mục con của tệp mô hình bên trong một kho lưu trữ mô hình lớn hơn trên Hub hoặc cục bộ.
  • original_config (str, tùy chọn) — Dict hoặc đường dẫn đến tệp yaml chứa cấu hình cho mô hình ở định dạng gốc. Nếu một dict được cung cấp, nó sẽ được sử dụng để khởi tạo cấu hình mô hình.
  • dtype (torch.dtype, tùy chọn) — Ghi đè torch.dtype mặc định và tải mô hình với một dtype khác.
  • force_download (bool, tùy chọn, mặc định là False) — Có nên buộc tải lại (re-download) trọng số mô hình và các tệp cấu hình, ghi đè lên các phiên bản đã được lưu trong bộ nhớ đệm nếu chúng tồn tại hay không.
  • cache_dir (str | os.PathLike, tùy chọn) — Đường dẫn đến thư mục nơi cấu hình mô hình được huấn luyện trước đã tải xuống được lưu đệm nếu không sử dụng bộ lưu đệm tiêu chuẩn.
  • proxies (dict[str, str], tuỳ chọn) — Một từ điển các máy chủ proxy để sử dụng theo giao thức hoặc điểm cuối, ví dụ, {'http': 'foo.bar:3128', 'http://hostname': 'foo.bar:4012'}. Các proxy này được sử dụng cho mỗi yêu cầu.
  • local_files_only (bool, tùy chọn, mặc định là False) — Có chỉ tải trọng số và tệp cấu hình của mô hình từ cục bộ hay không. Nếu đặt thành True, mô hình sẽ không được tải xuống từ Hub.
  • token (str hoặc bool, tùy chọn) — Token được sử dụng làm HTTP bearer authorization cho các tệp từ xa. Nếu True, token được tạo từ diffusers-cli login (được lưu trong ~/.huggingface) sẽ được sử dụng.
  • revision (str, tùy chọn, mặc định là "main") — Phiên bản mô hình cụ thể cần sử dụng. Nó có thể là tên nhánh, tên thẻ, id commit, hoặc bất kỳ định danh nào được Git cho phép.
  • low_cpu_mem_usage (bool, tùy chọn, mặc định là True nếu phiên bản torch >= 1.9.0 và — is_accelerate_available() nếu không thì False): Tăng tốc độ tải mô hình bằng cách chỉ tải các trọng số được huấn luyện trước và không khởi tạo các trọng số. Điều này cũng cố gắng không sử dụng nhiều hơn 1 lần kích thước mô hình trong bộ nhớ CPU (kể cả bộ nhớ đỉnh) trong khi tải mô hình. Chỉ hỗ trợ cho PyTorch >= 1.9.0. Nếu bạn đang sử dụng phiên bản PyTorch cũ hơn, việc đặt tham số này thành True sẽ gây ra lỗi.
  • disable_mmap (‘bool’, tùy chọn, mặc định là ‘False’) — Có vô hiệu hóa mmap khi tải mô hình Safetensors hay không. Tùy chọn này có thể cho hiệu suất tốt hơn khi mô hình nằm trên ổ đĩa mạng hoặc ổ cứng, những nơi có thể không xử lý tốt tính chất truy cập ngẫu nhiên (seeky) của mmap.
  • kwargs (từ điển các tham số từ khóa còn lại, tùy chọn) — Có thể được dùng để ghi đè các biến load và saveable (ví dụ như các thành phần pipeline của lớp pipeline cụ thể). Các thành phần bị ghi đè sẽ được truyền trực tiếp vào phương thức __init__ của pipeline. Xem ví dụ bên dưới để biết thêm thông tin.

Khởi tạo một mô hình từ trọng số được huấn luyện trước đã lưu ở định dạng .ckpt hoặc .safetensors gốc. Mô hình mặc định được đặt ở chế độ đánh giá (model.eval()).

>>> from diffusers import StableCascadeUNet

>>> ckpt_path = "https://huggingface.co/stabilityai/stable-cascade/blob/main/stage_b_lite.safetensors"
>>> model = StableCascadeUNet.from_single_file(ckpt_path)
Update on GitHub