open_clip: 대규모 대비 언어‑이미지 및 오디오‑텍스트 모델을 학습·배포하기 위한 오픈소스 프레임워크

open_clip: 대규모 대비 언어‑이미지 및 오디오‑텍스트 모델을 학습·배포하기 위한 오픈소스 프레임워크

해결하는 문제

OpenCLIP은 OpenAI의 CLIP(Contrastive Language-Image Pre-training)의 오픈소스 구현입니다. 이미지와 텍스트를 공유 임베딩 공간에 연결하는 대비 모델을 학습·평가·활용할 수 있는 확장 가능한 프레임워크를 제공하여, 제로샷 이미지 분류 및 효율적인 이미지‑텍스트 검색과 같은 작업을 가능하게 합니다.

작동 원리

이 프로젝트는 이미지 인코더와 텍스트 인코더를 함께 학습시켜 짝을 이룬 이미지와 캡션 사이의 유사성을 최대화하는 대비 학습을 구현합니다. ViT, ConvNext 등 다양한 아키텍처와 학습 전략을 지원합니다. 최근 업데이트에서는 가변 해상도 이미지와 오디오를 위한 "NaFlex"와 고급 어텐션 메커니즘(RoPE, SwiGLU)을 갖춘 "Modern" 텍스트 타워가 도입되었습니다. 또한 PyTorch의 FSDP2와 torch.compile을 활용해 대규모 GPU 클러스터에서 고성능 분산 학습을 수행합니다.

대상 사용자

  • AI 연구자: 대비 학습의 스케일링 법칙을 연구하거나 새로운 멀티모달 아키텍처를 개발하는 사람들.
  • ML 엔지니어: 다운스트림 애플리케이션을 위해 고성능 사전학습 멀티모달 임베딩이 필요한 개발자.
  • 데이터 과학자: 광범위한 파인튜닝 없이 자체 이미지 데이터셋에 대해 제로샷 분류를 수행하고자 하는 사용자.

주요 특징

  • 다양한 사전학습 모델: LAION-2B, DataComp-1B와 같은 방대한 데이터셋으로 학습된 모델 라이브러리를 제공.
  • 고성능 학습: FSDP2, SLURM 클러스터, torch.compile에 대한 네이티브 지원으로 극한 확장성 제공(최대 1024 A100까지 테스트).
  • 멀티모달 다재다능성: 이미지‑텍스트(CLIP), 오디오‑텍스트(CLAP), 생성 캡셔닝(GenLIP/GenLAP)을 지원.
  • 유연한 입력 처리: NaFlex 파이프라인을 통해 가변 종횡비 이미지와 가변 길이 오디오를 처리.
  • 효율적인 데이터 로딩: 수십억 개 샘플을 낮은 메모리 오버헤드로 처리할 수 있는 WebDataset 통합 지원.

요약

OpenAI의 CLIP을 오픈소스로 구현한 프로젝트로, 대규모 대비 언어‑이미지 모델을 학습하고 제로샷 분류 및 검색에 활용할 수 있습니다.

제목

open_clip: 대규모 대비 언어‑이미지 및 오디오‑텍스트 모델을 학습·배포하기 위한 오픈소스 프레임워크

Sources