Title card reading Moondream 3.1 9B A2B vs UI-Venus 2 9B — one published price, one pending licence, with chips for 9B MoE with 2B active versus 9B dense, $0.30 / $1.00 per million tokens versus no first-party endpoint, and a licence that closes on 13 November 2026, and an OrcaRouter logo in the corner.
Guides & Insights

Moondream 3.1 9B A2B vs UI-Venus 2 9B: One Published Price, One Pending Licence

Author

Magnus Corvin

Date Published

Latest models · 20View all models →
Benchmarks: Artificial Analysis · updated daily
Back to all posts

Moondream 3.1 9B A2B and UI-Venus 2 9B are the same size, in the same modality, and they hand back the same primitive — a coordinate. Only one of them has a published per-token price, and the price belongs to the one whose hosted endpoint is about to be switched off. Moondream 3.1 9B A2B is sold at $0.30 per million input tokens and $1.00 per million output tokens on Moondream Cloud. On 13 November 2026, four weeks from today, Moondream Cloud — inference and the Lens fine-tuning product together — shuts down, a line that arrived on 14 October alongside the news that Moondream the company has been acquired by Prime Intellect. UI-Venus 2 9B has no first-party endpoint at all, so it has no price list either. And the licence that would tell you whether you may ship it commercially is still, in the words of its own model card, pending final confirmation.

Neither of these models is new, and nothing here is a launch. Moondream 3.1 9B A2B shipped on 7 July 2026 under the Moondream Model License 1.0. UI-Venus 2 9B went up on Hugging Face on 26 August 2026 from inclusionAI, the Venus Team's repository at Ant Group, with its technical report following on 27 August. What actually moved inside the last seven days is on the Moondream side: the acquisition, dated 14 October on Moondream's own blog and a day earlier on Prime Intellect's, and the thirty-day wind-down of the hosted service that came attached to it. That is the reason this pairing is worth reading now rather than in a launch round-up. One of these two models just had its distribution channel put on a countdown; the other never had one.

What you can call today, and until when

Screenshot of Moondream's pricing page showing Photon and the open models as free, the Cloud pay-per-token table with Moondream 3.1 9B A2B at $0.30 per million input and $1.00 per million output tokens real-time and $0.15 and $0.50 batch, Moondream 3 Preview at $0.30 and $2.50, and the Lens fine-tuning rate of $0.60 per million training tokens.

Moondream 3.1 9B A2B is available three ways, and one of them is on a clock.

The vendor's cloud sells it per token: $0.30 per million input tokens and $1.00 per million output tokens at real-time latency, or $0.15 and $0.50 on the batch API, which keeps a 50% discount on top of the list rate. Lens, the fine-tuning product, runs at $0.60 per million training tokens. Access is throttled rather than metered by concurrency — the vendor's rate-limit page documents 2 requests per second for any API key, rising to 10 requests per second once the account holds $10. Then the deadline: on 13 November 2026 both the cloud inference endpoint and Lens close, unspent purchased credits are refunded, and customers are told they will be helped to move.

The weights, meanwhile, do not go anywhere. Moondream Model License 1.0 permits commercial self-hosting, fine-tuning, quantisation and redistribution, and Photon — the vendor's own inference engine — runs the checkpoint locally on NVIDIA Ampere-or-newer hardware and Apple Silicon at no charge. So the deadline splits cleanly. If your code posts to the vendor's hosted endpoint, you have a migration in front of you and roughly four weeks to do it. If your code loads a checkpoint you own, the announcement changed nothing you have to act on.

UI-Venus 2 9B was never callable that way. It is full-parameter weights of a dense 9B model initialised from Qwen3.5-9B, split across four BF16 safetensors shards, and the intended path is a vLLM server you stand up yourself, launched with a 262,144-token maximum model length and the Qwen3 reasoning parser. The card is unusually direct about the limits of that recipe: the serving configuration "was not live-canary-validated as part of this model-card update, so pin and verify a vLLM version appropriate for Qwen3.5 before deployment."

Put those two paragraphs next to each other and the buyer's difference is a line item rather than a benchmark. One model is a per-token bill you can put in a spreadsheet until mid-November. The other is a GPU you have to find, size, and keep warm — and the vendor who published the weights has never validated the server configuration for you.

Same parameter count, very different token bills

The 9B label is the least useful thing these two share. What separates them economically is turns per task.

Moondream 3.1 9B A2B has no second step. One call is one image in and a short answer out — bounding boxes from detect, centre coordinates from point, a caption, or a written answer from query. There is an optional reasoning mode, and the vendor's documentation is blunt about its cost: enabling it generates an explicit analysis before the answer and can "materially increase latency and generated tokens." The output is deliberately small, and the model's whole pitch is that it is small while remaining useful.

UI-Venus 2 9B is a closed loop. Each step takes the current screen, carries the episode's screenshot history, emits a reasoning trace and then an action, and the next screenshot comes back as input. The published evaluations show what that costs in turns: the model card reports MobileWorld at a 50-step budget and again at 100, and OSWorld 2.0 at a 150-step budget. Context, in this design, is not room for a document — it is how many screen states the agent can still remember.

