Luanneee/ominiVLM
0
omniVLM
Lightweight multimodal VLM training & alignment project. Trained on a single RTX 4090/4090D (24 GB) with bf16 precision, spanning pretraining, SFT, GRPO and DPO of a 65M MiniMind-V VLM and Qwen2.5-VL-7B adapters.
Models
Evaluation highlights
*OK-VQA / CIDEr reported for the DPO (balanced preferences, β=0.1) stage.
Usage
minimind-v-65m-multitask
Load the checkpoint with the MiniMind-V model definition in this repo:
import torch
from model_vlm import MiniMindVLM # see minimind-v-65m-multitask/model_vlm.py
model = MiniMindVLM(...)
model.load_state_dict(torch.load("multitask_final_vlm_768.pth", map_location="cpu"))Tokenizer files (tokenizer.json, tokenizer_config.json) are included in the model folder.
qwen2.5-vl-7b-dpo-v6
This is a LoRA adapter for Qwen/Qwen2.5-VL-7B-Instruct. Load the base model and apply the adapter with PEFT:
from peft import PeftModel
from transformers import Qwen2_5_VLForConditionalGeneration
base = Qwen2_5_VLForConditionalGeneration.from_pretrained("Qwen/Qwen2.5-VL-7B-Instruct")
model = PeftModel.from_pretrained(base, "qwen2.5-vl-7b-dpo-v6")Training & evaluation
Code, configs, data builders and evaluation scripts are in the source repository Icecream102/ominiVLM.
License
Apache-2.0
