Skip to content

ima

Research code for an image-and-text System One model that reads option-letter logits from a multimodal LLM, with training and calibration.

Projectresearch

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

TypeQuestionAnswers
Yes / noIs it about billing?yes · no
ChoiceWhat is the tone?calm · angry · sad

How it works

  1. Render each question as a lettered prompt with images and state
  2. Run one forward pass on the multimodal backbone
  3. Keep option-letter logits and apply a calibrated softmax
  4. 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

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.

    ModelresearchPython
  • Paper introducing PixelJev, a native-image decision interface on small open multimodal models with few-shot adaptation.

    Paperresearch
  • Free hosted Jev-style multimodal decision model API (about 20B active) that picks actions from images and options, aimed at robot control.

    Servicebeta
  • ComfyUI 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