Transformers v5: Simple model definitions powering the AI ecosystem
Quick Summary
Transformers v5는 폭발적으로 커진 AI 생태계의 기준 모델 정의 라이브러리로 남기 위해 단순성, 훈련, 추론, 프로덕션 연동, 양자화를 중심으로 구조를 재정비한 릴리스다.
🖼️ 인포그래픽
🖼️ 4컷 인포그래픽
💡 한 줄 요약
Transformers v5는 폭발적으로 커진 AI 생태계의 기준 모델 정의 라이브러리로 남기 위해 단순성, 훈련, 추론, 프로덕션 연동, 양자화를 중심으로 구조를 재정비한 릴리스다.
📌 핵심 요약
- Transformers는 v4 출시 후보 이후 5년 만에 v5.0.0rc-0을 내놓았고, 일일 pip 설치 수가 2만 건에서 300만 건 이상으로 늘었으며 누적 설치 수는 12억 회를 넘었다.
- 지원 모델 아키텍처는 v4 당시 40개에서 현재 400개 이상으로 확대됐고, Hub에는 Transformers와 호환되는 모델 체크포인트가 약 1천 개에서 75만 개 이상으로 증가했다.
- v5의 핵심 방향은 모델 정의를 더 단순하고 표준화된 형태로 유지해 생태계가 각 모델의 차이, 내부 동작, 핵심 기능을 명확히 이해하고 재사용할 수 있게 하는 것이다.
- 훈련 영역에서는 미세조정 중심 지원을 넘어 대규모 사전학습과 전체 학습을 더 잘 지원하기 위해 초기화, 병렬화 방식, 전방·후방 패스 최적화 커널 등을 개선했다.
- 추론과 프로덕션 영역에서는 전용 커널, 연속 배칭, paged attention, OpenAI API 호환 서버, vLLM·SGLang·ONNXRuntime·llama.cpp·MLX와의 상호운용성, 그리고 양자화의 1급 기능화를 강조했다.
🧩 주요 포인트
- Transformers는 v4 출시 후보 이후 5년 만에 v5.0.0rc-0을 내놓았고, 일일 pip 설치 수가 2만 건에서 300만 건 이상으로 늘었으며 누적 설치 수는 12억 회를 넘었다.
- 지원 모델 아키텍처는 v4 당시 40개에서 현재 400개 이상으로 확대됐고, Hub에는 Transformers와 호환되는 모델 체크포인트가 약 1천 개에서 75만 개 이상으로 증가했다.
- v5의 핵심 방향은 모델 정의를 더 단순하고 표준화된 형태로 유지해 생태계가 각 모델의 차이, 내부 동작, 핵심 기능을 명확히 이해하고 재사용할 수 있게 하는 것이다.
- 훈련 영역에서는 미세조정 중심 지원을 넘어 대규모 사전학습과 전체 학습을 더 잘 지원하기 위해 초기화, 병렬화 방식, 전방·후방 패스 최적화 커널 등을 개선했다.
- 추론과 프로덕션 영역에서는 전용 커널, 연속 배칭, paged attention, OpenAI API 호환 서버, vLLM·SGLang·ONNXRuntime·llama.cpp·MLX와의 상호운용성, 그리고 양자화의 1급 기능화를 강조했다.
🧠 상세 정리
1. v4 이후 5년 동안 커진 Transformers 생태계
글은 2020년 11월 19일 v4.0.0rc-1이 나온 뒤 5년이 지나 v5.0.0rc-0을 공개한다는 사실에서 출발한다. 이 기간 동안 Transformers의 pip 설치 수는 하루 2만 건 수준에서 300만 건 이상으로 늘었고, 누적 설치 수는 12억 회를 넘어섰다. 모델 아키텍처 수 역시 v4 당시 40개에서 현재 400개 이상으로 확대됐으며, Hub에는 Transformers와 호환되는 체크포인트가 약 1천 개에서 75만 개 이상으로 증가했다. 저자들은 이런 성장이 AI 접근성의 대중화와 분야 자체의 변화에서 비롯됐다고 설명하면서, 생태계의 중심 모델 정의 라이브러리로서 계속 진화해야 한다고 말한다.
2. v5의 큰 목표: 단순성, 훈련, 추론, 프로덕션
v5에서 팀이 중점적으로 다룬 축은 단순성, 훈련, 추론, 프로덕션이다. 글은 Transformers가 llama.cpp, MLX, onnxruntime, Jan, LMStudio, vLLM, SGLang, Unsloth, LlamaFactory, dLLM, MaxText, TensorRT, Argmax 등 여러 라이브러리와 앱과 함께 쓰이고 있다고 밝힌다. 이런 환경에서는 모델 정의가 단순하고 신뢰 가능해야 다른 도구들이 이를 기반으로 최적화와 배포를 수행할 수 있다. 따라서 v5의 변화는 단순히 기능을 추가하는 일이 아니라, 생태계가 같은 모델 정의를 공유하고 각 도구가 자기 강점을 발휘하도록 만드는 기반 정비에 가깝다.
3. 코드 자체를 제품으로 보는 단순성 전략
단순성 섹션에서 팀은 Transformers를 개발하며 코드를 제품으로 본다고 설명한다. 모델 통합이 깨끗해야 생태계가 해당 모델 정의에 의존할 수 있고, 내부에서 실제로 어떤 일이 일어나는지, 모델들이 서로 어떻게 다른지, 새 모델의 핵심 기능이 무엇인지 이해할 수 있다는 논리다. 저자들은 단순성이 더 넓은 표준화, 일반성, 지원 범위로 이어진다고 본다. Unsloth의 인용문도 이 흐름을 뒷받침하며, Transformers 위에서 BERT나 텍스트 음성 변환 모델의 미세조정과 학습, 아직 다른 라이브러리에서 지원되지 않는 모델의 빠른 강화학습 추론을 수행한다고 말한다.
4. 모델 추가 과정과 모듈식 설계의 개선
Transformers는 여전히 핵심적으로 모델 아키텍처 툴킷이며, 최신 아키텍처를 포괄하고 모델 정의의 기준점이 되는 것을 목표로 한다. 글에 따르면 팀은 지난 5년 동안 매주 1개에서 3개의 새 모델을 추가해 왔고, 그 과정 자체를 개선하는 데도 힘써 왔다. 최근 1년 동안은 모듈식 설계를 강하게 밀어붙였는데, 이는 유지보수를 쉽게 만들고 통합 속도를 높이며 커뮤니티 협업을 개선하기 위한 조치다. 저자들은 기존의 “모델 하나, 파일 하나” 철학을 존중하면서도 공통 헬퍼를 더 쉽게 관리하기 위한 추상화를 도입하고 있으며, 대표 사례로 AttentionInterface를 제시한다.
5. AttentionInterface와 모델 변환 도구
AttentionInterface는 attention 방식들을 중앙에서 다루기 위한 추상화로 소개된다. eager 방식은 기존처럼 모델링 파일에 남지만, FA1, FA2, FA3, FlexAttention, SDPA 같은 다른 방식들은 인터페이스 쪽으로 옮겨진다. 이는 각 모델 파일이 핵심 forward와 backward 로직에 더 집중하게 하고, 공통 attention 처리를 표준화하는 효과를 낸다. 또한 팀은 새 모델이 기존 어떤 아키텍처와 유사한지 파악하는 도구도 만들고 있으며, 이 기능은 머신러닝을 사용해 독립적인 모델링 파일 간 코드 유사성을 찾는다. 더 나아가 Transformers 형식으로 모델을 통합하는 초안 PR을 자동으로 여는 과정까지 목표로 하며, 수작업을 줄이고 일관성을 높이는 데 초점을 둔다.
6. 모델링·토크나이저 파일 정리와 PyTorch 중심화
v5에서는 모델링 파일과 토크나이저·프로세싱 파일도 크게 정리됐다. 모델링 파일은 모듈식 접근과 모델 간 표준화 덕분에 개선됐고, 모델 자체를 구성하지 않는 도구성 코드는 대부분 추상화되어 모델링 코드가 forward와 backward 패스에 필요한 부분에 집중하도록 바뀌었다. 토크나이저 영역에서는 앞으로 tokenizers 백엔드에 집중하며, 기존의 Fast와 Slow 토크나이저 개념을 제거한다. Sentencepiece나 MistralCommon 기반 토크나이저는 기본값은 아니지만 대안으로 지원되며, 이미지 프로세서는 torchvision 백엔드에 의존하는 빠른 변형만 남는다. 동시에 Flax와 TensorFlow 지원은 줄이고 PyTorch를 유일한 기본 백엔드로 삼되, JAX 생태계와의 호환성은 파트너들과 계속 맞춰 간다고 설명한다.
7. 훈련 지원: 미세조정에서 대규모 사전학습까지
훈련은 v5로 넘어가며 계속 큰 초점으로 남아 있다. 이전에는 미세조정 지원에 더 무게가 있었지만, 최근에는 대규모 사전학습과 전체 학습을 지원하기 위한 작업도 상당히 진행됐다고 글은 설명한다. 이를 위해 모델 초기화를 다시 손보고, 다양한 병렬화 패러다임에서 모델이 규모 있게 동작하도록 보장하며, 전방 패스와 후방 패스를 위한 최적화 커널 지원을 추가했다. 앞으로는 torchtitan, megatron, nanotron뿐 아니라 협업을 원하는 다른 사전학습 도구와도 호환성을 넓히겠다고 밝힌다. 미세조정과 사후학습 측면에서는 Unsloth, Axolotl, LlamaFactory, TRL 같은 PyTorch 생태계 도구와 계속 협력하고, JAX 생태계의 MaxText와도 상호운용성을 확보하려 한다.
8. 추론 API와 최적화 엔진과의 상호운용성
추론 섹션에서는 v5가 전용 커널, 더 깔끔한 기본값, 새 API, 최적화된 추론 엔진 지원을 중심으로 여러 변화를 도입한다고 말한다. 하드웨어와 소프트웨어 조건이 맞으면 커널이 자동으로 사용되도록 패키징하는 작업도 훈련 영역과 비슷하게 진행되고 있다. 새 추론 API로는 연속 배칭과 paged attention 메커니즘 지원이 제시되며, 내부적으로 어느 정도 사용돼 왔고 현재 사용 가이드를 정리하는 단계라고 설명한다. 또 transformers serve를 새 Transformers 전용 서빙 시스템으로 도입해 OpenAI API 호환 서버를 배포할 수 있게 한다. 다만 vLLM, SGLang, TensorRT LLM 같은 전문 추론 엔진처럼 특화 최적화를 직접 목표로 하기보다는, 이들과 완전히 상호운용되는 것을 목표로 삼는다고 선을 긋는다.
9. 프로덕션·로컬 실행과 GGUF, MLX, 온디바이스 지원
프로덕션과 로컬 실행 부분에서는 인기 있는 추론 엔진들이 Transformers를 백엔드로 사용할 수 있도록 긴밀히 협력해 왔다고 설명한다. 그 결과 모델이 Transformers에 추가되면 각 엔진에서도 사용할 수 있게 되고, 동시에 엔진별 추론 최적화, 특수 커널, 동적 배칭 같은 장점을 활용할 수 있다는 점이 강조된다. ONNXRuntime, llama.cpp, MLX와도 구현 간 상호운용성을 높이고 있으며, 커뮤니티 노력 덕분에 GGUF 파일을 Transformers에서 불러와 추가 미세조정하는 일이 쉬워졌고 반대로 Transformers 모델을 GGUF로 변환해 llama.cpp에서 사용할 수도 있다. MLX의 경우 Transformers의 safetensors 파일이 MLX 모델과 직접 호환된다고 설명한다. 마지막으로 executorch 팀과 협력해 Transformers 모델을 온디바이스에서 사용할 수 있게 하고, optimum을 통해 비전과 오디오를 포함한 멀티모달 모델 범위도 넓히고 있다고 밝힌다.
10. 양자화를 1급 기능으로 다루는 변화
글의 마지막 주요 축은 양자화다. 저자들은 많은 최신 모델이 8비트나 4비트 같은 저정밀 형식으로 공개되고 있으며, 하드웨어도 저정밀 워크로드에 맞춰 점점 최적화되고 있고, 커뮤니티가 고품질 양자화 체크포인트를 활발히 공유하고 있다고 설명한다. v5에서는 양자화를 Transformers 지원의 중심 초점으로 삼아 주요 기능과 완전한 호환성을 확보하고, 훈련과 추론을 위한 신뢰 가능한 프레임워크를 제공하려 한다. 이를 위해 모델에서 가중치를 불러오는 방식을 크게 바꾸고, 양자화를 부가 기능이 아니라 1급 시민으로 다루는 방향으로 이동한다. TorchAO 측 인용문은 v5에서 TorchAO 통합, 양자화 기능 확장, 문서 개선이 생산적인 협업을 통해 이뤄졌다고 설명한다.
🧾 핵심 주장 / 시사점
- v5의 핵심은 새 기능의 나열보다 “모델 정의의 기준점” 역할을 강화하는 데 있다. 모델 파일을 단순하고 표준화하면, 훈련 도구와 추론 엔진은 같은 정의를 공유한 채 각자의 최적화에 집중할 수 있다.
- Transformers가 PyTorch 중심으로 정리되는 것은 지원 범위를 줄이는 변화이면서 동시에 유지보수성과 성능 협업을 높이려는 선택으로 읽힌다. 다만 원문은 JAX 생태계와의 호환성도 계속 챙기겠다고 밝혀, 완전한 단절보다는 중심축 재정렬에 가깝다.
- 양자화, 연속 배칭, paged attention, GGUF 변환, 온디바이스 실행까지 다루는 흐름은 Transformers가 연구용 모델 로딩 라이브러리를 넘어 실제 훈련·추론·배포 생태계의 공통 기반으로 자리 잡으려는 방향을 보여준다.
✅ 액션 아이템
- v5의 핵심 방향인 모델 정의 단순화·표준화를 기준으로 기존 파이프라인 모델 래퍼를 점검하고 전환 영향 범위를 정한다.
- 일일 설치가 2만 건에서 300만 건 이상, 누적 12억 회를 넘은 성장 수치를 반영해 v5 도입의 운영 위험과 확장성 항목을 정량화한다.
- 지원 아키텍처 400개 이상, Hub 호환 체크포인트 75만 개 이상 증가를 전제로 미세조정, 대규모 학습, 추론 환경에서 재사용 범위를 비교해 분기한다.
❓ 열린 질문
- 단일 모델 정의 표준화가 400개 이상 모델군에서 실제 동작 차이를 충분히 흡수했는지 판단할 기준은 무엇인가?
- 전용 커널·연속 배칭·paged attention을 적용한 추론에서 지연시간과 처리량 개선을 어느 지표로 먼저 판단할 것인가?
- OpenAI API 호환 서버와 vLLM·SGLang·ONNXRuntime·llama.cpp·MLX 연동에서 동일 체크포인트 상호운용 보장 범위는 어디까지인가?