Diffusers documentation

단일 파일

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

단일 파일

from_single_file() 메서드를 사용하면 다음을 로드할 수 있습니다:

  • … 단일 파일에 저장된 모델로, …와 같은 diffusion 생태계의 모델을 다룰 때 유용하며, 모델의 저장 및 공유를 위해 단일 파일 레이아웃을 주로 사용하는 경우에 적합합니다.
  • 원래 배포된 레이아웃으로 저장된 모델로, 다른 서비스로 파인튜닝된 모델을 작업하고 Diffusers 모델 객체 및 파이프라인에 직접 로드하려는 경우 유용합니다

Diffusers 멀티폴더 레이아웃과 단일 파일 레이아웃의 차이, 그리고 이러한 서로 다른 레이아웃에 저장된 모델을 로드하는 방법에 대해 자세히 알아보려면 모델 파일 및 레이아웃 가이드를 읽어보세요.

지원되는 파이프라인

지원되는 모델

FromSingleFileMixin

class diffusers.loaders.FromSingleFileMixin

< >

( )

.ckpt 형식으로 저장된 모델 가중치를 DiffusionPipeline에 로드합니다.

from_single_file

< >

( pretrained_model_link_or_path**kwargs )

매개변수

  • pretrained_model_link_or_path (str 또는 os.PathLike, 선택 사항) — 다음 중 하나일 수 있습니다:
    • Hub에 있는 .ckpt 파일에 대한 링크(예: "https://huggingface.co/<repo_id>/blob/main/<path_to_file>.ckpt")
    • 모든 파이프라인 가중치가 포함된 파일의 경로입니다.
  • dtype (str 또는 torch.dtype, 선택 사항) — 기본 torch.dtype를 재정의하여 다른 dtype로 모델을 로드합니다.
  • force_download (bool, 선택 사항, 기본값 False) — 모델 가중치 및 구성 파일의 (재)다운로드를 강제할지 여부입니다. 캐시된 버전이 존재하는 경우 이를 무시합니다.
  • cache_dir (str | os.PathLike, 선택 사항) — 표준 캐시를 사용하지 않을 경우, 다운로드된 사전 학습 모델 구성이 캐시되는 디렉터리의 경로입니다.
  • proxies (dict[str, str], 선택) — 프로토콜 또는 엔드포인트별로 사용할 프록시 서버의 사전입니다. 예를 들어, {'http': 'foo.bar:3128', 'http://hostname': 'foo.bar:4012'}와 같습니다. 각 요청에 프록시가 사용됩니다.
  • local_files_only (bool, 선택 사항, 기본값 False) — 로컬 모델 가중치 및 구성 파일만 로드할지 여부를 지정합니다. True로 설정하면 Hub에서 모델을 다운로드하지 않습니다.
  • token (str 또는 bool, 선택 사항) — 원격 파일에 대한 HTTP bearer 인증으로 사용할 토큰입니다. True인 경우, diffusers-cli login에서 생성된 토큰(~/.huggingface에 저장됨)이 사용됩니다.
  • revision (str, 선택 사항, 기본값 "main") — 사용할 특정 모델 버전입니다. Git에서 허용하는 브랜치 이름, 태그 이름, 커밋 ID 또는 기타 식별자일 수 있습니다.
  • original_config_file (str, 선택 사항) — 모델을 학습하는 데 사용된 원래 config 파일의 경로입니다. 제공되지 않으면 checkpoint 파일에서 config 파일을 추론합니다.
  • config (str, 선택 사항) — 다음 중 하나일 수 있습니다:
    • Hub에 호스팅된 사전 학습된 파이프라인의 repo id(예: CompVis/ldm-text2im-large-256) 문자열
    • Diffusers 형식의 파이프라인 구성 요소 설정을 포함하는 디렉터리 경로(예: ./my_pipeline_directory/)
  • disable_mmap (‘bool’, 선택 사항, 기본값 ‘False’) — Safetensors 모델을 로드할 때 mmap을 비활성화할지 여부입니다. 모델이 네트워크 마운트나 하드 드라이브에 있는 경우 이 옵션을 사용하면 성능이 더 좋아질 수 있습니다.
  • kwargs (나머지 키워드 인자 사전, 선택 사항) — 특정 파이프라인 클래스의 파이프라인 구성 요소인 로드 및 저장 가능 변수를 덮어쓸 수 있습니다. 덮어쓴 구성 요소는 파이프라인의 __init__ 메서드에 직접 전달됩니다. 자세한 내용은 아래 예시를 참조하세요.

.ckpt 또는 .safetensors 형식으로 저장된 사전 학습된 파이프라인 가중치에서 DiffusionPipeline을 초기화합니다. 파이프라인은 기본적으로 평가 모드(model.eval())로 설정됩니다.

