Minicpm V 2
MiniCPM-V 2.0是面向高效終端部署的強大多模態大語言模型,基於SigLip-400M和MiniCPM-2.4B構建,通過感知器重採樣器連接。
下載量 9,097
發布時間 : 4/9/2024
模型概述
MiniCPM-V 2.0是一個高效的多模態大語言模型,支持圖像和文本理解,特別擅長場景文本識別(OCR),在多項基準測試中表現優異。
模型特點
頂尖性能表現
在7B參數量以下模型中,多項基準測試達到最先進水平,OCR能力尤為突出,場景文本理解媲美Gemini Pro
可信回答生成
首個通過多模態RLHF對齊的終端側模型,防幻覺能力比肩GPT-4V
任意比例高清圖像處理
支持1344x1344分辨率的任意比例圖像輸入,實現對細小物體和光學字符的精準感知
高效部署能力
可在主流GPU和個人電腦高效運行,甚至能部署於手機等移動終端
中英雙語支持
實現中英文多模態能力均衡發展
模型能力
圖像內容理解
場景文本識別
多模態對話
高分辨率圖像處理
中英文視覺問答
文檔理解
數學視覺推理
使用案例
教育
數學題目解答
識別並解答數學題目中的視覺內容
在MathVista基準測試中表現優異
商業
文檔理解
自動理解和提取文檔中的關鍵信息
在DocVQA基準測試中表現優異
移動應用
移動端視覺問答
在手機等移動設備上實現即時視覺問答
已在小米14 Pro等設備上成功部署
🚀 MiniCPM-V
MiniCPM-V 是一款強大的多模態大語言模型,專為高效的端側部署而設計。它在多個基準測試中表現出色,具備處理高分辨率圖像、防止幻覺、雙語支持等特性,還能在多種設備上高效運行。
🚀 快速開始
項目動態
- [2025.01.14] 🔥 我們開源了 MiniCPM-o 2.6,相較於 MiniCPM-V 2.6 有顯著的性能提升,並且支持即時語音對話和多模態直播。立即試用。
- [2024.08.06] 🔥 我們開源了 MiniCPM-V 2.6,在單圖像、多圖像和視頻理解方面優於 GPT-4V。它改進了 MiniCPM-Llama3-V 2.5 的流行特性,並且可以在 iPad 上支持即時視頻理解。
- [2024.05.20] 🔥 GPT-4V 級別的多模態模型 MiniCPM-Llama3-V 2.5 發佈。
- [2024.04.23] MiniCPM-V 2.0 現在支持 vLLM!
- [2024.04.18] 我們創建了一個 HuggingFace Space 來託管 MiniCPM-V 2.0 的演示,點擊 此處 查看。
- [2024.04.17] MiniCPM-V 2.0 現在支持部署 WebUI 演示!
- [2024.04.15] MiniCPM-V 2.0 支持使用 SWIFT 框架進行 微調!
- [2024.04.12] 我們開源了 MiniCPM-V-2.0,它在場景文本理解方面達到了與 Gemini Pro 相當的性能,並且在 OpenCompass(對 11 個流行基準的綜合評估)上優於強大的 Qwen-VL-Chat 9.6B 和 Yi-VL 34B。點擊 此處 查看 MiniCPM-V 2.0 技術博客。
模型信息
屬性 | 詳情 |
---|---|
任務類型 | 視覺問答 |
支持語言 | 英文、中文 |
訓練數據 | HaoyeZhang/RLHF-V-Dataset、Yirany/UniMM-Chat、HuggingFaceM4/VQAv2、liuhaotian/LLaVA-Instruct-150K |
✨ 主要特性
MiniCPM-V 2.8B 是一個強大的多模態大語言模型,專為高效的端側部署而設計。該模型基於 SigLip-400M 和 MiniCPM-2.4B 構建,並通過感知器重採樣器連接。我們的最新版本 MiniCPM-V 2.0 具有以下顯著特性:
- 🔥 卓越性能:MiniCPM-V 2.0 在多個基準測試(包括 OCRBench、TextVQA、MME、MMB、MathVista 等)中,在參數少於 7B 的模型中達到了 最先進的性能。它甚至在 OpenCompass(對 11 個流行基準的綜合評估)上 優於強大的 Qwen-VL-Chat 9.6B、CogVLM-Chat 17.4B 和 Yi-VL 34B。值得注意的是,MiniCPM-V 2.0 展現出 強大的 OCR 能力,在場景文本理解方面達到了與 Gemini Pro 相當的性能,並在 OCRBench 上的開源模型中達到了 最先進的性能。
- 🏆 可靠行為:大型多模態語言模型(LMMs)通常存在幻覺問題,即生成的文本與圖像事實不符。MiniCPM-V 2.0 是 第一個通過多模態基於人類反饋的強化學習(RLHF)進行對齊以實現可靠行為的端側 LMM(使用了最近的 RLHF-V [CVPR'24] 系列技術)。這使得該模型在 Object HalBench 上 在防止幻覺方面與 GPT-4V 相匹配。
- 🌟 支持任意寬高比的高分辨率圖像:MiniCPM-V 2.0 可以接受 180 萬像素(例如 1344x1344)的任意寬高比圖像。這使得它能夠更好地感知細粒度的視覺信息,如小物體和光學字符,這是通過最近來自 LLaVA-UHD 的技術實現的。
- ⚡️ 高效性:MiniCPM-V 2.0 可以 高效地部署在大多數 GPU 卡和個人計算機上,甚至可以部署在手機等端設備上。對於視覺編碼,我們通過感知器重採樣器將圖像表示壓縮為更少的標記。這使得 MiniCPM-V 2.0 在推理過程中即使處理高分辨率圖像也能 具有良好的內存成本和速度。
- 🙌 雙語支持:MiniCPM-V 2.0 支持強大的中英文雙語多模態能力。這是通過跨語言泛化多模態能力實現的,該技術來自 VisCPM [ICLR'24]。
📊 評估結果


💻 使用示例
基礎用法
# test.py
import torch
from PIL import Image
from transformers import AutoModel, AutoTokenizer
model = AutoModel.from_pretrained('openbmb/MiniCPM-V-2', trust_remote_code=True, torch_dtype=torch.bfloat16)
# For Nvidia GPUs support BF16 (like A100, H100, RTX3090)
model = model.to(device='cuda', dtype=torch.bfloat16)
# For Nvidia GPUs do NOT support BF16 (like V100, T4, RTX2080)
#model = model.to(device='cuda', dtype=torch.float16)
# For Mac with MPS (Apple silicon or AMD GPUs).
# Run with `PYTORCH_ENABLE_MPS_FALLBACK=1 python test.py`
#model = model.to(device='mps', dtype=torch.float16)
tokenizer = AutoTokenizer.from_pretrained('openbmb/MiniCPM-V-2', trust_remote_code=True)
model.eval()
image = Image.open('xx.jpg').convert('RGB')
question = 'What is in the image?'
msgs = [{'role': 'user', 'content': question}]
res, context, _ = model.chat(
image=image,
msgs=msgs,
context=None,
tokenizer=tokenizer,
sampling=True,
temperature=0.7
)
print(res)
高級用法
在不同設備上運行模型時,根據設備的特性選擇合適的參數,以獲得最佳性能。例如,對於支持 BF16 的 Nvidia GPU,可以使用 torch.bfloat16
數據類型;對於不支持 BF16 的 Nvidia GPU,可以使用 torch.float16
數據類型;對於配備 MPS 的 Mac 設備,可以使用 PYTORCH_ENABLE_MPS_FALLBACK=1
環境變量來運行。
# 根據不同設備選擇合適的參數
# For Nvidia GPUs support BF16 (like A100, H100, RTX3090)
model = model.to(device='cuda', dtype=torch.bfloat16)
# For Nvidia GPUs do NOT support BF16 (like V100, T4, RTX2080)
#model = model.to(device='cuda', dtype=torch.float16)
# For Mac with MPS (Apple silicon or AMD GPUs).
# Run with `PYTORCH_ENABLE_MPS_FALLBACK=1 python test.py`
#model = model.to(device='mps', dtype=torch.float16)
請查看 GitHub 以獲取更多使用細節。
📦 安裝指南
環境依賴
在使用 Huggingface transformers 在 Nvidia GPU 或配備 MPS 的 Mac(Apple silicon 或 AMD GPU)上進行推理時,需要安裝以下依賴庫。這些依賴庫在 Python 3.10 環境下進行了測試:
Pillow==10.1.0
timm==0.9.10
torch==2.1.2
torchvision==0.16.2
transformers==4.36.0
sentencepiece==0.1.99
使用 vLLM 進行推理
點擊查看如何使用 vLLM 進行推理
由於我們對 vLLM 的拉取請求仍在審核中,我們分叉了這個倉庫來構建和測試我們的 vLLM 演示。以下是具體步驟: 1. 克隆我們的 vLLM 版本: ```shell git clone https://github.com/OpenBMB/vllm.git ``` 2. 安裝 vLLM: ```shell cd vllm pip install -e . ``` 3. 安裝 timm: ```shell pip install timm=0.9.10 ``` 4. 運行我們的演示: ```shell python examples/minicpmv_example.py ```📚 詳細文檔
演示
點擊 此處 試用 MiniCPM-V 2.0 的演示。
手機部署
MiniCPM-V 2.0 可以部署在運行 Android 和 Harmony 操作系統的手機上。🚀 點擊 此處 進行嘗試。
MiniCPM-V 1.0
請查看 此處 瞭解 MiniCPM-V 1.0 的信息。
其他多模態項目
📄 許可證
模型許可證
- 本倉庫中的代碼遵循 Apache-2.0 許可證發佈。
- MiniCPM-V 系列模型權重的使用必須嚴格遵循 MiniCPM 模型許可證。
- MiniCPM 的模型和權重完全免費用於學術研究。填寫 "問卷" 進行註冊後,也可免費用於商業用途。
聲明
- 作為一個大語言模型,MiniCPM-V 2.0 通過學習大量文本生成內容,但它無法理解、表達個人觀點或進行價值判斷。MiniCPM-V 2.0 生成的任何內容均不代表模型開發者的觀點和立場。
- 我們不對使用 MinCPM-V 開源模型所產生的任何問題負責,包括但不限於數據安全問題、輿論風險,或因模型的誤導、誤用、傳播或濫用而產生的任何風險和問題。
📖 引用
如果您覺得我們的工作有幫助,請考慮引用以下論文:
@article{yu2023rlhf,
title={Rlhf-v: Towards trustworthy mllms via behavior alignment from fine-grained correctional human feedback},
author={Yu, Tianyu and Yao, Yuan and Zhang, Haoye and He, Taiwen and Han, Yifeng and Cui, Ganqu and Hu, Jinyi and Liu, Zhiyuan and Zheng, Hai-Tao and Sun, Maosong and others},
journal={arXiv preprint arXiv:2312.00849},
year={2023}
}
@article{viscpm,
title={Large Multilingual Models Pivot Zero-Shot Multimodal Learning across Languages},
author={Jinyi Hu and Yuan Yao and Chongyi Wang and Shan Wang and Yinxu Pan and Qianyu Chen and Tianyu Yu and Hanghao Wu and Yue Zhao and Haoye Zhang and Xu Han and Yankai Lin and Jiao Xue and Dahai Li and Zhiyuan Liu and Maosong Sun},
journal={arXiv preprint arXiv:2308.12038},
year={2023}
}
@article{xu2024llava-uhd,
title={{LLaVA-UHD}: an LMM Perceiving Any Aspect Ratio and High-Resolution Images},
author={Xu, Ruyi and Yao, Yuan and Guo, Zonghao and Cui, Junbo and Ni, Zanlin and Ge, Chunjiang and Chua, Tat-Seng and Liu, Zhiyuan and Huang, Gao},
journal={arXiv preprint arXiv:2403.11703},
year={2024}
}
@article{yao2024minicpmvgpt4vlevelmllm,
title={MiniCPM-V: A GPT-4V Level MLLM on Your Phone},
author={Yao, Yuan and Yu, Tianyu and Zhang, Ao and Wang, Chongyi and Cui, Junbo and Zhu, Hongji and Cai, Tianchi and Li, Haoyu and Zhao, Weilin and He, Zhihui and Chen, Qianyu and Zhou, Huarong and Zou, Zhensheng and Zhang, Haoye and Hu, Shengding and Zheng, Zhi and Zhou, Jie and Cai, Jie and Han, Xu and Zeng, Guoyang and Li, Dahai and Liu, Zhiyuan and Sun, Maosong},
journal={arXiv preprint arXiv:2408.01800},
year={2024},
url={https://arxiv.org/abs/2408.01800},
}
Clip Vit Large Patch14 336
基於Vision Transformer架構的大規模視覺語言預訓練模型,支持圖像與文本的跨模態理解
文本生成圖像
Transformers

C
openai
5.9M
241
Fashion Clip
MIT
FashionCLIP是基於CLIP開發的視覺語言模型,專門針對時尚領域進行微調,能夠生成通用產品表徵。
文本生成圖像
Transformers 英語

F
patrickjohncyh
3.8M
222
Gemma 3 1b It
Gemma 3是Google推出的輕量級先進開放模型系列,基於與Gemini模型相同的研究和技術構建。該模型是多模態模型,能夠處理文本和圖像輸入並生成文本輸出。
文本生成圖像
Transformers

G
google
2.1M
347
Blip Vqa Base
Bsd-3-clause
BLIP是一個統一的視覺語言預訓練框架,擅長視覺問答任務,通過語言-圖像聯合訓練實現多模態理解與生成能力
文本生成圖像
Transformers

B
Salesforce
1.9M
154
CLIP ViT H 14 Laion2b S32b B79k
MIT
基於OpenCLIP框架在LAION-2B英文數據集上訓練的視覺-語言模型,支持零樣本圖像分類和跨模態檢索任務
文本生成圖像
Safetensors
C
laion
1.8M
368
CLIP ViT B 32 Laion2b S34b B79k
MIT
基於OpenCLIP框架在LAION-2B英語子集上訓練的視覺-語言模型,支持零樣本圖像分類和跨模態檢索
文本生成圖像
Safetensors
C
laion
1.1M
112
Pickscore V1
PickScore v1 是一個針對文本生成圖像的評分函數,可用於預測人類偏好、評估模型性能和圖像排序等任務。
文本生成圖像
Transformers

P
yuvalkirstain
1.1M
44
Owlv2 Base Patch16 Ensemble
Apache-2.0
OWLv2是一種零樣本文本條件目標檢測模型,可通過文本查詢在圖像中定位對象。
文本生成圖像
Transformers

O
google
932.80k
99
Llama 3.2 11B Vision Instruct
Llama 3.2 是 Meta 發佈的多語言多模態大型語言模型,支持圖像文本到文本的轉換任務,具備強大的跨模態理解能力。
文本生成圖像
Transformers 支持多種語言

L
meta-llama
784.19k
1,424
Owlvit Base Patch32
Apache-2.0
OWL-ViT是一個零樣本文本條件目標檢測模型,可以通過文本查詢搜索圖像中的對象,無需特定類別的訓練數據。
文本生成圖像
Transformers

O
google
764.95k
129
精選推薦AI模型
Llama 3 Typhoon V1.5x 8b Instruct
專為泰語設計的80億參數指令模型,性能媲美GPT-3.5-turbo,優化了應用場景、檢索增強生成、受限生成和推理任務
大型語言模型
Transformers 支持多種語言

L
scb10x
3,269
16
Cadet Tiny
Openrail
Cadet-Tiny是一個基於SODA數據集訓練的超小型對話模型,專為邊緣設備推理設計,體積僅為Cosmo-3B模型的2%左右。
對話系統
Transformers 英語

C
ToddGoldfarb
2,691
6
Roberta Base Chinese Extractive Qa
基於RoBERTa架構的中文抽取式問答模型,適用於從給定文本中提取答案的任務。
問答系統 中文
R
uer
2,694
98