Instructions to use pianzhikuang/VisAlloc_New with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use pianzhikuang/VisAlloc_New with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("image-text-to-text", model="pianzhikuang/VisAlloc_New") 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)# pip install -U transformers accelerate # Load model directly from transformers import AutoProcessor, AutoModelForMultimodalLM processor = AutoProcessor.from_pretrained("pianzhikuang/VisAlloc_New") model = AutoModelForMultimodalLM.from_pretrained("pianzhikuang/VisAlloc_New", 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=256) print(processor.decode(outputs[0][inputs["input_ids"].shape[-1]:])) - Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- vLLM
How to use pianzhikuang/VisAlloc_New with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "pianzhikuang/VisAlloc_New" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "pianzhikuang/VisAlloc_New", "messages": [ { "role": "user", "content": [ { "type": "text", "text": "Describe this image in one sentence." }, { "type": "image_url", "image_url": { "url": "https://cdn.britannica.com/61/93061-050-99147DCE/Statue-of-Liberty-Island-New-York-Bay.jpg" } } ] } ] }'Use Docker
docker model run hf.co/pianzhikuang/VisAlloc_New
- SGLang
How to use pianzhikuang/VisAlloc_New 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 "pianzhikuang/VisAlloc_New" \ --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": "pianzhikuang/VisAlloc_New", "messages": [ { "role": "user", "content": [ { "type": "text", "text": "Describe this image in one sentence." }, { "type": "image_url", "image_url": { "url": "https://cdn.britannica.com/61/93061-050-99147DCE/Statue-of-Liberty-Island-New-York-Bay.jpg" } } ] } ] }'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 "pianzhikuang/VisAlloc_New" \ --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": "pianzhikuang/VisAlloc_New", "messages": [ { "role": "user", "content": [ { "type": "text", "text": "Describe this image in one sentence." }, { "type": "image_url", "image_url": { "url": "https://cdn.britannica.com/61/93061-050-99147DCE/Statue-of-Liberty-Island-New-York-Bay.jpg" } } ] } ] }' - Docker Model Runner
How to use pianzhikuang/VisAlloc_New with Docker Model Runner:
docker model run hf.co/pianzhikuang/VisAlloc_New
VisAlloc_New — Qwen3.5-9B
This release contains the completed step 65 checkpoint from the
visalloc-qwen35-9b-2x8 experiment, trained with the
VisAlloc codebase on
Qwen/Qwen3.5-9B.
The 16-rank FSDP actor checkpoint was merged into a complete Hugging Face model:
9,409,813,744 parameters in BF16, with tokenizer, image processor,
generation configuration, and the perception chat template used for evaluation.
The base-model revision is c202236235762e1c871ad0ccb60c8ee5ba337b9a.
The experiment used 2 nodes with 8 GPUs each, a global prompt batch of 96,
8 rollouts per prompt, learning rate 2e-6, and one epoch on 6,241 samples.
Training completed all 65 steps and saved the final checkpoint before a
vLLM engine-exit message appeared during shutdown.
Usage
The evaluation environment used Transformers 5.5.0, PyTorch 2.10.0, and vLLM 0.18.0. Keep the supplied processor and perception chat template.
import torch
from PIL import Image
from transformers import AutoProcessor, Qwen3_5ForConditionalGeneration
model_id = "pianzhikuang/VisAlloc_New"
processor = AutoProcessor.from_pretrained(model_id)
model = Qwen3_5ForConditionalGeneration.from_pretrained(
model_id, dtype=torch.bfloat16, device_map="auto"
).eval()
image = Image.open("image.jpg").convert("RGB")
messages = [{"role": "user", "content": [
{"type": "image", "image": image},
{"type": "text", "text": "Describe this image."},
]}]
inputs = processor.apply_chat_template(
messages, tokenize=True, add_generation_prompt=True,
return_dict=True, return_tensors="pt",
).to(model.device)
with torch.inference_mode():
output = model.generate(**inputs, max_new_tokens=256, do_sample=False)
print(processor.decode(
output[0, inputs["input_ids"].shape[1]:], skip_special_tokens=True
))
Evaluation
The following results were measured on this checkpoint on October 11, 2026.
Inference followed the repository README: full benchmark inputs, BF16,
greedy decoding (temperature=0), seed 42, up to 32,768 generated tokens,
and the model's native 262,144-token context. The supplied perception
template was used without an enable_thinking override.
Judging used exact matching for unambiguous answers and GPT-6 Astra for
semantic equivalence decisions. This judge differs from the README's
gpt-oss-120b example, so comparisons should account for that protocol difference.
All 16,074 predictions completed, with no API-error records, empty answers,
or generated </think> tags.
| Benchmark | Metric | Score (%) | Samples |
|---|---|---|---|
| V* Bench | Accuracy | 86.91 | 191 |
| ZoomBench | Reference-match rate* | 63.55 | 845 |
| HR-Bench 4K | Accuracy | 85.50 | 800 |
| HR-Bench 8K | Accuracy | 83.38 | 800 |
| MMVP | Per-question accuracy | 81.67 | 300 |
| CV-Bench | Mean of 2D and 3D accuracy | 85.82 | 2,638 |
| MMStar | Accuracy | 76.40 | 1,500 |
| POPE | Accuracy | 89.68 | 9,000 |
*ZoomBench contains one invalid reference: a question supplies only A/B choices but its reference label is D. That record remains unscorable. The table retains the repository's full 845-row denominator, giving 537/845 = 63.55% reference matches; accuracy on the 844 valid-reference samples is 537/844 = 63.63%. This annotation problem is recorded in the results and should not be interpreted as a confirmed model error.
See results.json, results.csv, and the evaluation manifest for exact counts, additional metrics, generation settings, and integrity hashes.
Release integrity
model.safetensors is the exact merged weight file used in this evaluation:
041a210644ce7f5d047cbefdbd8a087c2206fc9b799192f5ee6d397ea974d3f9
The perception template SHA-256 is:
d9604b52b4e1f4b9ec68e065238c757a3d7efdebe1c3692d13a97df6f84c54db
The published top-level configuration explicitly declares bfloat16 to
match the saved weights. Weights and chat template are unchanged from evaluation.
The base model's Apache-2.0 license is included in LICENSE. Training images and benchmark images are separate resources and are not part of this model release.
- Downloads last month
- 15