Instructions to use harrrshall/lumen-merged with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use harrrshall/lumen-merged with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("text-generation", model="harrrshall/lumen-merged") messages = [ { "role": "user", "content": [ {"type": "image", "url": "https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/p-blog/candy.JPG"}, {"type": "text", "text": "What animal is on the candy?"} ] }, ] pipe(text=messages)# Load model directly from transformers import AutoProcessor, AutoModelForMultimodalLM processor = AutoProcessor.from_pretrained("harrrshall/lumen-merged") model = AutoModelForMultimodalLM.from_pretrained("harrrshall/lumen-merged", device_map="auto") messages = [ { "role": "user", "content": [ {"type": "image", "url": "https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/p-blog/candy.JPG"}, {"type": "text", "text": "What animal is on the candy?"} ] }, ] inputs = processor.apply_chat_template( messages, add_generation_prompt=True, tokenize=True, return_dict=True, return_tensors="pt", ).to(model.device) outputs = model.generate(**inputs, max_new_tokens=40) print(processor.decode(outputs[0][inputs["input_ids"].shape[-1]:])) - Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- vLLM
How to use harrrshall/lumen-merged with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "harrrshall/lumen-merged" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "harrrshall/lumen-merged", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }'Use Docker
docker model run hf.co/harrrshall/lumen-merged
- SGLang
How to use harrrshall/lumen-merged 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 "harrrshall/lumen-merged" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "harrrshall/lumen-merged", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }'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 "harrrshall/lumen-merged" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "harrrshall/lumen-merged", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }' - Docker Model Runner
How to use harrrshall/lumen-merged with Docker Model Runner:
docker model run hf.co/harrrshall/lumen-merged
Lumen estimated ~200× lower inference cost with frontier competitive saferepair
Lumen is a 4b model for automatically verifiable accessibility attribute repair in react and static html. on a matched 43-task development benchmark, Lumen completed 42 safe repairs, compared with 40 for gpt-5.6 sol and 43 for claude opus 4.8.
this is the standalone bf16 edition of Lumen. it includes the qwen3.5 4b base weights with the Lumen lora adapter merged in, so most users need to download only this repository.
the smaller harrrshall/lumen repository is the 252 mb lora adapter. use that edition when you already store the exact qwen base or want to manage adapters yourself.
quick start
import torch
from transformers import AutoModelForImageTextToText, AutoProcessor
model_id = "harrrshall/lumen-merged"
processor = AutoProcessor.from_pretrained(model_id)
model = AutoModelForImageTextToText.from_pretrained(
model_id,
dtype=torch.bfloat16,
device_map="auto",
)
model.eval()
no peft adapter attachment and no separate base model download are required. the repository is approximately 9.1 gb before local filesystem overhead.
what Lumen does
Lumen generates small structured source patches for automatically verifiable accessibility defects in react and static html. its intended workflow rebuilds the application and validates the patch with browser, keyboard, semantic, visual, regression, and protected path gates.
frontier comparison
| system | tasks | saferepair | cost per safe repair |
|---|---|---|---|
| Lumen | 43 tasks | 42/43 (97.67%) | $0.000268 |
| gpt-5.6 sol | 43 tasks | 40/43 (93.02%) | $0.070857 |
| claude opus 4.8 | 43 tasks | 43/43 (100%) | $0.054012 |
provenance
- base model:
Qwen/Qwen3.5-4B - pinned base revision:
851bf6e806efd8d0a36b00ddf55e13ccb7b8cd0a - post training: qlora supervised fine tuning
- merged checkpoint dtype: bf16
- original adapter: harrrshall/lumen
training curve
limitations
Lumen covers deterministic source repair families supported by its evaluator. it does not establish complete wcag or legal conformance. review every patch before merging, and involve qualified accessibility practitioners and assistive technology users for subjective decisions.
- Downloads last month
- -
