open_clip:一個用於訓練與部署大規模對比式語言‑影像與音訊‑文字模型的開源框架
open_clip:一個用於訓練與部署大規模對比式語言‑影像與音訊‑文字模型的開源框架
它解決了什麼問題
OpenCLIP 是 OpenAI 的 CLIP(Contrastive Language-Image Pre‑training) 的開源實作。它提供一個可擴展的框架,用於訓練、評估與使用將影像與文字映射到共享嵌入空間的對比式模型,從而支援零樣本影像分類與高效的影像‑文字檢索等任務。
工作原理
此專案實作了對比學習,透過同時訓練影像編碼器與文字編碼器,使配對的影像與說明之相似度最大化。它支援多種架構(如 ViT 與 ConvNext)與訓練策略。近期更新加入了「NaFlex」以處理可變解析度的影像與音訊,並提供具先進注意力機制(RoPE、SwiGLU)的「Modern」文字塔。它利用 PyTorch 的 FSDP2 與 torch.compile,在大型 GPU 叢集上實現高效能分散式訓練。
目標對象
- AI 研究者: 研究對比學習的尺度法則或開發新型多模態架構的人員。
- 機器學習工程師: 需要高效能、預訓練多模態嵌入以供下游應用的開發者。
- 資料科學家: 想在自己的影像資料集上執行零樣本分類,且不想進行大量微調的使用者。
重點特色
- 豐富的預訓練模型: 可取得在 LAION-2B、DataComp-1B 等大規模資料集上訓練的龐大模型庫。
- 高效能訓練: 原生支援 FSDP2、SLURM 叢集與
torch.compile,具極致可擴展性(已測試至 1024 顆 A100)。 - 多模態通用性: 支援影像‑文字(CLIP)、音訊‑文字(CLAP)以及生成式說明(GenLIP/GenLAP)。
- 彈性輸入處理: NaFlex 流程允許可變長寬的影像與可變時長的音訊。
- 高效資料載入: 整合 WebDataset,能以低記憶體開銷處理數十億樣本。
摘要: 一個 OpenAI CLIP 的開源實作,能夠訓練與使用大規模對比式語言‑影像模型,以執行零樣本分類與檢索。
標題: open_clip:一個用於訓練與部署大規模對比式語言‑影像與音訊‑文字模型的開源框架
Sources
- undefinedmlfoundations/open_clip