Instructions to use litert-community/SmolVLM2-500M with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- LiteRT-LM
How to use litert-community/SmolVLM2-500M with LiteRT-LM:
# LiteRT-LM runs on various platforms (Android, iOS, Windows, Linux, macOS, IoT, Web/WASM) # and supports many APIs (C++, Python, Kotlin, Swift, JavaScript, Flutter). # For platform-specific integration guides, please refer to the official developer website: # https://ai.google.dev/edge/litert-lm # To try LiteRT-LM, the easiest way is to use our CLI tool. # 1. Install the LiteRT-LM CLI tool: pip install -U litert-lm # 2. Download and run this model locally: # See: https://ai.google.dev/edge/litert-lm/cli litert-lm run \ --from-huggingface-repo=litert-community/SmolVLM2-500M \ --prompt="Write me a poem"
- LiteRT
How to use litert-community/SmolVLM2-500M with LiteRT:
# No code snippets available yet for this library. # To use this model, check the repository files and the library's documentation. # Want to help? PRs adding snippets are welcome at: # https://github.com/huggingface/huggingface.js
- Notebooks
- Google Colab
- Kaggle
Add litertlm_manifest.json — machine-readable deployment manifest (variant selection, backend recommendations, measured performance)
Browse files- litertlm_manifest.json +95 -0
litertlm_manifest.json
ADDED
|
@@ -0,0 +1,95 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"manifest_schema": "0.1.0",
|
| 3 |
+
"repo": "litert-community/SmolVLM2-500M",
|
| 4 |
+
"generated": "2026-08-24",
|
| 5 |
+
"generator": "make_manifest.py",
|
| 6 |
+
"model": {
|
| 7 |
+
"display_name": "SmolVLM2-500M",
|
| 8 |
+
"base_model": "HuggingFaceTB/SmolVLM2-500M-Video-Instruct",
|
| 9 |
+
"architecture": "VLM (fast_vlm bundle): SigLIP vision encoder + pixel-shuffle x4 connector feeding a SmolLM2-360M (Llama) decoder; image path only",
|
| 10 |
+
"parameters_b": 0.5,
|
| 11 |
+
"license": "apache-2.0",
|
| 12 |
+
"context_length": 2048,
|
| 13 |
+
"capabilities": {
|
| 14 |
+
"vision": true,
|
| 15 |
+
"audio": false,
|
| 16 |
+
"thinking": {
|
| 17 |
+
"declared": false
|
| 18 |
+
}
|
| 19 |
+
}
|
| 20 |
+
},
|
| 21 |
+
"variants": [
|
| 22 |
+
{
|
| 23 |
+
"file": "SmolVLM2-500M.litertlm",
|
| 24 |
+
"sha256": "0dfb6fb881eb16e5ef2b2be04de5476caf939b7d9ae601fdee308bbc5462fd55",
|
| 25 |
+
"size_bytes": 361052336,
|
| 26 |
+
"sections": [
|
| 27 |
+
{
|
| 28 |
+
"type": "LlmMetadataProto",
|
| 29 |
+
"size_bytes": 663
|
| 30 |
+
},
|
| 31 |
+
{
|
| 32 |
+
"type": "SP_Tokenizer",
|
| 33 |
+
"size_bytes": 881974
|
| 34 |
+
},
|
| 35 |
+
{
|
| 36 |
+
"type": "TFLiteModel",
|
| 37 |
+
"size_bytes": 47902368,
|
| 38 |
+
"model_type": "tf_lite_embedder"
|
| 39 |
+
},
|
| 40 |
+
{
|
| 41 |
+
"type": "TFLiteModel",
|
| 42 |
+
"size_bytes": 208930496,
|
| 43 |
+
"model_type": "tf_lite_prefill_decode"
|
| 44 |
+
},
|
| 45 |
+
{
|
| 46 |
+
"type": "TFLiteModel",
|
| 47 |
+
"size_bytes": 91469200,
|
| 48 |
+
"model_type": "tf_lite_vision_encoder"
|
| 49 |
+
},
|
| 50 |
+
{
|
| 51 |
+
"type": "TFLiteModel",
|
| 52 |
+
"size_bytes": 11810992,
|
| 53 |
+
"model_type": "tf_lite_vision_adapter"
|
| 54 |
+
}
|
| 55 |
+
],
|
| 56 |
+
"quantization": "vision encoder + connector int8; decoder int4 (blockwise-32 + OCTAV); tied embedding int8 (externalized)",
|
| 57 |
+
"backends": [
|
| 58 |
+
"cpu",
|
| 59 |
+
"gpu"
|
| 60 |
+
],
|
| 61 |
+
"default_backend": "cpu",
|
| 62 |
+
"requirements": {
|
| 63 |
+
"platform_notes": [
|
| 64 |
+
"Best for single-image VQA — ask about one image per chat (start a new conversation for a different image)",
|
| 65 |
+
"Use the CPU backend on the desktop (macOS GPU unusable on litert-lm 0.15.0)",
|
| 66 |
+
"Android: Gallery v1.0.16+ imports directly from Hugging Face; in the Import Model dialog check 'Support image' (required for image input), set a sensible max tokens, pick GPU (fast) or CPU",
|
| 67 |
+
"iPhone/macOS Swift runtime: load with the vision tower enabled (Modality.textImage / [.vision]) — vision-only bundle, no audio tower",
|
| 68 |
+
"Image input resized to 512x512; context (KV cache) 2048; benchmark figures cover the text path only (the vision encoder runs once per image and is not included)"
|
| 69 |
+
]
|
| 70 |
+
},
|
| 71 |
+
"measured": [
|
| 72 |
+
{
|
| 73 |
+
"device": "Apple M4 Max",
|
| 74 |
+
"os": "macOS",
|
| 75 |
+
"backend": "cpu",
|
| 76 |
+
"runtime": "litert-lm 0.15.0",
|
| 77 |
+
"prompt_tokens": 256,
|
| 78 |
+
"decode_tokens": 256,
|
| 79 |
+
"prefill_tps": 409,
|
| 80 |
+
"decode_tps": 63.9,
|
| 81 |
+
"ttft_s": 0.64,
|
| 82 |
+
"max_num_tokens": 4096,
|
| 83 |
+
"runs": 3,
|
| 84 |
+
"date": "2026-08-24",
|
| 85 |
+
"source": "model card Performance table (cardbench harness)"
|
| 86 |
+
}
|
| 87 |
+
],
|
| 88 |
+
"known_issues": [
|
| 89 |
+
"macOS GPU backend not usable on litert-lm 0.15.0 — returns a stream of <|endoftext|> tokens instead of a caption (desktop-runtime observation; says nothing about the iPhone or Android GPU paths)",
|
| 90 |
+
"On the GPU backend a second image in the same conversation may degrade (a GPU-delegate trait shared across fast_vlm models); CPU handles multi-image",
|
| 91 |
+
"Very small (500M) model — can be repetitive/verbose at pure greedy; use sampling (e.g. top-p) and keep a sensible max_tokens"
|
| 92 |
+
]
|
| 93 |
+
}
|
| 94 |
+
]
|
| 95 |
+
}
|