From: vikhyatk <huggingface.co/vikhyatk>Newsgroups: alt.freeweights.textSubject:

moondream2

Date: 2026-11-15Commit: 5d6c926Signed: 2DC28CC7B26A283B ✓

Image text to text model with 1.9B parameters. Safetensors weights, 3.86 GB in all. Published by vikhyatk under Apache-2.0.

1.9B params3.86GBmoondream2safetensorspermissive
FactsParams1.9BSize3.86 GBFormatssafetensorsTaskimage text to textLicenseApache-2.0From sourcepermissive
$ fw get vikhyatk/moondream2
# manifest sha256 d7fd8312047c… · 3.86 GB · 30 files
$ fw verify ./moondream2 vikhyatk/moondream2
From sourceHosted (signed)vikhyatk/moondream2Last check: 2026-11-15 02:26 UTC

Get help: custom fine-tune or private deploy. We review your setup before we quote.

Works with

Overview

Size
3.86 GB
Weights
3.85 GB (safetensors)
Parameters
1.9B
Formats
safetensors
Task
image text to text
License
Apache-2.0 (permissive)
Files
30, each with a sha256
Publisher
vikhyatk
Added
2026-11-15
Section
alt.freeweights.text
Lineage

Original release from the publisher.

Where these bytes come from
Publisher at the pinned commit→You

Sources are tried in order. A file counts only when its size and sha256 match the manifest. Sources are checked when you ask for them, not on a timer.

Sources
BadgeHostLast checkResult
From sourcehuggingface.co2026-11-15 02:26 UTCpassed

Model card

From the publisher at commit 5d6c926. Shown as plain text with links; images open at the publisher.

⚠️ This repository contains the latest version of Moondream 2, our previous generation model. The latest version of Moondream is Moondream 3 (Preview).


Moondream is a small vision language model designed to run efficiently everywhere.

Website / Demo / GitHub

This repository contains the latest (2025-06-21) release of Moondream 2, as well as historical releases. The model is updated frequently, so we recommend specifying a revision as shown below if you're using it in a production application.

Usage#
from transformers import AutoModelForCausalLM, AutoTokenizer
from PIL import Image

model = AutoModelForCausalLM.from_pretrained(
    "vikhyatk/moondream2",
    revision="2025-06-21",
    trust_remote_code=True,
    device_map={"": "cuda"}  # ...or 'mps', on Apple Silicon
)

# Captioning
print("Short caption:")
print(model.caption(image, length="short")["caption"])

print("\nNormal caption:")
for t in model.caption(image, length="normal", stream=True)["caption"]:
    # Streaming generation example, supported for caption() and detect()
    print(t, end="", flush=True)
print(model.caption(image, length="normal"))

# Visual Querying
print("\nVisual query: 'How many people are in the image?'")
print(model.query(image, "How many people are in the image?")["answer"])

# Object Detection
print("\nObject detection: 'face'")
objects = model.detect(image, "face")["objects"]
print(f"Found {len(objects)} face(s)")

# Pointing
print("\nPointing: 'person'")
points = model.point(image, "person")["points"]
print(f"Found {len(points)} person(s)")
Changelog#

2025-06-21 (full release notes)

  • Grounded Reasoning Introduces a new step-by-step reasoning mode that explicitly grounds reasoning in spatial positions within the image before answering, leading to more precise visual interpretation (e.g., chart median calculations, accurate counting). Enable with reasoning=True in the query skill to trade off speed vs. accuracy.
  • Sharper Object Detection Uses reinforcement learning on higher-quality bounding-box annotations to reduce object clumping and improve fine-grained detections (e.g., distinguishing “blue bottle” vs. “bottle”).
  • Faster Text Generation Yields 20–40 % faster response generation via a new “superword” tokenizer and lightweight tokenizer transfer hypernetwork, which reduces the number of tokens emitted without loss in accuracy and eases future multilingual extensions.
  • Improved UI Understanding Boosts ScreenSpot (UI element localization) performance from an F1\@0.5 of 60.3 to 80.4, making Moondream more effective for UI-focused applications.
  • Reinforcement Learning Enhancements RL fine-tuning applied across 55 vision-language tasks to reinforce grounded reasoning and detection capabilities, with a roadmap to expand to \~120 tasks in the next update.

2025-04-15 (full release notes)

  1. Improved chart understanding (ChartQA up from 74.8 to 77.5, 82.2 with PoT)
  2. Added temperature and nucleus sampling to reduce repetitive outputs
  3. Better OCR for documents and tables (prompt with “Transcribe the text” or “Transcribe the text in natural reading order”)
  4. Object detection supports document layout detection (figure, formula, text, etc)
  5. UI understanding (ScreenSpot F1\@0.5 up from 53.3 to 60.3)
  6. Improved text understanding (DocVQA up from 76.5 to 79.3, TextVQA up from 74.6 to 76.3)

