mlfoundations/open_clip
An open source implementation of CLIP.
What it solves
OpenCLIP は OpenAI の CLIP(Contrastive Language-Image Pre‑training)のオープンソース実装です。画像とテキストを共有埋め込み空間に結びつけるコントラストモデルをスケーラブルに訓練・評価・利用できるフレームワークを提供し、ゼロショット画像分類や効率的な画像‑テキスト検索といったタスクを可能にします。
How it works
本プロジェクトは、画像エンコーダとテキストエンコーダを同時に学習させ、ペアになった画像とキャプションの類似度を最大化するコントラスト学習を実装しています。ViT や ConvNext など多様なアーキテクチャと訓練戦略をサポート。最近のアップデートで可変解像度画像・音声に対応する「NaFlex」や、先進的な注意機構(RoPE、SwiGLU)を備えた「Modern」テキストタワーが追加されました。PyTorch の FSDP2 と torch.compile を活用し、大規模 GPU クラスタ上で高性能分散学習を実現しています。
Who it’s for
- AI Researchers: コントラスト学習のスケーリング法則を研究したり、新しいマルチモーダルアーキテクチャを開発したりする研究者。
- ML Engineers: 下流アプリケーション向けに高性能な事前学習マルチモーダル埋め込みが必要なエンジニア。
- Data Scientists: 大規模なファインチューニングを行わずに自分の画像データセットでゼロショット分類を実行したいユーザー。
Highlights
- Extensive Pretrained Models: LAION‑2B や DataComp‑1B などの大規模データセットで学習された豊富なモデルライブラリにアクセス可能。
- High-Performance Training: FSDP2、SLURM クラスタ、
torch.compileをネイティブにサポートし、極限までスケーラブル(最大 1024 台の A100 でテスト)。 - Multimodal Versatility: 画像‑テキスト(CLIP)、音声‑テキスト(CLAP)、生成キャプション(GenLIP/GenLAP)をサポート。
- Flexible Input Handling: NaFlex パイプラインにより、可変アスペクト比画像や可変長音声を扱える。
- Efficient Data Loading: WebDataset を統合し、数十億サンプルを低メモリで処理可能。