Image-Text-to-Text
Transformers
Safetensors
GGUF
English
gemma3
vision-language
multimodal
home-security
smart-home
on-device
text-generation-inference
Instructions to use llmvision/glimpse-v1 with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use llmvision/glimpse-v1 with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("image-text-to-text", model="llmvision/glimpse-v1")# Load model directly from transformers import AutoProcessor, AutoModelForImageTextToText processor = AutoProcessor.from_pretrained("llmvision/glimpse-v1") model = AutoModelForImageTextToText.from_pretrained("llmvision/glimpse-v1") - llama-cpp-python
How to use llmvision/glimpse-v1 with llama-cpp-python:
# !pip install llama-cpp-python from llama_cpp import Llama llm = Llama.from_pretrained( repo_id="llmvision/glimpse-v1", filename="glimpse-v1.BF16-mmproj.gguf", )
output = llm( "Once upon a time,", max_tokens=512, echo=True ) print(output)
- Notebooks
- Google Colab
- Kaggle
- Local Apps
- llama.cpp
How to use llmvision/glimpse-v1 with llama.cpp:
Install from brew
brew install llama.cpp # Start a local OpenAI-compatible server with a web UI: llama-server -hf llmvision/glimpse-v1:BF16 # Run inference directly in the terminal: llama-cli -hf llmvision/glimpse-v1:BF16
Install from WinGet (Windows)
winget install llama.cpp # Start a local OpenAI-compatible server with a web UI: llama-server -hf llmvision/glimpse-v1:BF16 # Run inference directly in the terminal: llama-cli -hf llmvision/glimpse-v1:BF16
Use pre-built binary
# Download pre-built binary from: # https://github.com/ggerganov/llama.cpp/releases # Start a local OpenAI-compatible server with a web UI: ./llama-server -hf llmvision/glimpse-v1:BF16 # Run inference directly in the terminal: ./llama-cli -hf llmvision/glimpse-v1:BF16
Build from source code
git clone https://github.com/ggerganov/llama.cpp.git cd llama.cpp cmake -B build cmake --build build -j --target llama-server llama-cli # Start a local OpenAI-compatible server with a web UI: ./build/bin/llama-server -hf llmvision/glimpse-v1:BF16 # Run inference directly in the terminal: ./build/bin/llama-cli -hf llmvision/glimpse-v1:BF16
Use Docker
docker model run hf.co/llmvision/glimpse-v1:BF16
- LM Studio
- Jan
- vLLM
How to use llmvision/glimpse-v1 with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "llmvision/glimpse-v1" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "llmvision/glimpse-v1", "prompt": "Once upon a time,", "max_tokens": 512, "temperature": 0.5 }'Use Docker
docker model run hf.co/llmvision/glimpse-v1:BF16
- SGLang
How to use llmvision/glimpse-v1 with SGLang:
Install from pip and serve model
# Install SGLang from pip: pip install sglang # Start the SGLang server: python3 -m sglang.launch_server \ --model-path "llmvision/glimpse-v1" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "llmvision/glimpse-v1", "prompt": "Once upon a time,", "max_tokens": 512, "temperature": 0.5 }'Use Docker images
docker run --gpus all \ --shm-size 32g \ -p 30000:30000 \ -v ~/.cache/huggingface:/root/.cache/huggingface \ --env "HF_TOKEN=<secret>" \ --ipc=host \ lmsysorg/sglang:latest \ python3 -m sglang.launch_server \ --model-path "llmvision/glimpse-v1" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "llmvision/glimpse-v1", "prompt": "Once upon a time,", "max_tokens": 512, "temperature": 0.5 }' - Ollama
How to use llmvision/glimpse-v1 with Ollama:
ollama run hf.co/llmvision/glimpse-v1:BF16
- Unsloth Studio
How to use llmvision/glimpse-v1 with Unsloth Studio:
Install Unsloth Studio (macOS, Linux, WSL)
curl -fsSL https://unsloth.ai/install.sh | sh # Run unsloth studio unsloth studio -H 0.0.0.0 -p 8888 # Then open http://localhost:8888 in your browser # Search for llmvision/glimpse-v1 to start chatting
Install Unsloth Studio (Windows)
irm https://unsloth.ai/install.ps1 | iex # Run unsloth studio unsloth studio -H 0.0.0.0 -p 8888 # Then open http://localhost:8888 in your browser # Search for llmvision/glimpse-v1 to start chatting
Using HuggingFace Spaces for Unsloth
# No setup required # Open https://huggingface.co/spaces/unsloth/studio in your browser # Search for llmvision/glimpse-v1 to start chatting
- Docker Model Runner
How to use llmvision/glimpse-v1 with Docker Model Runner:
docker model run hf.co/llmvision/glimpse-v1:BF16
- Lemonade
How to use llmvision/glimpse-v1 with Lemonade:
Pull the model
# Download Lemonade from https://lemonade-server.ai/ lemonade pull llmvision/glimpse-v1:BF16
Run and chat with the model
lemonade run user.glimpse-v1-BF16
List all available models
lemonade list
Update README.md
Browse files
README.md
CHANGED
|
@@ -13,14 +13,6 @@ tags:
|
|
| 13 |
- on-device
|
| 14 |
language:
|
| 15 |
- en
|
| 16 |
-
- de
|
| 17 |
-
- nl
|
| 18 |
-
- fr
|
| 19 |
-
- es
|
| 20 |
-
- pt
|
| 21 |
-
- it
|
| 22 |
-
- pl
|
| 23 |
-
- sv
|
| 24 |
extra_gated_heading: Access Glimpse-v1
|
| 25 |
extra_gated_description: >-
|
| 26 |
Glimpse-v1 is a Model Derivative of Google's Gemma and is distributed under
|
|
@@ -84,7 +76,7 @@ Glimpse-v1 reports a **1.9× accuracy improvement** over the base Gemma 3 4B mod
|
|
| 84 |
|
| 85 |
## Training
|
| 86 |
|
| 87 |
-
- **Base:** Gemma 3 4B
|
| 88 |
- **Data:** ~5,000 curated real-world home security camera events spanning diverse scenes, lighting conditions, and event types
|
| 89 |
- **Objective:** Supervised fine-tuning for concise, factual event descriptions
|
| 90 |
|
|
@@ -101,45 +93,26 @@ ollama run llmvision/glimpse-v1
|
|
| 101 |
|
| 102 |
### Transformers
|
| 103 |
```
|
| 104 |
-
|
| 105 |
from transformers import AutoProcessor, AutoModelForImageTextToText
|
| 106 |
-
|
| 107 |
import torch
|
| 108 |
-
|
| 109 |
-
model_id = "<your-hf-username>/glimpse-v1"
|
| 110 |
-
|
| 111 |
processor = AutoProcessor.from_pretrained(model_id)
|
| 112 |
-
|
| 113 |
model = AutoModelForImageTextToText.from_pretrained(
|
| 114 |
-
|
| 115 |
model_id, torch_dtype=torch.bfloat16, device_map="auto"
|
| 116 |
-
|
| 117 |
)
|
| 118 |
|
| 119 |
messages = [
|
| 120 |
-
|
| 121 |
{"role": "user", "content": [
|
| 122 |
-
|
| 123 |
{"type": "image", "url": "path/to/frame.jpg"},
|
| 124 |
-
|
| 125 |
{"type": "text", "text": "Summarize this camera event in one sentence."},
|
| 126 |
-
|
| 127 |
]},
|
| 128 |
-
|
| 129 |
]
|
| 130 |
-
|
| 131 |
inputs = processor.apply_chat_template(
|
| 132 |
-
|
| 133 |
messages, add_generation_prompt=True, tokenize=True,
|
| 134 |
-
|
| 135 |
return_dict=True, return_tensors="pt",
|
| 136 |
-
|
| 137 |
).to(model.device)
|
| 138 |
-
|
| 139 |
out = model.generate(inputs, max_new_tokens=128)
|
| 140 |
-
|
| 141 |
print(processor.decode(out[0], skip_special_tokens=True))
|
| 142 |
-
|
| 143 |
```
|
| 144 |
|
| 145 |
## Limitations and risks
|
|
@@ -164,17 +137,11 @@ By downloading or using Glimpse-v1 you agree to the Gemma Terms of Use. If you r
|
|
| 164 |
## Citation
|
| 165 |
|
| 166 |
```
|
| 167 |
-
|
| 168 |
@misc{glimpse_v1_2026,
|
| 169 |
-
|
| 170 |
title = {Glimpse-v1: A compact vision-language model for home security event understanding},
|
| 171 |
-
|
| 172 |
author = {LLM Vision},
|
| 173 |
-
|
| 174 |
year = {2026},
|
| 175 |
-
|
| 176 |
url = {https://llmvision.org/glimpse/}
|
| 177 |
-
|
| 178 |
}
|
| 179 |
|
| 180 |
```
|
|
|
|
| 13 |
- on-device
|
| 14 |
language:
|
| 15 |
- en
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 16 |
extra_gated_heading: Access Glimpse-v1
|
| 17 |
extra_gated_description: >-
|
| 18 |
Glimpse-v1 is a Model Derivative of Google's Gemma and is distributed under
|
|
|
|
| 76 |
|
| 77 |
## Training
|
| 78 |
|
| 79 |
+
- **Base:** Gemma 3 4B
|
| 80 |
- **Data:** ~5,000 curated real-world home security camera events spanning diverse scenes, lighting conditions, and event types
|
| 81 |
- **Objective:** Supervised fine-tuning for concise, factual event descriptions
|
| 82 |
|
|
|
|
| 93 |
|
| 94 |
### Transformers
|
| 95 |
```
|
|
|
|
| 96 |
from transformers import AutoProcessor, AutoModelForImageTextToText
|
|
|
|
| 97 |
import torch
|
| 98 |
+
model_id = "llmvision/glimpse-v1"
|
|
|
|
|
|
|
| 99 |
processor = AutoProcessor.from_pretrained(model_id)
|
|
|
|
| 100 |
model = AutoModelForImageTextToText.from_pretrained(
|
|
|
|
| 101 |
model_id, torch_dtype=torch.bfloat16, device_map="auto"
|
|
|
|
| 102 |
)
|
| 103 |
|
| 104 |
messages = [
|
|
|
|
| 105 |
{"role": "user", "content": [
|
|
|
|
| 106 |
{"type": "image", "url": "path/to/frame.jpg"},
|
|
|
|
| 107 |
{"type": "text", "text": "Summarize this camera event in one sentence."},
|
|
|
|
| 108 |
]},
|
|
|
|
| 109 |
]
|
|
|
|
| 110 |
inputs = processor.apply_chat_template(
|
|
|
|
| 111 |
messages, add_generation_prompt=True, tokenize=True,
|
|
|
|
| 112 |
return_dict=True, return_tensors="pt",
|
|
|
|
| 113 |
).to(model.device)
|
|
|
|
| 114 |
out = model.generate(inputs, max_new_tokens=128)
|
|
|
|
| 115 |
print(processor.decode(out[0], skip_special_tokens=True))
|
|
|
|
| 116 |
```
|
| 117 |
|
| 118 |
## Limitations and risks
|
|
|
|
| 137 |
## Citation
|
| 138 |
|
| 139 |
```
|
|
|
|
| 140 |
@misc{glimpse_v1_2026,
|
|
|
|
| 141 |
title = {Glimpse-v1: A compact vision-language model for home security event understanding},
|
|
|
|
| 142 |
author = {LLM Vision},
|
|
|
|
| 143 |
year = {2026},
|
|
|
|
| 144 |
url = {https://llmvision.org/glimpse/}
|
|
|
|
| 145 |
}
|
| 146 |
|
| 147 |
```
|