wps-decision-1

wps-decision-1 is a fine-tuned decision model based on vllm-sr/d3-flash. Given a shared state and named questions, it returns probabilities for classification, binary judgments and ordered ratings without generating text. Inputs may include text, JSON, images and videos.

The architecture and inference interface are unchanged from d3-flash. The score validator is extended from 2–10 to 2–255 ordered levels; this uses the existing answer-code readout.

Model specifications

Property Value
Architecture d3-flash: Qwen3.5-9B multimodal backbone + 255-code decision readout
Parameters 8.394B, including the 0.456B vision encoder
Precision BF16 backbone; FP32 decision readout and softmax
Backbone context configuration 262,144 positions
choice 1–255 candidates
score 2–255 ordered levels
noul Binary judgment
Inputs Text / JSON, images and videos
License Apache-2.0

Full-attention layers attend bidirectionally over the input; Gated DeltaNet layers retain their causal scan. Each question has its own forward pass, with questions batched by the runtime. Keep readout.safetensors, the tokenizer, chat template and decision_config.json with the backbone weights. Loading the plain backbone alone does not implement decisions.

The context configuration is a position ceiling, not a guarantee that every input length fits GPU memory. The supplied decision configuration has no additional input-length cap (max_length: null); inputs are not silently truncated. Long inputs require additional memory.

Installation

Validated deployment hardware: one NVIDIA RTX 5090, Linux x86-64, with a CUDA 13.0-compatible driver. Key versions from the remote serving environment:

Package Version
vLLM 0.32.1rc1.dev117+gdf3bd094a
PyTorch 2.14.0+cu130
Transformers 5.17.0
Triton 3.8.0
FlashInfer Python 0.7.2
CUDA toolkit package 13.0.3.0
pip install --pre -r requirements.txt

requirements.txt uses the fixed upstream vLLM nightly wheel at commit df3bd094aeea829f27baa0a5282830464f601d9f and the recorded key package versions.

Transformers inference

From the complete downloaded model directory:

from transformers import AutoModel

model = AutoModel.from_pretrained(
    ".", trust_remote_code=True, device_map="cuda:0"
)
result = model.system_one(
    state="The customer received a damaged item and asks for a replacement.",
    questions={
        "team": {
            "type": "choice",
            "instructions": "Which team should handle this request?",
            "criteria": {
                "returns": "Damaged goods and replacements",
                "billing": "Payments and charges",
                "technical": "Setup and troubleshooting"
            }
        },
        "replacement": {
            "type": "noul",
            "instructions": "Does the customer request a replacement?"
        },
        "urgency": {
            "type": "score",
            "instructions": "How urgent is the request?",
            "criteria": ["Routine", "Soon", "Immediate"]
        }
    }
)
print(result["answers"])

Or run a saved request:

python inference.py --model . --request examples/request.json --device cuda:0

For an example above the upstream 10-level limit, use --request examples/score_11.json.

Use images=["document.png"] or videos=["clip.mp4"] with model.system_one(...) to include media. The official runtime accepts local paths, HTTP(S) URLs and base64 data URLs; images may also be PIL objects, and videos may be frame arrays. Every question sees the same media. Images are processed at up to 1.6 MP each. Videos are sampled at 2 FPS, with at most 32 frames and up to 0.2 MP per frame. See the upstream usage guide for more examples.

vLLM deployment

CUDA_VISIBLE_DEVICES=0 vllm serve Kingsoft-Office/wps-decision-1 \
  --served-model-name wps-decision-1 \
  --host 0.0.0.0 --port 8000 \
  --dtype bfloat16 --max-model-len 32768 \
  --max-num-seqs 64 --max-num-queued-reqs 512 \
  --gpu-memory-utilization 0.9

The service exposes /v1/systemone, /health and /v1/models.

curl -fsS http://127.0.0.1:8000/health
curl -fsS http://127.0.0.1:8000/v1/systemone \
  -H 'Content-Type: application/json' --data-binary @examples/request.json

For media requests, provide images or videos as arrays of base64 data URLs or URLs supported by vLLM's media loader. The Transformers API additionally accepts local paths. The bundled Transformers runtime supports 2–255 score levels; the unmodified vLLM API in this build accepts 2–10 levels.

Request and response format

A request contains state and a nonempty questions map. Each question includes type, instructions and, where applicable, criteria:

Type criteria Answer
choice Map of candidate names to descriptions or null choice, probabilities
noul Omitted, or optional false / true descriptions noul = P(true)
score Distinct nonempty descriptions, ordered low to high Expected zero-based score, legend, probabilities

Responses contain model, answers and usage. Choice and score answers include probabilities and confidence (one minus normalized Shannon entropy, as in d3-flash). Noul answers provide P(true) as noul; P(false) is its complement. Choice and score probabilities sum to one over the available options. For score questions, {"0": 0.2, "1": 0.5, "2": 0.3} gives an expected score of 1.1.

Evaluate a dataset

Use any System One-compatible benchmark client, or the included resumable JSONL client:

python client.py --input examples/requests.jsonl --output /tmp/predictions.jsonl \
  --url http://127.0.0.1:8000/v1/systemone --model wps-decision-1 --concurrency 1

Each row contains state and questions, with an optional unique id. Gold labels stay local. Optional images and videos fields are forwarded to the server. Use your benchmark's own scorer on the returned answers. vLLM schedules concurrent requests.

d3_engine.py is also included for the upstream Decision Index engine interface; its benchmark toolkit is installed separately. File hashes are listed in MODEL_MANIFEST.json and SHA256SUMS. See LICENSE and NOTICE for upstream attribution.

Downloads last month
28
Safetensors
Model size
8B params
Tensor type
BF16
·
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for Kingsoft-Office/wps-decision-1

Finetuned
Qwen/Qwen3.5-9B
Finetuned
vllm-sr/d3-flash
Finetuned
(10)
this model