jingyaogong/minimind-v

👀 Train a 65M-parameter VLM from scratch in just 2h!

解決的問題

MiniMind-V 提供了一種輕量級且易於使用的構建與訓練視覺語言模型 (VLM) 的方法。它透過提供一個極簡的實作,使得在單張消費級 GPU(如 NVIDIA 3090)上可以在極短的時間內以極低的成本完成訓練,從而解決了 VLM 開發門檻高的問題。

工作原理

MiniMind-V 透過添加視覺編碼器 (Visual Encoder) 與投影模組 (Projection Module) 來擴展小型語言模型 (MiniMind)。

  • Visual Encoder: 使用 SigLIP2 模型提取圖像特徵,將圖像轉換為一組視覺 token。
  • Projection Module: MLP (多層感知器) 投影器將這些視覺特徵轉換到語言模型的語義空間,有效地充當將圖像翻譯成 LLM 可理解語言的「字典」。
  • Training: 訓練過程包含兩個階段:可選的預訓練 (Pretrain) 階段,用於將視覺 token 與語言 token 對齊(僅訓練投影器);以及強制性的 SFT (有監督微調) 階段,用於優化模型的指令遵循與圖像描述能力(訓練投影器以及 LLM 的首尾層)。

適用對象

  • AI 學習者: 希望學習 VLM 結構與訓練過程的清晰、無術語教學的人。
  • 個人開發者: 擁有有限硬體,希望在個人 GPU 上嘗試多模態模型的人。
  • 研究人員: 正在尋找 VLM 範式極簡基準實作的研究人員。

亮點

  • 極度輕量化: 最小版本僅有 65M 參數,比 GPT-3 小得多。
  • 低成本: 在單張 RTX 3090 上訓練 2 小時僅需約 3 元人民幣(約 0.40 美元)。
  • 完整的流水線: 包含數據集清洗、預訓練與 SFT 的完整程式碼。
  • 靈活的架構: 支援 Dense 與混合專家模型 (MoE) 模式。
  • 高效的數據處理: 使用 Parquet 格式進行圖文整合儲存,以加快載入速度。

相關

  • 專案
  • Dispatch
  • Dispatch
  • Dispatch
  • 專案