ima
Research code for an image-and-text System One model that reads option-letter logits from a multimodal LLM, with training and calibration.
Overview
IMA (Instant Multimodal Answers) is a Python research project that builds a Jev-style decision model on top of a pretrained multimodal LLM from Hugging Face. Each typed question becomes a lettered prompt containing the images, the state, the question and options A, B, C and so on; the backbone runs one forward pass, keeps only the logits of the option letters at the answer position, and a softmax with a fitted global temperature turns them into calibrated probabilities. It supports noul, choice and score with up to 26 options.
It is for researchers who want an open, image-aware equivalent of Jev. The pipeline accepts a /v1/systemone-style request with a media field. The repository includes LoRA training on Qwen3.5 backbones, standalone recalibration (for example after quantization), and a test harness, configured by YAML. A System Two test mode lets the same model generate answers like a chat model for comparison. Training uses a gated Hugging Face dataset of vision decisions.
What the decision model decides
| Type | Question | Answers |
|---|---|---|
| Yes / no | Is it about billing? | yes · no |
| Choice | What is the tone? | calm · angry · sad |
How it works
- Render each question as a lettered prompt with images and state
- Run one forward pass on the multimodal backbone
- Keep option-letter logits and apply a calibrated softmax
- Return typed answers in /v1/systemone format
Strengths
- Handles images as well as text, unlike hosted Jev
- One forward pass per question with no generation
- Explicit post-training temperature calibration
- Includes training, calibration and test tooling
Caveats
- Research code; training dataset is gated
- Slower PyTorch fallback without CUDA
- No licence stated
Getting started
Needs Python 3.11+ and uv: `uv sync`, then use `SystemOnePipeline.from_pretrained(...)` or `uv run python -m src.training.train configs/train/qwen3_5_0_8b.yml`.At a glance
- Type
- Project
- Status
- research
- Language
- Python
- Runtime
- PyTorch / Hugging Face
- Has code
- yes
- Stars
- 0
Use cases and integrations
How curated lists describe it
A decoder-based image-text System One model
wh000wh000/awesome-jev-live
Frequently asked questions
What does IMA decide?
Typed Noul, Choice and Score questions about text and images, returning calibrated probabilities.
How is it different from Jev?
It is an open model you train and run yourself, and it accepts images.
What is System Two mode?
A comparison mode where the same model generates its answer like a chat model.
Related projects
Research toolkit that encodes an image once and answers several typed questions from a shared distribution, plus OpenJev-0.6B text models.
ModelresearchPythonPaper introducing PixelJev, a native-image decision interface on small open multimodal models with few-shot adaptation.
PaperresearchFree hosted Jev-style multimodal decision model API (about 20B active) that picks actions from images and options, aimed at robot control.
ServicebetaComfyUI nodes for Jev-style noul, choice and score decisions over images and text using a local imajev adapter on Qwen3.5.
ProjectbetaPython- cbjev★ 4
Self-hosted encoder model giving Jev-compatible choice, score and noul answers in one pass, pitched as a better-calibrated Laya successor.
ProjectresearchPython Joke decision model trained to answer wrongly with total confidence: 1.9% accuracy at 0.957 mean confidence, via a Jev-style API.
ProjectresearchPython