2025-03-27 (full release notes)

  1. Added support for long-form captioning
  2. Open vocabulary image tagging
  3. Improved counting accuracy (e.g. CountBenchQA increased from 80 to 86.4)
  4. Improved text understanding (e.g. OCRBench increased from 58.3 to 61.2)
  5. Improved object detection, especially for small objects (e.g. COCO up from 30.5 to 51.2)
  6. Fixed token streaming bug affecting multi-byte unicode characters
  7. gpt-fast style compile() now supported in HF Transformers implementation

Files

30 files · 3.86 GBWeights 3.85 GB (safetensors). Sizes and sha256 from the signed manifest.
Show all 30 files with their sha256
FileSizesha256
.gitattributes1.65 KB4d8bb3e42e5ce85f36d64c30d5df8a206ffadf6db2c93ae13b89cc9f4d17ede4
README.md4.45 KB24cb16e1accd51e91302836bf87388740f0c78d1a29fc2895b68b4b2ed452bbc
added_tokens.json1.08 KBeca8e90d1be6af3afeb1a37f070f9492645c551a9fb2e1ce2a4a8b21f04ffc8b
config.json277 Bc4d59ae1179c1792ad49b8aeb59092101cc948d7b1914ed549689aed2c1fa083
config.py2.65 KBee7707c9b4d091dd6d3441ceebc54a36be4023e97d0504e59b5ea7d71147854b
configuration_moondream.py3.34 KB3dd654ce842b71fbe050e4d4098d2818ba7fccd7eea186e7c24b672ba756a489
fourier_features.py558 B83729dd2b1341ed388c850c799ac417a73eae78ff1b2f0418ed7a88f69acf69d
generation_config.json69 Ba5a8484e27670c431bf1c5c9f972c27bdb8a3873ede65e2118440115b4c8d770
handler.py2.10 KBc7b6dc4288ed81475187a87def69d33889095e1df24fc7bb6f3bd93e270d5fd7
hf_moondream.py6.56 KBe30973a66c3334464d4c87c577d77fe85892304655085cbcb7beb44f6ed4f05c
image_crops.py8.14 KB1f3f469fcbd3291966c6f9fda5c90f8044d39b391261bac14ef6bbcfb76496cb
layers.py4.56 KB9b3bab95b3571b39bd3d37c124bb6205bf881b55652e89cda360e522079962d8
lora.py2.30 KBd180359b1739e9a087a9c756c4671e536debb702d591370741af75ce4e27762d
merges.txt456 KB1ce1664773c50f3e0cc8842619a93edc4624525b728b188a9e0be33b7726adc5
model.safetensors3.85 GB70a7d94c0c8349eb58ed2d9e636ef2d0916960f321ecabeac6354b8ba3d7403f
moondream.py35.5 KB76e0517ccdfe03ce1e57772ac733c6fb14cf4a3744fc85d956df9d1ef69f7d52
region.py4.54 KB225bd962af02fedbf6d4a423c3282cada452fdc11efb478558b82df659dbf726
region_model.py1.33 KB7e72c196778cbe59e810cdb67a0b9995a1f31fe95b0eafc6d6ab5b64fc0cbf6c
requirements.txt42 B80d4bfa20536d2e695c5a08813c63cbff708f7d8eeea27bc329f067b0fd4e169
rope.py1.57 KB0032ace75443a81888b957b28b7fd00ac808effdfdace14855d31b5c14ea5770
special_tokens_map.json99 B6f50ab5a5a509a1c309d6171f339b196a900dc9c99ad0408ff23bb615fdae7ad
text.py6.85 KB9ec56dd5f1a78c9116c8f60e83db90c887034e0183ec3acb6245a91b493ce352
tokenizer.json2.11 MB337da36be7a71a6e88aa9148967a7bc8736f4b47c7de8e19ba92b89e80734cfc
tokenizer_config.json7.34 KB1906c7514a738bd743a05d7d95c8e9aeddb4d8c9ffdda4fb6ee05653fb6b97c4
utils.py1.42 KB08d33430923d83ad26dfdbbc58d6df0f363a4c3c05cbfd8018f6e2c98c82ed59
versions.txt131 B81cb485db69a530cd400dc0d54be04727865f886cc52645abdc5a36f6eb6ab94
vision.py5.09 KBf524cd4227df0394b0b1e73f281c93791267849729fc13a874a9071fff6f1eed
vision_encoder.py10.2 KBcc8fc22277d7f21417361d0cbf6203b4923814a24ccc336d33ed78754f4de2bf
vocab.json798 KB3ba3c3109ff33976c4bd966589c11ee14fcaa1f4c9e5e154c2ed7f99d80709e7
weights.py9.71 KBe47fb56bd1830cb71b7017dfbbb96ce0c66d4e328674c64091015b3e7e1eef29
VersionsEach time the pinned upstream commit or file list changed in this repo. Newest first.
Upstream commitDateContents
5d6c926f44 pinned now2026-11-15 02:26 UTC30 files · 3.86 GB

