Maestro 2 — 9B (Preview)

Math, code, and deep thinking that can see. Now small enough to actually run.

Vection Labs

Weights · Quickstart · Limitations


Preview release. An early build, published for the people who follow us. This has been trained in parallel with Salience-1.5-Pro, with the same data, but in a smaller model! Bugs you report in the Community tab get fixed in Maestro 2.1.

Abstract

Maestro 2 is a 9B dense multimodal model built for engineering work you can run on one GPU. It thinks natively inside <think> blocks, writes and debugs real code, designs frontends that do not look machine-generated, and reads images, screenshots, diagrams and video as first-class input. Context window: 262,144 tokens.

It is the successor to Maestro 1 — the most-liked model we have shipped — and it keeps that model idea intact: one small brain that reasons, codes, and sees, rather than three specialists you have to switch between.

Highlights

  • Native thinking. Real <think> reasoning on by default; switch it off with enable_thinking=False when you want an instant answer.
  • Agentic software engineering. Repo-scale edits, methodical debugging, minimal precise patches, well-formed tool calls.
  • Frontend and SVG. Modern stacks (React/Next, TypeScript, Tailwind, shadcn/ui), real design tokens and spacing scales, WCAG-accessible semantics, and disciplined SVG geometry.
  • Genuinely multimodal. Images and video are inputs, not an afterthought.
  • Long context. 262K tokens native.
  • Small. 9B dense. One consumer GPU. Apache-2.0.

Model overview

Parameters 9.65B dense
Modalities text, image, video -> text
Context window 262,144 tokens native(In version 2.1, the context will be updated to 1M.)
Precision bfloat16
Architecture Qwen3.5 (dense) + native vision encoder
License Apache-2.0
Library transformers (AutoModelForImageTextToText)

Larger MoE siblings: Maestro-2-9B-Preview (35B-A3B) and Salience-1.5-Flash (30B-A3B).

Thinking

Thinking is on by default — the model reasons inside <think>...</think> before answering, and serving stacks surface it as reasoning_content. Pass enable_thinking=False to apply_chat_template for direct answers.

Tool calling

Maestro 2 emits XML-style tool calls (<tool_call><function=...><parameter=...>), parsed natively by the vLLM and SGLang tool parsers for this model family. Provide schemas through the chat template tools argument.

Quickstart

from transformers import AutoModelForImageTextToText, AutoProcessor

repo = "vectionlabs/Maestro-2-9B-Preview"
proc = AutoProcessor.from_pretrained(repo)
model = AutoModelForImageTextToText.from_pretrained(repo, dtype="auto", device_map="auto")

messages = [{
    "role": "user",
    "content": [{"type": "text", "text": "Build a responsive pricing card in React + Tailwind."}],
}]
text = proc.apply_chat_template(messages, tokenize=False, add_generation_prompt=True)
inputs = proc(text=[text], return_tensors="pt").to(model.device)
out = model.generate(**inputs, max_new_tokens=2048)
print(proc.batch_decode(out[:, inputs.input_ids.shape[1]:], skip_special_tokens=True)[0])

Requires a recent transformers (>= 5.8). Images work the same way with {"type": "image", "image": ...} content items.

Running locally

Dense 9B quantizes gracefully, unlike the sparse-MoE tiers of this family:

quant size fits
Q8_0 ~10 GB 12 GB card, best quality
Q5_K_M ~6.5 GB 8 GB card [recommended]
Q4_K_M ~5.6 GB 6 GB card, still coherent

Prompting tips

  • Code: state language, constraints, and the exact I/O contract.
  • Frontend: name the stack and the look you want; it returns tokens, semantics and structure.
  • SVG: ask for an explicit viewBox and a stated grid; it plans geometry before drawing.
  • Vision: put the image before the question in the message content.
  • Sampling: temperature=0.7, top_p=0.95, top_k=20, presence_penalty=1.1. Lower the temperature to ~0.3 for precise patches.

Limitations & responsible use

  • Maestro 2 can be confidently wrong. Verify factual and mathematical claims.
  • Generated code may be insecure or incorrect - review before running, never execute untrusted output.
  • 9B is a small model: it will lose to frontier-scale models on the hardest reasoning.
  • Preview: known issues are being collected for Maestro 2.1. Pin a revision if you need reproducibility.
  • Long-context and video inputs increase latency and memory substantially.
  • Do not use it for surveillance, manipulation, or any use violating applicable law or Apache-2.0.
  • No audio modality.

Citation

@misc{vectionlabs2026maestro2,
  title  = {Maestro 2 Preview: A 9B Multimodal Engineering Model},
  author = {Vection Labs},
  year   = {2026},
  url    = {https://huggingface.co/vectionlabs/Maestro-2-9B-Preview}
}

(c) 2026 Vection Labs - Apache-2.0
Downloads last month
71
Safetensors
Model size
10B params
Tensor type
BF16
·
F32
·
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Collection including vectionlabs/Maestro-2-9B-Preview