예:

>>> 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

class diffusers.loaders.FromOriginalModelMixin

< >

( )

.ckpt 또는 .safetensors 형식으로 저장된 사전 학습된 가중치를 모델에 로드합니다.

from_single_file

< >

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

매개변수

  • pretrained_model_link_or_path_or_dict (str, 선택 사항) — 다음 중 하나일 수 있습니다:
    • Hub에서 .safetensors 또는 .ckpt 파일(예: "https://huggingface.co/<repo_id>/blob/main/<path_to_file>.safetensors")에 대한 링크
    • 구성 모델의 가중치를 포함하는 로컬 file의 경로.
    • 구성 요소 모델 가중치를 포함하는 상태 딕트(state dict)입니다.
  • config (str, 선택 사항) —
    • Hub에 호스팅된 사전 학습된 파이프라인의 repo id(예: CompVis/ldm-text2im-large-256) 문자열입니다.
    • Diffusers 형식의 파이프라인 구성 요소 설정을 포함하는 디렉터리 경로(예: ./my_pipeline_directory/)
  • subfolder (str, 선택 사항, 기본값 "") — Hub 또는 로컬의 더 큰 모델 저장소 내에서 모델 파일의 서브폴더 위치입니다.
  • original_config (str, 선택 사항) — 모델의 원래 형식으로 구성된 설정을 포함하는 Dict 또는 yaml 파일 경로입니다. Dict가 제공되면 모델 구성을 초기화하는 데 사용됩니다.
  • dtype (torch.dtype, 선택 사항) — 기본 torch.dtype를 무시하고 다른 dtype로 모델을 로드합니다.
  • force_download (bool, 선택 사항, 기본값 False) — 모델 가중치 및 구성 파일의 (재)다운로드를 강제할지 여부입니다. 캐시된 버전이 존재하는 경우 이를 무시합니다.
  • cache_dir (str | os.PathLike, 선택 사항) — 표준 캐시를 사용하지 않을 경우, 다운로드된 사전 학습 모델 구성이 캐시되는 디렉터리의 경로입니다.
  • proxies (dict[str, str], 선택) — 프로토콜 또는 엔드포인트별로 사용할 프록시 서버의 사전입니다. 예를 들어, {'http': 'foo.bar:3128', 'http://hostname': 'foo.bar:4012'}와 같습니다. 각 요청에 프록시가 사용됩니다.
  • local_files_only (bool, 선택 사항, 기본값 False) — 로컬 모델 가중치 및 구성 파일만 로드할지 여부를 지정합니다. True로 설정하면 Hub에서 모델을 다운로드하지 않습니다.
  • token (str 또는 bool, 선택 사항) — 원격 파일에 대한 HTTP bearer 인증으로 사용할 토큰입니다. True인 경우, diffusers-cli login에서 생성된 토큰(~/.huggingface에 저장됨)이 사용됩니다.
  • revision (str, 선택 사항, 기본값 "main") — 사용할 특정 모델 버전입니다. Git에서 허용하는 브랜치 이름, 태그 이름, 커밋 ID 또는 기타 식별자일 수 있습니다.
  • low_cpu_mem_usage (bool, 선택 사항, torch 버전이 1.9.0 이상이고 True이고 — is_accelerate_available()이면 기본값은 False): 사전 학습된 가중치만 로드하고 가중치를 초기화하지 않아 모델 로딩 속도를 높입니다. 또한 모델 로딩 중에 CPU 메모리(피크 메모리 포함)를 모델 크기의 1배를 초과하지 않도록 시도합니다. PyTorch 1.9.0 이상에서만 지원됩니다. PyTorch의 이전 버전을 사용하는 경우 이 인수를 True로 설정하면 오류가 발생합니다.
  • disable_mmap (‘bool’, 선택 사항, 기본값 ‘False’) — Safetensors 모델을 로드할 때 mmap을 비활성화할지 여부입니다. 네트워크 마운트나 하드 드라이브에 모델이 있는 경우 mmap의 seek 동작을 잘 처리하지 못할 수 있으므로, 이 옵션을 사용하면 성능이 더 좋아질 수 있습니다.
  • kwargs (나머지 키워드 인자 사전, 선택 사항) — 로드 및 저장 가능한 변수(예: 특정 파이프라인 클래스의 파이프라인 구성 요소)를 덮어쓸 수 있습니다. 덮어쓴 구성 요소는 파이프라인의 __init__ 메서드에 직접 전달됩니다. 자세한 내용은 아래 예시를 참조하세요.

원래 .ckpt 또는 .safetensors 형식으로 저장된 사전 학습된 가중치에서 모델을 초기화합니다. 모델은 기본적으로 평가 모드(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