The arithmetic follows, and it is ours rather than the vendors'. If a caption or a detection answer is 50 to 100 output tokens, then a million output tokens is somewhere between ten and twenty thousand Moondream calls for a dollar. You cannot write the equivalent sentence for UI-Venus 2 9B, because there is no price to divide by — you pay for the GPU hours the loop occupies, not for the tokens it produces, and the token count per completed task is a function of how many steps you allow. Same parameter count, same 9B headline, and the two bills are not in the same unit.

One more asymmetry worth knowing before it bites a production plan. Moondream measures its own engine at 34.2 requests per second on a single H100 SXM5 at batch size 16 — a vendor figure, on the vendor's hardware, with Photon serving. The hosted API caps a funded account at 10 requests per second. That is a three-fold gap between what the model can do on hardware you control and what the endpoint will let you do, and it is the sort of thing a pipeline discovers in production rather than in an evaluation.

Side by side, dimension by dimension

A two-column comparison scoreboard titled Moondream 3.1 9B A2B vs UI-Venus 2 9B — the scoreboard, with matched rows for parameters, output, context, publish price, hosted endpoint and licence, and a footer stating that both sets of figures are vendor-reported, that neither model has an independent benchmark, and that the two vendors publish no benchmark in common.

• Task — Moondream 3.1 9B A2B: perception over a single image. UI-Venus 2 9B: agency over a screen, in a loop.

• Parameters — 9B total with 2B active per token, a sparse mixture of experts. UI-Venus 2 9B: 9B dense, initialised from Qwen3.5-9B.

• Output — bounding boxes, centre coordinates, captions, written answers and segmentation paths. UI-Venus 2 9B: an action, a click coordinate, and the reasoning trace that produced them.

• Context — 32K tokens. UI-Venus 2 9B: 262,144 maximum position embeddings, configured as episode memory rather than document context.

• Published price — $0.30 in and $1.00 out per million tokens real-time, $0.15 and $0.50 batch, on an endpoint that closes 13 November 2026. UI-Venus 2 9B: none, because there is no first-party endpoint. You host it or you do not use it.

• Published benchmarks — COCO 81.46 F1@0.5, ODinW-13 93.94, RefCOCO-M 87.1, CountBench 90.35, ChartQA 86.01, DocVQA 88.6, and a suite average of 77.9. UI-Venus 2 9B: AndroidWorld 80.2, WebVoyager 90.8, OSWorld-Verified 70.8, ScreenSpot-Pro 73.0, VenusBench-CAPTCHA 78.1, and an OSHarm attack success rate of 11.3% against its base model's 25.3%. Every one of those figures is the vendor's own.

• Licence — Moondream Model License 1.0: open weights, commercial self-hosting permitted, redistribution permitted, one restriction. UI-Venus 2 9B: pending final confirmation, with no licence file in the repository.

• Independent scores — none. Neither model has an entry on a neutral leaderboard, and the two vendors publish no benchmark in common, so nothing in the two columns above can be read across.

The licence is where the two stop resembling each other

Screenshot of the Hugging Face model card for inclusionAI UI-Venus-2-9B showing the description of a general-purpose foundation GUI agent for mobile, web and desktop, the highlights including keypoint-grounded verification and multi-teacher on-policy distillation, the three-stage training pipeline, and the Release Status section stating that the model-weight licence is pending final confirmation and that the Apache-2.0 declaration has intentionally not been carried over because the upstream materials contain conflicting license statements.

Moondream's licence is short and specific, and the vendor rewrote it for this release because the previous one was hard to read. Commercial use, self-hosting, fine-tuning, quantisation and redistribution are all permitted without strings. The single restriction is that you may not turn around and offer general-purpose Moondream inference or fine-tuning to others as a hosted service; a narrow, domain-specific application built on the model is explicitly fine. For a team shipping a product that happens to see images, that is a permissive licence with a competitor clause, and the clause does not touch them.

UI-Venus 2 9B's position is not the same kind of statement, and it is worth quoting rather than paraphrasing. The card's Release Status section says the model-weight licence is "pending final confirmation and will be added before public release," and explains why the obvious choice was not taken: "The Apache-2.0 declaration has intentionally not been carried over because the current upstream materials contain conflicting license statements." There is no licence file in the repository. The weights were published on 26 August 2026, and the repository was last touched on 2 September.

The practical reading is not that the model is unusable. It is that an unresolved licence is a business decision somebody has to make on the record, not a default you inherit by downloading a checkpoint. Research, evaluation and internal prototyping are not where the risk sits. Putting it in front of paying customers is, and no benchmark score in the section above changes that. The card carries a second condition worth reading before anyone builds around it: CAPTCHA-solving capability "should only be used in authorized environments" — a constraint on the use case, not a suggestion about it.

Both vendors let you check the number, in two different directions

Most model releases publish a table and leave it at that. These two both published the caveats, and the caveats are different kinds of thing.

