Swift Transformers 1.0 릴리즈 노트 / 새로운 내용

Hugging Face는 Swift Transformers 1.0을 출시했습니다. 이 라이브러리의 안정화 버전은 iPhone을 포함한 Apple Silicon 플랫폼에서 로컬 대형 언어 모델(LLM)을 통합하는 개발자의 마찰을 줄이도록 설계되었습니다. 이번 릴리즈는 라이브러리가 안정화 단계로 전환되었음을 알리며, Core ML 및 MLX와 보완되는 토크나이징, 모델 다운로드 및 추론을 위한 필수 인프라를 제공합니다.

Swift Transformers의 핵심 구성 요소

Swift Transformers는 Apple Silicon ML 생태계의 격차를 메우는 세 가지 주요 모듈을 제공합니다:

  • Tokenizers: 고성능 Swift 구현 토크나이저로, 입력 준비, 채팅 템플릿 및 에이전시 사용 사례를 처리하며, Hugging Face의 Python 및 Rust 라이브러리와 동일한 사용성을 제공합니다.
  • Hub: Hugging Face Hub에 대한 Swift 인터페이스로, 오픈 모델의 다운로드 및 로컬 캐싱을 가능하게 합니다. 오프라인 모드와 백그라운드 재개 가능한 다운로드를 지원하지만 현재 업로드는 지원되지 않습니다.
  • Models and Generation: Core ML 형식으로 변환된 LLM에 대한 래퍼로, 변환이 완료된 후 추론 실행 과정을 단순화합니다.

버전 1.0의 주요 업데이트

버전 1.0은 프로덕션 앱 개발을 지원하기 위해 여러 아키텍처 개선 및 안정성 업데이트를 도입합니다:

모듈식 아키텍처 및 의존성 감소

`Tokenizers` and `Hub` are now first-class, top-level modules, allowing developers to import only the specific components they need rather than the entire package. To reduce overhead and prevent version conflicts, the library has removed example CLI targets and the `swift-argument-parser` dependency.

성능 및 API 향상

  • Swift Jinja Integration: John Mai와 협업하여 라이브러리는 이제 swift-jinja의 새로운 버전을 사용하며, 복잡한 채팅 템플릿을 처리하는 속도가 수 배 이상 빨라졌다고 보고되었습니다.
  • Modern Core ML APIs: Apple의 기여를 통해 라이브러리는 이제 상태 저장 모델(더 쉬운 KV-캐싱 지원)과 표현력 있는 MLTensor API를 지원하며, 수천 줄의 커스텀 텐서 수학 코드를 제거했습니다.
  • Swift 6 Support: 라이브러리는 이제 Swift 6과 완전히 호환됩니다.
  • API Refinement: 공개 API 표면을 축소하여 인지 부하를 낮추었으며, 모든 공개 API에 문서 주석이 추가되었습니다.

커뮤니티 채택 및 통합

Swift Transformers는 현재 여러 고프로파일 Apple Silicon 프로젝트에서 사용되고 있습니다:

  • mlx‑swift‑examples (Apple): MLX를 통해 LLM 및 VLM(시각-언어 모델)을 실행하기 위해 라이브러리를 사용합니다.
  • WhisperKit (argmax): HubTokenizers 모듈에 의존하는 최적화된 오픈소스 음성 인식 프레임워크입니다.
  • FastVLM (Apple): 시각-언어 모델 데모이며, Hugging Face의 자체 SmolVLM2 네이티브 앱과 함께 제공됩니다.

향후 로드맵

Hugging Face는 향후 개발을 두 가지 주요 영역에 집중할 계획입니다:

  1. MLX Integration: MLX 경험을 원활하게 만들기 위해, 특히 mlx‑swift‑examples와의 통합을 개선하여 LLM 및 VLM에 대한 빈번한 전처리 및 후처리 작업을 지원합니다.
  2. Agentic Workflows: 에이전시 사용 사례와 Model Context Protocol (MCP)을 탐색하여 시스템 리소스를 로컬 워크플로에 노출할 수 있도록 합니다.

Sources