Xunzhuo commited on
Commit
fc2d74b
·
verified ·
1 Parent(s): 093cffb

Card: official Jev Decision Index 0.3.2 results and serving performance

Browse files
.gitattributes CHANGED
@@ -37,3 +37,4 @@ assets/banner.png filter=lfs diff=lfs merge=lfs -text
37
  assets/index-areas.png filter=lfs diff=lfs merge=lfs -text
38
  assets/index-pareto.png filter=lfs diff=lfs merge=lfs -text
39
  tokenizer.json filter=lfs diff=lfs merge=lfs -text
 
 
37
  assets/index-areas.png filter=lfs diff=lfs merge=lfs -text
38
  assets/index-pareto.png filter=lfs diff=lfs merge=lfs -text
39
  tokenizer.json filter=lfs diff=lfs merge=lfs -text
40
+ assets/serving-throughput.png filter=lfs diff=lfs merge=lfs -text
MODEL_MANIFEST.json CHANGED
@@ -592,12 +592,13 @@
592
  "files_sha256": {
593
  "LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4",
594
  "NOTICE": "61f4ea488e1fed0c3fce97171506a23152c2591116442f78f15827fb9e6af469",
595
- "README.md": "f9a814de11d297c0080241e408f067b62f7d245792ad7e2099a31e4e5090797a",
596
  "assets/banner.png": "eb7ecc949232e1de544247899dd55ee629a36cfe276042d5795f65178b9c64c5",
597
  "assets/example-receipt.png": "b9dbb8b103bacd45f1de824d844a3c07b81d57cb1a7466712ef060ad7dcb3926",
598
  "assets/example-video.mp4": "f4968ef89d07e97f20df4fd8047510a7a8e9df5c2d07c35e363a97927f164ab9",
599
- "assets/index-areas.png": "602d4e76437b22dec2c5389b870349fc2ac9a68ee757ea67b0db10182962458d",
600
- "assets/index-pareto.png": "c907a692a854298baebdb11ff5010cf24fd8890ce123b29c9a8c6df6faf8b25d",
 
601
  "chat_template.jinja": "c3cf9e34abf4f9e36c2d72165aa9c132d3e2a725b6c2586aaa3a8af9d7a81041",
602
  "config.json": "7e16284fafd2d54b73c10073c0391bfd6804886ceaf2cbe37fdb62d4c6813dea",
603
  "d3_engine.py": "086238942762df45047a32cd9a8e2bedd9b63167eb40be260c776de567979f53",
@@ -633,12 +634,13 @@
633
  "files_bytes": {
634
  "LICENSE": 11357,
635
  "NOTICE": 100,
636
- "README.md": 10401,
637
  "assets/banner.png": 2233137,
638
  "assets/example-receipt.png": 65918,
639
  "assets/example-video.mp4": 26300,
640
- "assets/index-areas.png": 126851,
641
- "assets/index-pareto.png": 180468,
 
642
  "chat_template.jinja": 8952,
643
  "config.json": 3949,
644
  "d3_engine.py": 4413,
 
592
  "files_sha256": {
593
  "LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4",
594
  "NOTICE": "61f4ea488e1fed0c3fce97171506a23152c2591116442f78f15827fb9e6af469",
595
+ "README.md": "73fa509f65e93551aaf26fd062843ca2f50fa5167b95efacb6c31e85f1875685",
596
  "assets/banner.png": "eb7ecc949232e1de544247899dd55ee629a36cfe276042d5795f65178b9c64c5",
597
  "assets/example-receipt.png": "b9dbb8b103bacd45f1de824d844a3c07b81d57cb1a7466712ef060ad7dcb3926",
598
  "assets/example-video.mp4": "f4968ef89d07e97f20df4fd8047510a7a8e9df5c2d07c35e363a97927f164ab9",
599
+ "assets/index-areas.png": "7e3421ab0890be77b4212ffc5ba36d65ea0be725c0eb2315d54db61cccbc3273",
600
+ "assets/index-pareto.png": "22827a6293301dd024791678d6cd7d6d3d6d9352bd9422b591c443e9d08afacb",
601
+ "assets/serving-throughput.png": "c6f001dc732b62fd8aca49b496376a3dfa585295dcbbb9f63c93887542a1fd34",
602
  "chat_template.jinja": "c3cf9e34abf4f9e36c2d72165aa9c132d3e2a725b6c2586aaa3a8af9d7a81041",
603
  "config.json": "7e16284fafd2d54b73c10073c0391bfd6804886ceaf2cbe37fdb62d4c6813dea",
604
  "d3_engine.py": "086238942762df45047a32cd9a8e2bedd9b63167eb40be260c776de567979f53",
 
634
  "files_bytes": {
635
  "LICENSE": 11357,
636
  "NOTICE": 100,
637
+ "README.md": 16492,
638
  "assets/banner.png": 2233137,
639
  "assets/example-receipt.png": 65918,
640
  "assets/example-video.mp4": 26300,
641
+ "assets/index-areas.png": 128871,
642
+ "assets/index-pareto.png": 207822,
643
+ "assets/serving-throughput.png": 193419,
644
  "chat_template.jinja": 8952,
645
  "config.json": 3949,
646
  "d3_engine.py": 4413,
README.md CHANGED
@@ -29,11 +29,12 @@ tags:
29
 
30
  ## Highlights
31
 
32
- - **Jev Decision Index 0.3, public suite: 65.45**, measured with the official 0.3 kit on the released weights: all 140,178 public requests answered, none unsupported.
33
- - **+8.5 on the public suite over Decision 2.0** (its 27B model: 56.97 on the board), ahead in all five areas.
34
  - **Reads images:** multiple images per request (PNG, JPEG or WebP), given as paths, URLs, PIL images or base64 data URLs; every question of the request sees all of them.
35
  - **Reads videos:** multiple videos per request (MP4, WebM, MOV or MKV), given as paths, URLs, base64 data URLs or frame arrays, read at 2 frames per second; **Perception Test (multiple-choice video QA): 77.4** (internal evaluation).
36
- - **Speed:** text requests take a median of 55 ms, requests with an image a median of 273 ms, and requests with a 10-second video a median of 553 ms, on one AMD Instinct MI325X, one request at a time.
 
37
  - **Many questions, one call:** Choice, Yes / No and Score questions about the same input are answered together, each from its own forward pass over the input, with a probability for every option.
38
 
39
  ## Quickstart
@@ -199,32 +200,83 @@ EOF
199
 
200
  `vllm-sr stop` stops it. See [Router and Engine modes](https://github.com/vllm-project/semantic-router/blob/main/src/vllm-sr/INSTANCE_MODES.md#ask-about-images-and-videos) for limits and options.
201
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
202
  ## Evaluation
203
 
204
- ### Text: Jev Decision Index 0.3.1
205
 
206
  | Model | Jev Decision Index ↑ | Public ↑ | Same-skill tests ↑ | New-domain tasks ↑ |
207
  | --- | ---: | ---: | ---: | ---: |
208
- | **d3** | **64.7** | **65.5** | **62.8** | **56.6** |
 
209
  | Perplexity Decider v1.1 (27B) | 62.8 | 62.3 | 61.1 | 55.6 |
210
- | Fastino GLiDE no-thinking (28B) | 60.2 | 59.1 | 59.5 | 52.9 |
211
- | Jev | 60.1 | 58.0 | 58.0 | 55.0 |
212
- | Torchcast Decision 27B | 59.9 | 65.1 | 58.1 | 50.8 |
213
  | Decision 2.0 (27B) | 55.9 | 57.0 | 55.7 | 47.9 |
214
 
 
 
215
  ![Jev Decision Index against model size](assets/index-pareto.png)
216
 
217
  ![Jev Decision Index by area: d3 and Decision 2.0 (27B)](assets/index-areas.png)
218
 
219
- ### Images: Jev Decision Index vision board 0.3.1
220
 
221
  | Model | Vision Index ↑ | Public ↑ | Private ↑ |
222
  | --- | ---: | ---: | ---: |
223
- | **d3** | **71.6** | **74.2** | **68.9** |
224
  | Perplexity Decider v1.1 (27B) | 70.6 | 73.2 | 67.9 |
225
  | JEV-27B-VL | 69.6 | 72.8 | 66.4 |
226
  | Solomon v1.1 (27B) | 66.8 | 69.9 | 63.8 |
227
 
 
 
228
  d3 on the public vision benchmarks († approximate rebuild):
229
 
230
  | Benchmark | d3 |
@@ -253,7 +305,7 @@ d3 on the public vision benchmarks († approximate rebuild):
253
 
254
  Multiple-choice video question answering (three options per question, chance 33.3): top-1 accuracy (%), videos read with the defaults above.
255
 
256
- <sub>d3: internal evaluation. Others: live board data, text 2026-10-10, vision 2026-10-09.</sub>
257
 
258
  ## License
259
 
 
29
 
30
  ## Highlights
31
 
32
+ - **Jev Decision Index 0.3.2: 66.3, first on the official text board** and on its Pareto frontier; public suite 65.45, measured with the official 0.3 kit on the released weights: all 140,178 public requests answered, none unsupported.
33
+ - **+10.4 over Decision 2.0** (its 27B model: 55.9 on the official board): +8.5 on the public suite, ahead in all five of its areas, and +7.1 and +12.6 on the private same-skill tests and new-domain tasks.
34
  - **Reads images:** multiple images per request (PNG, JPEG or WebP), given as paths, URLs, PIL images or base64 data URLs; every question of the request sees all of them.
35
  - **Reads videos:** multiple videos per request (MP4, WebM, MOV or MKV), given as paths, URLs, base64 data URLs or frame arrays, read at 2 frames per second; **Perception Test (multiple-choice video QA): 77.4** (internal evaluation).
36
+ - **Speed:** text requests take a median of 54.4 ms, requests with an image a median of 290 ms, and requests with a 10-second video a median of 500 ms, on one AMD Instinct MI325X, one request at a time with AutoModel.
37
+ - **Serving:** 27 requests/s with p99 under 1 s on one AMD Instinct MI325X with vLLM Semantic Router, 1.5× AutoModel (one-question text, `batching` profile); the default `exact` profile gives AutoModel's answers byte for byte when both use the same kernel settings ([Serving performance](#serving-performance)).
38
  - **Many questions, one call:** Choice, Yes / No and Score questions about the same input are answered together, each from its own forward pass over the input, with a probability for every option.
39
 
40
  ## Quickstart
 
200
 
201
  `vllm-sr stop` stops it. See [Router and Engine modes](https://github.com/vllm-project/semantic-router/blob/main/src/vllm-sr/INSTANCE_MODES.md#ask-about-images-and-videos) for limits and options.
202
 
203
+ ### Serving performance
204
+
205
+ **On one AMD Instinct MI325X, vLLM Semantic Router serves d3 at 27 requests/s with p99 under 1 s, 1.5× AutoModel** (one-question text, `batching` profile), and its default `exact` profile gives AutoModel's answers byte for byte when both use the same kernel settings.
206
+
207
+ ![Serving throughput of d3 on one AMD Instinct MI325X: AutoModel, the package server and vLLM Semantic Router Engine mode](assets/serving-throughput.png)
208
+
209
+ AutoModel runs in your own process, one call at a time (the Quickstart code); the package server is its `python d3_server.py`; Engine mode is `vllm-sr serve -e` with its default `exact` profile, or with `--runtime-profile batching`.
210
+
211
+ Where Engine mode helps, and what it costs:
212
+
213
+ - **Throughput:** 1.5× AutoModel's requests per second on one-question text, 1.3× on 8-question images and 1.8× on 10-second videos, with the better Engine profile of each row (8-question images: highest rates, since no side keeps p99 under 1 s there).
214
+ - **Start-up:** the first answer comes 19.4 s after launch (20.4 s with `batching`) with empty kernel caches, against 38.4 s for AutoModel, whose first image then takes another 6.20 s, and 80.8 s for the package server.
215
+ - **Many questions and long inputs:** one request at a time, Engine mode (`exact`) answers 16 text questions in 548 ms (AutoModel: 572 ms), 8 questions about one image in 1.87 s (1.95 s) and a 32k-token text in 4.21 s (4.23 s); `batching` runs the 8 image questions together in 1.56 s, 20 % less than AutoModel.
216
+ - **GPU memory:** 65.4 GiB per replica at peak with `exact`, about the same as the package server's 65.2 GiB, and 62.1 GiB with `batching`; AutoModel, serving one request at a time, peaked at 61.8 GiB. Engine mode keeps up to 2 GiB of image features cached.
217
+ - **Answers:** Engine mode (`exact`) returned answers byte-identical to AutoModel's on all 7 request types (text with 1, 4 or 16 questions, an image with 1 or 8, the video and a 32k-token text) when AutoModel used the same kernel settings: 135 Engine replies and 21 AutoModel calls compared. With the kernel autotuning AutoModel runs in each new process, 5 of the 7 were byte-identical and no decision changed (largest probability difference 0.005). `batching` changed 0.048 % of decisions on a 4,000-request sample of the public suite (14 of 29,339 questions, near-ties), with gold accuracy 92.109 → 92.126 %.
218
+
219
+ A single short request is fastest in your own process: AutoModel answers one text question 0.9 ms sooner than Engine mode and one new image 22 ms sooner, the cost of going through the router to the model worker and its media path. Engine mode's gains come from serving many requests at once.
220
+
221
+ <details>
222
+ <summary>Single-request latency and the numbers behind the chart</summary>
223
+
224
+ One request at a time, warm (p50 / p90, ms):
225
+
226
+ | Request | AutoModel | Package server | Engine, `exact` | Engine, `batching` |
227
+ | --- | ---: | ---: | ---: | ---: |
228
+ | Text, 1 question | 54.4 / 54.6 | 55.0 / 55.3 | 55.3 / 55.6 | 57.2 / 57.9 |
229
+ | Text, 16 questions | 572 / 574 | 571 / 572 | 548 / 549 | 548 / 549 |
230
+ | Image (1.6 MP), 1 question | 290 / 292 | 295 / 297 | 312 / 314 | 315 / 316 |
231
+ | Image (1.6 MP), 8 questions | 1.95 s / 1.95 s | 1.95 s / 1.97 s | 1.87 s / 1.88 s | 1.56 s / 1.57 s |
232
+ | Video (10 s, 1080p), 1 question | 500 / 518 | 509 / 523 | 551 / 579 | 533 / 548 |
233
+ | 32k-token text, 1 question | 4.23 s / 4.24 s | 4.30 s / 4.30 s | 4.21 s / 4.23 s | 4.22 s / 4.23 s |
234
+
235
+ Requests per second on one GPU, closed loop with up to 64 clients (p99 under 1 s, except *):
236
+
237
+ | | AutoModel † | Package server | Engine, `exact` | Engine, `batching` |
238
+ | --- | ---: | ---: | ---: | ---: |
239
+ | Text, 1 question | 18.4 | 17.7 | 18.1 | 27 |
240
+ | Image (1.6 MP), 8 questions | 0.51 * | 0.53 * | 0.53 * | 0.67 * |
241
+ | Video (10 s, 1080p), 1 question | 2.0 | 2.8 | 3.7 | 3.7 |
242
+ | Text, 1 question, saturation | 18.4 | 17.7 | 18.1 | 29 |
243
+
244
+ † Back-to-back calls in one process (1,000 / mean latency). * p99 over 1 s at every load; the highest rate is shown.
245
+
246
+ </details>
247
+
248
+ <sub>Measured on 2026-10-13, one AMD Instinct MI325X per replica and each side alone on the GPU: ROCm 7.2 with PyTorch 2.12; AutoModel and the package server with Transformers 5.17.0; vLLM Semantic Router Engine mode built from source, with serving optimizations that are newer than its published images. Requests: a support ticket of about 330 tokens with 1, 4 or 16 questions; a 1,456 × 1,092 PNG (1.6 MP) with 1 or 8 questions; a 10-second 1080p MP4, read at 2 frames per second; a 32k-token text; every image and video request carries new bytes. One request at a time: 3 warm-up calls, then up to 20 timed calls. Under load: 1, 2, 4, … 64 closed-loop clients, each level warmed up and then counted for 15 to 60 s; Engine mode admits 32 requests in flight per worker and answers the rest at once with 503. Start-up: model files on local disk; Engine mode from the start of its router process, without the CLI's image pull.</sub>
249
+
250
  ## Evaluation
251
 
252
+ ### Text: Jev Decision Index 0.3.2
253
 
254
  | Model | Jev Decision Index ↑ | Public ↑ | Same-skill tests ↑ | New-domain tasks ↑ |
255
  | --- | ---: | ---: | ---: | ---: |
256
+ | **d3** | **66.3** | **65.5** | **62.8** | **60.5** |
257
+ | Decider 31B | 64.6 | 64.3 | 61.8 | 58.3 |
258
  | Perplexity Decider v1.1 (27B) | 62.8 | 62.3 | 61.1 | 55.6 |
259
+ | Darwin-27B-ZTC | 62.5 | 62.6 | 58.7 | 57.7 |
260
+ | AnyJev L0 · Gemma-4-31B | 60.2 | 59.8 | 59.1 | 53.0 |
 
261
  | Decision 2.0 (27B) | 55.9 | 57.0 | 55.7 | 47.9 |
262
 
263
+ d3 ranks first of the 149 entries on the official text board and is on its Pareto frontier: no entry with as many parameters or fewer scores higher. Five of the six Decision 3.0 models are on that frontier; d3-edge, second among the entries of its size, is not.
264
+
265
  ![Jev Decision Index against model size](assets/index-pareto.png)
266
 
267
  ![Jev Decision Index by area: d3 and Decision 2.0 (27B)](assets/index-areas.png)
268
 
269
+ ### Images: Jev Decision Index vision board 0.3.2
270
 
271
  | Model | Vision Index ↑ | Public ↑ | Private ↑ |
272
  | --- | ---: | ---: | ---: |
273
+ | **d3** | **71.3** | **74.1** | **68.5** |
274
  | Perplexity Decider v1.1 (27B) | 70.6 | 73.2 | 67.9 |
275
  | JEV-27B-VL | 69.6 | 72.8 | 66.4 |
276
  | Solomon v1.1 (27B) | 66.8 | 69.9 | 63.8 |
277
 
278
+ On the official vision board, the six Decision 3.0 models form the whole Pareto frontier: no other entry is on it. d3 ranks first of the 33 entries.
279
+
280
  d3 on the public vision benchmarks († approximate rebuild):
281
 
282
  | Benchmark | d3 |
 
305
 
306
  Multiple-choice video question answering (three options per question, chance 33.3): top-1 accuracy (%), videos read with the defaults above.
307
 
308
+ <sub>Jev Decision Index: official leaderboard, text and vision boards 0.3.2, 2026-10-12; the boards evaluated v3.1.0, which has the same weights as this version. Size bands and the Pareto frontier use the parameter counts listed by the boards. d3 on the public vision benchmarks and the Perception Test: internal evaluation.</sub>
309
 
310
  ## License
311
 
assets/index-areas.png CHANGED

Git LFS Details

  • SHA256: 602d4e76437b22dec2c5389b870349fc2ac9a68ee757ea67b0db10182962458d
  • Pointer size: 131 Bytes
  • Size of remote file: 127 kB

Git LFS Details

  • SHA256: 7e3421ab0890be77b4212ffc5ba36d65ea0be725c0eb2315d54db61cccbc3273
  • Pointer size: 131 Bytes
  • Size of remote file: 129 kB
assets/index-pareto.png CHANGED

Git LFS Details

  • SHA256: c907a692a854298baebdb11ff5010cf24fd8890ce123b29c9a8c6df6faf8b25d
  • Pointer size: 131 Bytes
  • Size of remote file: 180 kB

Git LFS Details

  • SHA256: 22827a6293301dd024791678d6cd7d6d3d6d9352bd9422b591c443e9d08afacb
  • Pointer size: 131 Bytes
  • Size of remote file: 208 kB
assets/serving-throughput.png ADDED

Git LFS Details

  • SHA256: c6f001dc732b62fd8aca49b496376a3dfa585295dcbbb9f63c93887542a1fd34
  • Pointer size: 131 Bytes
  • Size of remote file: 193 kB