
如何用Mini-InternVL2-4B-DA-Medical讀懂你的第一張醫學影像5行代碼搞定單圖問答【免費下載鏈接】Mini-InternVL2-4B-DA-Medical項目地址: https://ai.gitcode.com/hf_mirrors/OpenGVLab/Mini-InternVL2-4B-DA-MedicalMini-InternVL2-4B-DA-Medical是 OpenGVLab 開源的 40 億參數醫學多模態大模型基于 InternVL 系列在海量醫學影像數據上微調而來。它可以看懂胸片、病理切片、眼底圖等醫學圖像并用自然語言回答你的問題——只需要5 行核心代碼就能完成第一次醫學圖像單圖問答。本教程面向零基礎新手不需要醫學或深度學習背景跟著步驟走即可在自己的電腦上跑通醫學影像 AI 問答。一、30 秒認識醫學影像多模態模型能做什么Mini-InternVL2-4B-DA-Medical 屬于 InternVL 家族的領域自適應DA, Domain Adaptation系列專門針對醫學影像場景做了微調訓練數據覆蓋 PMC-OA、MIMIC-CXR胸片、MedPix、RP3D、Retina Image Bank眼底圖等主流醫學數據集。它支持四種對話方式詳見 README.md 的 Quick Start 部分能力說明典型場景單圖單輪問答傳一張圖 一個問題這張胸片有什么異常單圖多輪追問基于同一張圖連續追問這些陰影最需要關注什么多圖對比一次傳入多張圖對比這兩張片子批量推理batch_chat一次處理一批批量生成影像描述它的視覺端采用動態分辨率切片機制把圖片切成 448×448 的方塊最多 12 塊 1 張縮略圖無論你的影像是什么比例都不會變形細節保留得更好。二、環境準備醫學多模態模型最快安裝方法1. 安裝 Python 依賴模型基于transformers運行注意版本要求來自官方說明pip install transformers4.37.2 torch torchvision pillow2. 獲取模型文件將倉庫克隆到本地模型權重約 8GB請預留磁盤空間git clone https://gitcode.com/hf_mirrors/OpenGVLab/Mini-InternVL2-4B-DA-Medical顯卡要求4B 參數使用 bfloat16 推理建議顯存 12GB 及以上顯存較小的機器可以選用同系列的 1B / 2B 醫學版本代碼完全通用。三、5 行代碼完成醫學影像單圖問答下面是跑通單圖問答的全部核心代碼load_image是圖片預處理輔助函數完整實現見 README.mdfrom transformers import AutoModel, AutoTokenizer import torch path OpenGVLab/Mini-InternVL2-4B-DA-Medical # 1. 指定模型路徑 model AutoModel.from_pretrained(path, torch_dtypetorch.bfloat16, trust_remote_codeTrue).cuda() # 2. 加載視覺語言模型 tokenizer AutoTokenizer.from_pretrained(path, trust_remote_codeTrue, use_fastFalse) # 3. 加載分詞器 pixel_values load_image(xray.jpg).to(torch.bfloat16).cuda() # 4. 讀取并切片醫學影像 response model.chat(tokenizer, pixel_values, image\n這張胸片里有什么異常, dict(max_new_tokens512)) # 5. 提問 print(response)運行后模型會針對你的胸片輸出一段自然語言描述。兩個新手常踩的坑提前說清楚?? 必須在from_pretrained中加trust_remote_codeTrue因為模型自帶自定義建模代碼modeling_internvl_chat.py等。?? 問題文本中需要帶image占位符模型才知道問的是哪張圖。四、進階玩法醫學多輪追問與批量分析基于同一張影像連續追問多輪對話借助return_historyTrue模型會記住上下文就像和一位影像助手連續交流cfg dict(max_new_tokens512, do_sampleTrue) resp, history model.chat(tokenizer, pixel_values, image\n請簡要描述這張影像。, cfg, historyNone, return_historyTrue) resp, history model.chat(tokenizer, pixel_values, 哪些區域最需要關注, cfg, historyhistory, return_historyTrue)多圖對比把多張圖的切片在第一個維度拼接image占位符按順序對應pixel_values torch.cat((load_image(img1.jpg), load_image(img2.jpg)), dim0) response model.chat(tokenizer, pixel_values, image\n請對比這兩張影像的異同。, cfg)批量處理一批影像batch_chat接口實現見modeling_internvl_chat.py可一次性生成多張影像的描述適合做批量數據整理responses model.batch_chat(tokenizer, pixel_values, questionsquestions, generation_configcfg)五、項目文件結構一覽醫學多模態模型都包含什么文件作用config.json模型結構配置InternViT 視覺塔 Phi-3 語言模型modeling_internvl_chat.py核心對話邏輯chat/batch_chat方法所在modeling_intern_vit.py視覺編碼器InternViT實現modeling_phi3.py語言模型Phi-3實現conversation.py對話模板定義phi3-chat 模板preprocessor_config.json圖片預處理參數448px 切片、歸一化均值tokenizer.json/tokenizer_config.json分詞器文件model-00001-of-00002.safetensors等模型權重分片存儲generation_config.json生成參數配置README.md完整使用示例與訓練數據集說明六、新手常見問題FAQ?Q1運行報錯AttributeError或找不到模型類升級transformers到 4.37.2 以上并確認trust_remote_codeTrue已開啟。Q2顯存不夠跑 4B 版本怎么辦可以改用同系列的Mini-InternVL2-1B-DA-Medical或 2B 版本用法完全一致也可調小load_image的max_num默認 12 塊來降低顯存占用。Q3模型能直接給診斷結論嗎它擅長影像內容描述與問答輸出屬于輔助參考性質不能替代專業醫生的診斷請勿直接用于臨床決策。Q4純文本對話可以不帶圖片嗎可以。調用model.chat(tokenizer, None, 你好你是誰, cfg)傳入None即可進行純文本閑聊。 到這里你已經用 5 行代碼讓一個 40 億參數的醫學影像 AI 讀懂了第一張片子。下一步可以試試多輪追問和多圖對比體驗更接近影像助手的完整交互流程。【免費下載鏈接】Mini-InternVL2-4B-DA-Medical項目地址: https://ai.gitcode.com/hf_mirrors/OpenGVLab/Mini-InternVL2-4B-DA-Medical創作聲明:本文部分內容由AI輔助生成(AIGC),僅供參考