Moondream's release post carries a methodology footer that pins the hardware and the harness: a single H100 SXM5, batch size 16, the highest accuracy and reasoning settings for each model, Photon for Moondream itself, vLLM for the Qwen3.5 and Gemma 4 baselines, Hugging Face Transformers for SAM 3, and LocateAnything evaluated in slow mode to maximise its accuracy. It also volunteers something a vendor has no obligation to volunteer: the scores were reached by treating each benchmark as a customer task, training a per-task LoRA through the same fine-tuning product customers use, and then folding those LoRAs back into the base weights with on-policy distillation. Read that carefully and it changes what the table describes — the checkpoint you download is a distilled student of its own task specialists, not a model that happened to generalise that well on a task nobody trained it for.

The UI-Venus 2 technical report, arXiv 2609.00028, submitted on 27 August 2026, does the other kind of disclosure. Baselines marked with an asterisk were evaluated or reproduced by the authors under their own stated protocol rather than quoted from somewhere else. A dash means unreported, and the authors leave dashes in. MobileWorld is printed twice, at a 50-step budget and at 100, so you can see what the extra steps buy. OSWorld-Verified comes with a warning that comparisons "may use model-specific action scaffolds, so they should be interpreted as benchmark-level references rather than controlled ablations." VenusBench-CAPTCHA is a micro-average over 219 fixed examples; the MCA-Bench figure uses 1,000 sampled examples. There is a sentence stating that live-environment results may vary with evaluation date and environment state.

None of this makes either set of numbers reproducible on your data, and neither vendor has an independent result to point at. What it does mean is that both of them told you what their numbers are worth — which is rarer, and more useful to a buyer, than a good score.

Which one, by constraint

• You need boxes, centre points or counts over images, at a price you can forecast — Moondream 3.1 9B A2B, with the caveat that the forecast only holds if you self-host after 13 November or move the endpoint. A per-token bill with a shutdown date is a forecast with an expiry, not a cost model.

• You need something that reads a screen and acts on it — UI-Venus 2 9B, and the licence question moves ahead of the benchmark table. Put it in internal automation first and revisit when the licence lands, rather than discovering the problem during procurement.

• You are deploying to hardware you already own — Moondream 3.1 9B A2B. Photon is free, runs on Ampere-or-newer NVIDIA parts and Apple Silicon, and gives you the same model in development and production instead of two different endpoints that behave differently under load.

• You want the longer context on the spec sheet — UI-Venus 2 9B's 262,144 tokens is real in configuration, but the intended consumer is a screenshot history, not a PDF. Moondream's 32K is a quarter of the size and its vendor has never claimed it needs to hold an agent's episode, so neither number is a straight win.

• CAPTCHA handling is on your list — read the card's restriction first. The capability is there and the licence is the thing standing in front of it.

If the honest answer is both, for different jobs — perception on the ingest path and an agent on the action path — that is the common shape, and it is a two-contract problem before it is a model problem.

The model behind the model, and who routes it

Neither of these checkpoints is served through OrcaRouter, so nothing here is a pitch to call them through us. The layer that does need routing is the one sitting behind them.

A detection result has to be triaged, an agent's proposed action has to be judged, and the record has to be written. Those are text jobs, they are the more expensive half per token, and they are where a single OpenAI-compatible key across 200-plus models — with provider list pricing passed through at 0% markup, and automatic failover across providers — removes a contract and a code path from the pipeline. Where you already know the shape of the reasoning you want, the routing DSL composes several models into one call, and model fusion runs a panel of them together on the same input. Both are ways to vary the layer behind a fixed vision model without touching the code that talks to the camera.

The pricing mechanism matters more than usual in this particular comparison. Because list prices pass through rather than being marked up, a vendor price change is live on our side the same day. For a model whose hosted price has a shutdown date written into it, that is the only kind of pricing arrangement worth building a forecast on.

What would change this answer

Three things, and all three are checkable.

The first is UI-Venus 2 9B's licence resolving. If it lands permissive, the calculus for anyone who wanted the agent but could not justify the legal exposure shifts immediately, and the recommendation above about keeping it internal becomes stale the week it happens. The second is a first-party endpoint for Moondream 3.1 9B A2B reappearing after the cloud shutdown, which would restore the price comparison this article could only half make. The third, and the one worth the most, is somebody running both models on the same images. Neither vendor has an independent result and the two benchmark sets do not intersect, so the first person to score these two on their own data produces the only comparison that will settle the grounding question — and it is an afternoon of work, not a research project.

Until then, the defensible summary is narrow on purpose. These are two 9B vision models that share a parameter count, a modality tag, and a habit of returning coordinates, and they agree on almost nothing that decides a deployment: what a call costs, whether a call is even the right unit, and whether you are allowed to ship the output.

None of that is hypothetical: the documented AI failures and agent incidents behind releases like this one are collected in the OrcaRouter AI Incident Archive, where each entry carries its own sources, severity, confidence grade and disputed flag.

Compared in this article2

Detected from this article · Benchmarks: Artificial Analysis · updated daily