You need to agree to share your Hugging Face information to access this model
This repository is publicly accessible, but you have to accept the conditions to access its files and content.
PathoJev is released for non-commercial research use under CC BY-NC 4.0. It is not a medical device and must not be used for diagnosis or clinical decision-making. Access requests are reviewed manually.
Log in or Sign Up to review the conditions and access this model content.
PathoJev
PathoJev answers pathology questions directly as probabilities over the answer options, for whole-slide images (WSIs) and regions of interest (ROIs). It builds on the System One model JEV with a Qwen3.5 hybrid backbone. A WSI enters as a 32 x 32 grid of pooled CONCH v1.5 patch features and is encoded once; every question is then read out as an isolated row on the shared slide context by a typed decision head, without generating text. ROI images go through the backbone's own vision tower.
Code: https://github.com/ChyaZhang/PathoJev
Files
| Path | Content |
|---|---|
9b/ |
PathoJev-9B: LoRA adapter, decision head and slide projection (pathojev.safetensors) and config.json; backbone Qwen/Qwen3.5-9B |
27b/ |
PathoJev-27B, same layout; backbone autotrust/JEV-27B-VL |
pathojev/, demo.py |
minimal inference code (same as the GitHub repository) |
Access is gated: request it on this page, then log in with hf auth login. The backbone is downloaded on first use. PathoJev-9B needs about 20 GB of GPU memory and PathoJev-27B about 60 GB.
Usage
hf download Mikezcy/PathoJev --exclude "*.safetensors" --local-dir PathoJev && cd PathoJev
pip install -r requirements.txt
from pathojev import PathoJev, make_grid
model = PathoJev.from_pretrained("9b") # or "27b"; weights are fetched from this repository
grid = make_grid("slide.h5") # TRIDENT CONCH v1.5 features (20x, 512 x 512 px patches)
questions = [
{"question": "What is the histologic grade of the tumor?", "options": ["Low-grade", "High-grade"]},
{"question": "Lymphovascular invasion is present.", "kind": "noul"}, # true / false statement
]
print(model.answer_slide(grid, questions)) # [{"answer": ..., "probs": {option: probability}}, ...]
model.answer_roi(images, questions) answers one question per ROI image. demo.py runs the eight SlideBench-TCGA
questions of slide TCGA-XF-AAMJ; see the GitHub repository for the expected output.
Results
Accuracy (%):
| Model | WSI-VQA | WSI-Bench | SlideBench-TCGA | PathMMU-tiny | PathVQA | Quilt-VQA | OmniMedVQA | MedXpertQA |
|---|---|---|---|---|---|---|---|---|
| PathoJev-9B | 65.4 | 90.4 | 75.9 | 71.9 | 94.6 | 70.8 | 75.3 | 25.6 |
| PathoJev-27B | 66.4 | 91.1 | 76.9 | 73.8 | 95.1 | 67.3 | 69.9 | 50.0 |
License
CC BY-NC 4.0, for non-commercial research use. CONCH v1.5 and pre-extracted TCGA features have their own licenses. PathoJev is not a medical device and must not be used for clinical decision-making.