ViDRiP-LLaVA-SigLIP

ViDRiP-LLaVA with the SigLIP image encoder (ViDRiP-LLaVASigLIP in the paper), from

ViDRiP-LLaVA: Learning diagnostic reasoning from narrated pathology videos for images, videos and whole slides

Code, training scripts and evaluation: https://github.com/trinhvg/ViDRiP-LLaVA

Best for

Open-ended diagnostic descriptions: given a pathology video clip or image, describe the morphology and give a diagnosis. For multiple-choice questions, use ViDRiP-LLaVA-SigLIP-wo-ClipDesc.

Model

  • Image encoder: SigLIP (google/siglip-so400m-patch14-384), projector, and a 7B-parameter Qwen2.5 language decoder (LLaVA-OneVision architecture, llava_qwen).
  • Input: a single image or a sequence of video frames (32 frames in our video evaluation).

Training stages

This is the full training path: stages 0 and 1, the ClipDesc stage, then ViDRiP-Instruct.

Stage Training Data This model
0 Image–caption alignment (projector only) 949,575 image–caption pairs (Quilt-1M, PathAsst, bladder image–text) yes
1 Image instruction tuning 140,363 image conversations (Quilt-LLaVA, PathAsst) yes
2 Image instructions + ClipDesc-Instruct stage-1 conversations + 139,941 ClipDesc-Instruct clips yes
3 ViDRiP-Instruct tuning (decoder LoRA, merged) 4,036 ViDRiP-Instruct videos yes

Each stage ran for one epoch. Details are in the paper's Methods and Supplementary Information.

Usage

Load with the LLaVA-NeXT code in the GitHub repository:

from llava.model.builder import load_pretrained_model

tokenizer, model, image_processor, max_length = load_pretrained_model(
    "trinhvg/ViDRiP-LLaVA-SigLIP", None, "llava_qwen", device_map="auto", attn_implementation="sdpa"
)

A full image/video example is in docs/VidDiag_LLaVA_trial.py in the repository.

Released checkpoints

Checkpoint Training Best for
ViDRiP-LLaVA-SigLIP (this repo) stages 0, 1, ClipDesc, ViDRiP-Instruct open-ended diagnostic descriptions
ViDRiP-LLaVA-SigLIP-wo-ClipDesc stages 0, 1, ViDRiP-Instruct multiple-choice questions

The CONCH- and MUSK-based ViDRiP-LLaVA models contain fine-tuned copies of the CONCH v1.5 and MUSK encoders, whose licenses (CC BY-NC-ND 4.0) do not permit redistribution of derivatives, so these weights are not released. They can be reproduced with the released training code and instruction data by researchers who obtain the encoders from their licensors.

Training data notice

The models were trained on an internal version of the video data that included full-frame-rate clips and content prior to OCR filtering. The 502-video benchmark used in the paper is held out and available on request.

License and intended use

  • Released under CC BY-NC 3.0 (Attribution–NonCommercial), for non-commercial research only.
  • Not for clinical use or medical decision-making.
  • Components such as Qwen2.5, SigLIP, LLaVA-NeXT, Quilt-1M and PathAsst are subject to their own licenses and terms of use.

Citation

Coming soon.

This repository was previously named trinhvg/ViDRiP_LLaVA_video; the weights are unchanged.

Downloads last month
42
Safetensors
Model size
8B params
Tensor type
F16
·
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for trinhvg/ViDRiP-LLaVA-SigLIP

Base model

Qwen/Qwen2.5-7B
Finetuned
(3,254)
this model

Dataset used to train trinhvg/ViDRiP-LLaVA-SigLIP