AutoModel
AutoModel은 체크포인트의 config.json 파일에서 올바른 모델 클래스를 자동으로 가져옵니다.
AutoModel
from_pretrained
< source >( pretrained_model_or_path: str | os.PathLike | None = None**kwargs )
매개변수
- pretrained_model_name_or_path (
str또는os.PathLike, 선택 사항) — 다음 중 하나일 수 있습니다:- Hub에 호스팅된 사전 학습 모델의 model id 문자열(예:
google/ddpm-celebahq-256). - A path to a directory (for example
./my_model_directory) containing the model weights saved with save_pretrained().
- Hub에 호스팅된 사전 학습 모델의 model id 문자열(예:
- cache_dir (
str | os.PathLike, 선택 사항) — 표준 캐시를 사용하지 않을 경우, 다운로드된 사전 학습 모델 구성이 캐시되는 디렉터리의 경로입니다. - dtype (
torch.dtype, 선택 사항) — 기본torch.dtype를 무시하고 다른 dtype로 모델을 로드합니다. - force_download (
bool, 선택 사항, 기본값False) — 모델 가중치 및 구성 파일의 (재)다운로드를 강제할지 여부입니다. 캐시된 버전이 존재하는 경우 이를 무시합니다. - proxies (
dict[str, str], 선택) — 프로토콜 또는 엔드포인트별로 사용할 프록시 서버의 사전입니다. 예를 들어,{'http': 'foo.bar:3128', 'http://hostname': 'foo.bar:4012'}와 같습니다. 각 요청에 프록시가 사용됩니다. - output_loading_info (
bool, 선택 사항, 기본값False) — 누락된 키, 예상치 못한 키 및 오류 메시지를 포함하는 사전도 함께 반환할지 여부. - local_files_only(
bool, 선택 사항, 기본값False) — 로컬 모델 가중치 및 구성 파일만 로드할지 여부를 지정합니다.True로 설정하면 Hub에서 모델을 다운로드하지 않습니다. - token (
str또는 bool, 선택 사항) — 원격 파일에 대한 HTTP bearer 인증으로 사용할 토큰입니다.True인 경우,diffusers-cli login에서 생성된 토큰(~/.huggingface에 저장됨)이 사용됩니다. - revision (
str, 선택 사항, 기본값"main") — 사용할 특정 모델 버전입니다. Git에서 허용하는 브랜치 이름, 태그 이름, 커밋 ID 또는 기타 식별자일 수 있습니다. - subfolder (
str, 선택 사항, 기본값"") — Hub 또는 로컬의 더 큰 모델 저장소 내에서 모델 파일의 서브폴더 위치입니다. - mirror (
str, 선택 사항) — 중국에서 모델을 다운로드할 때 접근성 문제를 해결하기 위한 미러 소스입니다. 소스의 적시성이나 안전성을 보장하지 않으며, 자세한 정보는 해당 미러 사이트를 참고하세요. - device_map (
str또는dict[str, int | str | torch.device], 선택 사항) — 각 서브모듈이 어디에 배치되어야 하는지 지정하는 맵입니다. 각 파라미터/버퍼 이름별로 정의할 필요는 없으며, 특정 모듈 이름이 포함되면 해당 모듈의 모든 서브모듈이 동일한 장치로 전송됩니다. 기본값은None, 이며, 이는 모델이 CPU에 로드됨을 의미합니다.device_map="auto"를 설정하면 🤗 Accelerate가 가장 최적화된device_map을 자동으로 계산합니다. 각 옵션에 대한 자세한 내용은 device map 설계를 참고하세요. - max_memory (
Dict, 선택 사항) — 최대 메모리에 대한 디바이스 식별자를 나타내는 사전입니다. 설정되지 않으면 각 GPU의 사용 가능한 최대 메모리와 사용 가능한 CPU RAM이 기본값으로 사용됩니다. - offload_folder (
str또는os.PathLike, 선택 사항) —device_map에"disk"값이 포함된 경우 가중치를 오프로드할 경로입니다. - offload_state_dict (
bool, 선택 사항) —True인 경우, CPU state dict의 가중치와 체크포인트의 가장 큰 샤드가 함께 CPU RAM에 맞지 않을 때 RAM 부족을 방지하기 위해 CPU state dict를 임시로 하드 드라이브로 오프로드합니다. 디스크 오프로드가 있는 경우 기본값은True입니다. - low_cpu_mem_usage (
bool, 선택 사항, torch 버전이 1.9.0 이상이면 기본값은True, 그 외에는False) — 가중치를 초기화하지 않고 사전 학습된 가중치만 로드하여 모델 로딩 속도를 높입니다. 또한 모델 로딩 중 CPU 메모리(피크 메모리 포함)를 모델 크기의 1배를 초과하지 않도록 시도합니다. PyTorch 1.9.0 이상에서만 지원됩니다. PyTorch의 이전 버전을 사용하는 경우 이 인수를True로 설정하면 오류가 발생합니다. - variant (
str, 선택 사항) —"fp16"또는"ema"와 같은 지정된variant파일 이름에서 가중치를 로드합니다. - use_safetensors (
bool, 선택 사항, 기본값None) —None으로 설정하면safetensors가중치가 사용 가능한 경우 그리고safetensors라이브러리가 설치된 경우 해당 가중치가 다운로드됩니다.True로 설정하면 모델이safetensors가중치에서 강제로 로드됩니다.False로 설정하면safetensors가중치가 로드되지 않습니다. - disable_mmap (‘bool’, 선택 사항, 기본값 ‘False’) — Safetensors 모델을 로드할 때 mmap을 비활성화할지 여부입니다. 네트워크 마운트나 하드 드라이브에 모델이 있는 경우 mmap의 seek 동작을 잘 처리하지 못할 수 있으므로, 이 옵션을 사용하면 성능이 더 좋아질 수 있습니다.
- trust_remote_cocde (
bool, 선택 사항, 기본값False) — 원격 코드를 신뢰할지 여부
pretrained model configuration에서 사전 학습된 PyTorch 모델을 초기화합니다.
모델은 기본적으로 평가 모드(model.eval())로 설정되며, dropout 모듈은 비활성화됩니다. 모델을 학습하려면 model.train()을 사용하여 다시 학습 모드로 설정해야 합니다.
> 비공개 또는 게이트된 모델을 사용하려면
hf > auth login으로 로그인하세요. 또한 방화벽이 있는 환경에서 이 방법을 사용하려면 특수 > “오프라인 모드”를 활성화할 수도 있습니다.
예:
from diffusers import AutoModel
unet = AutoModel.from_pretrained("stable-diffusion-v1-5/stable-diffusion-v1-5", subfolder="unet")아래와 같은 오류 메시지가 표시되면 다운스트림 작업을 위해 가중치를 미세 조정해야 합니다:
Some weights of UNet2DConditionModel were not initialized from the model checkpoint at stable-diffusion-v1-5/stable-diffusion-v1-5 and are newly initialized because the shapes did not match:
- conv_in.weight: found shape torch.Size([320, 4, 3, 3]) in the checkpoint and torch.Size([320, 9, 3, 3]) in the model instantiated
You should probably TRAIN this model on a down-stream task to be able to use it for predictions and inference.from_config
< source >( pretrained_model_name_or_path_or_dict: str | os.PathLike | dict | None = None**kwargs )
매개변수
- pretrained_model_name_or_path_or_dict (
str,os.PathLike, 또는dict) — 다음 중 하나일 수 있습니다:- Hub에 호스팅된 사전 학습된 모델 구성의 model id(예:
google/ddpm-celebahq-256) 문자열 - 모델 구성 파일이 포함된 디렉터리의 경로(예:
./my_model_directory) - 설정 사전.
- Hub에 호스팅된 사전 학습된 모델 구성의 model id(예:
- cache_dir (
Union[str, os.PathLike], 선택) — 표준 캐시를 사용하지 않을 경우, 다운로드된 사전 학습 모델 구성이 캐시되는 디렉터리의 경로입니다. - force_download (
bool, 선택 사항, 기본값False) — 캐시된 버전이 존재하더라도 이를 무시하고 모델 구성을 (재)다운로드하도록 강제할지 여부. - proxies (
Dict[str, str], 선택) — 프로토콜 또는 엔드포인트별로 사용할 프록시 서버의 사전입니다. - local_files_only(
bool, 선택 사항, 기본값False) — 로컬 모델 구성 파일만 로드할지 여부를 지정합니다. - token (
str또는 bool, 선택 사항) — 원격 파일에 대한 HTTP bearer 인증으로 사용할 토큰입니다. - revision (
str, 선택 사항, 기본값"main") — 사용할 특정 모델 버전입니다. - trust_remote_code (
bool, 선택 사항, 기본값False) — 원격 코드를 신뢰할지 여부. - subfolder (
str, 선택 사항, 기본값"") — Hub 또는 로컬의 더 큰 모델 저장소 내에서 모델 파일의 서브폴더 위치입니다.
config 사전 또는 사전 학습된 모델 구성 파일에서 무작위 가중치로 모델을 초기화합니다(사전 학습된 가중치는 로드되지 않음).