설명
Hugging Face Transformers는 텍스트, 컴퓨터 비전, 오디오, 비디오 및 멀티모달 애플리케이션을 포함한 다양한 도메인에서 최첨단 머신러닝 모델을 위한 기본 모델 정의 프레임워크 역할을 합니다. 주요 목표는 모델 정의를 중앙 집중화하여 전체 AI 생태계에서 합의와 호환성을 증진하는 것입니다. 이 프레임워크는 Axolotl, Unsloth, DeepSpeed, FSDP, PyTorch-Lightning과 같은 광범위한 학습 프레임워크와 호환되도록 보장하는 중요한 중심점 역할을 합니다. 또한 vLLM, SGLang, TGI와 같은 추론 엔진 및 llama.cpp, mlx와 같은 인접 모델링 라이브러리와 원활하게 통합되며, 이들 모두는 Transformers에서 제공하는 모델 정의를 활용합니다.
Hugging Face는 새로운 최첨단 모델을 지원하고 접근성을 민주화하기 위해 노력합니다. 이는 모델 정의를 간단하고 사용자 정의 가능하며 효율적으로 만듦으로써 달성됩니다. Hugging Face Hub는 100만 개 이상의 Transformers 모델 체크포인트를 호스팅하며 사용자가 탐색하고 프로젝트에 통합할 수 있도록 즉시 사용할 수 있습니다. 이 플랫폼은 또한 모델 타임라인을 제공하여 텍스트, 비전, 오디오 및 멀티모달 도메인에서 최신 아키텍처를 보여줍니다.
Transformers 프레임워크는 사용자에게 고급 사전 학습 모델을 사용한 추론 및 학습에 필요한 모든 것을 제공하도록 설계되었습니다. 주요 기능에는 텍스트 생성, 이미지 분할, 자동 음성 인식, 문서 질의응답과 같은 수많은 머신러닝 작업에 대한 간단하고 최적화된 추론 인터페이스를 제공하는 `Pipeline` 클래스가 포함됩니다. 학습을 위해 `Trainer` 클래스는 혼합 정밀도, torch.compile, FlashAttention과 같은 기능에 대한 포괄적인 지원을 제공하여 PyTorch 모델의 단일 장치 및 분산 학습을 모두 용이하게 합니다. 또한 `generate` 함수는 대규모 언어 모델(LLM) 및 비전-언어 모델(VLM)을 사용한 빠른 텍스트 생성을 지원하며 스트리밍 및 다양한 디코딩 전략을 지원합니다.
Transformers의 설계 원칙은 속도와 사용 편의성을 강조합니다. 각 모델은 구성, 모델, 전처리기의 세 가지 핵심 클래스만 사용하여 구현되므로 `Pipeline` 또는 `Trainer`를 통한 추론 또는 학습 시나리오에서 신속하게 배포할 수 있습니다. 이 프레임워크는 탄소 발자국, 컴퓨팅 비용 및 개발 시간을 줄이기 위해 사전 학습 모델 사용을 강력히 권장합니다. 각 사전 학습 모델은 원래 모델과 최대한 일치하도록 세심하게 재현되어 최첨단 성능을 제공합니다. Transformers를 처음 사용하거나 이해도를 높이고자 하는 사람들을 위해 Hugging Face는 모델 기본 사항, 실제 애플리케이션, 데이터셋 큐레이션, 미세 조정 및 추론 기능을 다루는 LLM 코스를 제공하며, 이론적 내용과 실습 연습을 모두 포함합니다.
Hugging Face Transformers의 핵심 기능
텍스트, 비전, 오디오, 비디오 및 멀티모달 모델을 위한 중앙 집중식 모델 정의
주요 학습 프레임워크(Axolotl, Unsloth, DeepSpeed, FSDP, PyTorch-Lightning)와의 호환성
추론 엔진(vLLM, SGLang, TGI)과의 통합
인접 모델링 라이브러리(llama.cpp, mlx) 지원
Hugging Face Hub에서 100만 개 이상의 Transformers 모델 체크포인트 사용 가능
다양한 ML 작업에 대한 간단하고 최적화된 추론을 위한 Pipeline 클래스
혼합 정밀도 및 분산 학습을 포함한 포괄적인 학습 기능을 위한 Trainer 클래스
스트리밍 지원을 포함한 LLM 및 VLM을 사용한 빠른 텍스트 생성
사용 편의성을 위해 구성, 모델 및 전처리 클래스를 사용하여 구현된 모델
컴퓨팅 및 시간 절약을 위해 사전 학습 모델 사용 강조
최신 모델 아키텍처 타임라인 액세스
Transformer 모델 및 애플리케이션 학습을 위한 LLM 코스 제공
Hugging Face Transformers 시작하기
설치: 선호하는 패키지 관리자를 사용하여 Transformers 라이브러리를 설치합니다.
구성: 매개변수 및 아키텍처 세부 정보를 포함하여 모델 구성을 정의합니다.
모델 로딩: Hugging Face Hub 또는 로컬 저장소에서 사전 학습된 모델 또는 사용자 정의 학습 모델을 로드합니다.
추론: Pipeline 클래스를 사용하여 다양한 작업에 대한 간단한 추론을 수행합니다.
학습: Trainer 클래스를 사용하여 효율적인 모델 학습 및 미세 조정을 수행합니다.
배포: 학습된 모델을 애플리케이션에 통합하여 프로덕션에 사용합니다.
최적화: 성능 향상을 위해 혼합 정밀도 및 FlashAttention과 같은 기능을 활용합니다.
Hugging Face Transformers의 사용 사례
- 텍스트 생성
- 이미지 분할
- 음성 인식
- 문서 질의응답
- 모델 학습
- 모델 추론
- 멀티모달 애플리케이션