Use it

$ fw get vikhyatk/moondream2
# manifest sha256 d7fd8312047c… · 3.86 GB · 30 files
$ fw verify ./moondream2 vikhyatk/moondream2
fw.pyChecks the signature and every sha256, tries each source in order, resumes.
$ python3 fw.py get https://freeweights.allternit.com/manifests/vikhyatk/moondream2.json --dir ./moondream2 $ python3 fw.py verify ./moondream2 ./vikhyatk__moondream2.json
hfThe Hugging Face CLI with one setting. Same repo id.
$ HF_ENDPOINT=https://freeweights.allternit.com hf download vikhyatk/moondream2 --revision 5d6c926f44e26b07957b0dd315bbedcb4c17a5fe --local-dir ./moondream2
transformersLoad the weights in Python.
import os os.environ["HF_ENDPOINT"] = "https://freeweights.allternit.com" from transformers import AutoModelForImageTextToText, AutoProcessor processor = AutoProcessor.from_pretrained("vikhyatk/moondream2", revision="5d6c926f44e26b07957b0dd315bbedcb4c17a5fe") model = AutoModelForImageTextToText.from_pretrained("vikhyatk/moondream2", revision="5d6c926f44e26b07957b0dd315bbedcb4c17a5fe", device_map="auto")
vLLMServe an OpenAI-compatible API.
$ HF_ENDPOINT=https://freeweights.allternit.com vllm serve vikhyatk/moondream2 --revision 5d6c926f44e26b07957b0dd315bbedcb4c17a5fe

License

Name
Apache License 2.0
Id
Apache-2.0
Class
Permissive
Redistribution
yes
Listing
Hosted (signed)
Decided
License as declared by the publisher. No person read it. 2026-11-15
Text in
README.md
Text sha256
24cb16e1accd51e91302836bf87388740f0c78d1a29fc2895b68b4b2ed452bbc
Terms gate
No extra terms beyond the license.

Read the license text

Licenses are checked against the license table. A custom license passes only after a person reads it.

Provenance

From: vikhyatk <huggingface.co/vikhyatk>Newsgroups: alt.freeweights.textSubject: moondream2Date: 2026-11-15Commit: 5d6c926Signed: 2DC28CC7B26A283B ✓
Upstream
vikhyatk/moondream2
Pinned commit
5d6c926f44e26b07957b0dd315bbedcb4c17a5fe
Manifest
moondream2.json · .minisig
Manifest sha256
d7fd8312047c2563f06db3fe13b52001925fad567a34d5c155bb4f64edefccdc
Signature
minisign, Ed25519, key 2DC28CC7B26A283B
Created
2026-11-15 02:26 UTC
Generator
freeweights-manifest/0.1.0
Takedowns
None.

How to verify

$ curl -O https://freeweights.allternit.com/manifests/vikhyatk/moondream2.json $ curl -O https://freeweights.allternit.com/manifests/vikhyatk/moondream2.json.minisig $ minisign -Vm moondream2.json -P RWQ7KGqyx4zCLXtUFOqvfv8L3g+8fpKJ1FsuxPyOYMF+4KufbUxKq1Oq $ shasum -a 256 <file> # compare with the Files tab

A manifest whose signature fails must be rejected. A file whose size or sha256 does not match must be discarded. Verify a download

Model tree

1 model in the catalog name this one as their parent.

Quantizations
1
Quantizations 1
Get it
Download
$ HF_ENDPOINT=https://freeweights.allternit.com hf download vikhyatk/moondream2
Open in Freeweights Studio

Pull, verify and run it in the Allternit app on Desktop, web or phone.

Signed manifest
minisign, key 2DC28CC7B26A283B. moondream2.json. Provenance. Takedown history: none.

Variants

1 quantized or adapter build of moondream2. Each has its own license check and page.

From: laion <huggingface.co/laion>Subject: a2-rl-e2egit_large-50-32B
From: laion <huggingface.co/laion>Subject: a3-rl-DCAgent_exp_rpt_e2egit-large-15-8B
From: laion <huggingface.co/laion>Subject: a3-rl-DCAgent_exp_rpt_e2egit-v2-10-8B
From: laion <huggingface.co/laion>Subject: a3-rl-DCAgent_exp_rpt_pymethods2test-large-80-8B
From: laion <huggingface.co/laion>Subject: a3-rl-DCAgent_exp_rpt_unitsyn-python-large-10-8B
From: laion <huggingface.co/laion>Subject: a3-rl-DCAgent_mix_h2_language_proportional-65-8B