Auto* 클래스는 설정을 읽는 배차 담당이야
pipeline() 아래에는 AutoTokenizer, AutoModelForCausalLM, AutoModelForSequenceClassification, AutoProcessor처럼 작업별 Auto 클래스가 있어. 직접 구현 클래스의 이름을 외우는 대신 작업에 맞는 Auto 클래스를 고르면 돼.
Auto 클래스는 저장소의 config.json에서 model_type을 읽고 등록된 구체 클래스로 연결해. 예를 들어 llama라면 Llama 계열 tokenizer와 causal LM 클래스를 선택하지. 그래서 보통은 클래스를 직접 만들지 않고 AutoModelForXxx.from_pretrained(repo_id)를 호출해.
로더에서 자주 만지는 네 가지
torch_dtype='auto'는 설정에 기록된 자료형을 따르고, float16이나 bfloat16은 float32보다 메모리를 대략 절반만 써.device_map='auto'는 보이는 GPU·MPS·CPU에 모델을 나눠 배치해. 위치를 직접 정하려면 dict를 넘겨.load_in_8bit와load_in_4bit는 bitsandbytes로 불러올 때 양자화해 메모리를 크게 줄여.revision에는 재현성을 보장할 커밋 SHA를 넣어.
모델 카드가 library_name: transformers를 선언하고 아키텍처가 레지스트리에 등록돼 있으면 같은 로더 계약으로 불러올 수 있어.