How to use from
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 "Fatha/vev-9b-v2" \
    --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": "Fatha/vev-9b-v2",
		"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 "Fatha/vev-9b-v2" \
        --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": "Fatha/vev-9b-v2",
		"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"
						}
					}
				]
			}
		]
	}'
Quick Links

vev-9b-v2

Small, calibrated vision decision model. Given one image, it answers yes/no or multiple-choice questions and returns calibrated probabilities over the options. Built mainly for evaluating GenAI-generated images (prompt match, artifacts, rendered text, etc.).

  • Code, serving, CLI, benchmark: https://github.com/Fathaah/vev
  • Base model: Qwen/Qwen3.5-9B-Base, rank-32 LoRA, merged into the weights
  • Training: 846 steps, 59,378 rows, public human-labeled single-image datasets (no rating or aesthetic data)
  • Calibration: one temperature (T = 1.163) fitted on a held-out split of 1,999 examples and stored in vev_config.json
Held-out calibration split Accuracy ECE
after temperature scaling 0.906 0.0159

Usage

This repo is the merged checkpoint. Serving, the question/answer API, and vev eval-dir are in the GitHub repo; see its README for how to point vev.serve --run at a model directory.

Licensing

The code is Apache-2.0, but the weights were trained on datasets with their own terms, some research-only. Those restrictions carry over to the weights. See DATA_LICENSES.md before any commercial use.

Downloads last month
37
Safetensors
Model size
9B params
Tensor type
BF16
ยท
Inference Providers NEW
This model isn't deployed by any Inference Provider. ๐Ÿ™‹ Ask for provider support

Model tree for Fatha/vev-9b-v2

Finetuned
(641)
this model
Quantizations
1 model