Mistral AI3B paramsBF16Dense

Ministral-3 3B

Mesuré le 2026-08-09 avec vLLM v0.26.0. Dans le test de chat avec dix requêtes simultanées, ce profil atteint 42,31 tokens/s par utilisateur, avec en moyenne 0,86 secondes jusqu'au premier token. À 25k de contexte, cette attente moyenne monte à 15,14 secondes. Ces runs mesurent la vitesse et l'attente, pas la qualité des réponses.

Score d’adéquation (indicatif)
Throughput tok/s
8 GB
VRAM
0/11
Benches fiables
Hugging Face →·vLLM v0.26.0·DGX Spark, NVIDIA GB10, 128 GB unified memory·Mesuré avec un contexte de 128K·Dernière mesure 9 août 2026

Connaissances : MMLU-Pro ; raisonnement : GPQA-Diamond ; code : LiveCodeBench v6. Chaque chiffre indique son test exact. Les autres tests et les mesures absentes ne permettent pas de score total. Ces chiffres externes ne sont pas notre propre évaluation de cette précision. Source : fiche modèle du fournisseur ↗

3/3
Couverture
70,7
MMLU
53,4
GPQA-Diamond
54,8
LiveCodeBench

Decode throughput · total t/s · c=10

■ BF16
1k ctx BF16
8k ctx BF16
4k+turn BF16
25k ctx BF16

6 tests closed-loop avec llama-benchy et 5 tests open-loop avec vllm bench serve. Seules les exécutions complètes sans échec des contrôles de cohérence sont retenues ; les tests open-loop exigent au moins 99 % de requêtes réussies. Les résultats bruts restent visibles. Déplie « view command » pour la commande reconstruite. Méthodologie →

01 · llama-benchyclosed-loop

Chat

Invite courte, réponse longue. La forme qui doit ressembler à une conversation normale ; le TTFT décide si cela paraît réactif.

pp (prompt)
1024
tg (gen)
1024
depth
0
concurrency
1 · 5 · 10
repeats
3
Tokens/sec · par utilisateur
42,3t/s
TTFT · mean
864ms
Échec du contrôle de cohérence
3 repeats · mean ± stddevview command →hide command ↑
uvx llama-benchy==0.4.0 \
  --base-url http://localhost:8000/v1 \
  --model ministral-3-3b-instruct-bf16 \
  --pp 1024 \
  --tg 1024 \
  --depth 0 \
  --concurrency 1 5 10 \
  --runs 3 \
  --latency-mode generation \
  --format md
02 · llama-benchyclosed-loop

RAG · contexte 8k

Contexte moyen, quelques fragments de documents avec une réponse de longueur normale. Montre le coût du préremplissage sans heurter le mur.

pp (prompt)
8192
tg (gen)
512
depth
0
concurrency
5 · 10 · 20
repeats
3
Tokens/sec · par utilisateur
17,5t/s
TTFT · mean
3,4s
Échec du contrôle de cohérence
3 repeats · mean ± stddevview command →hide command ↑
uvx llama-benchy==0.4.0 \
  --base-url http://localhost:8000/v1 \
  --model ministral-3-3b-instruct-bf16 \
  --pp 8192 \
  --tg 512 \
  --depth 0 \
  --concurrency 5 10 20 \
  --runs 3 \
  --latency-mode generation \
  --format md
03 · llama-benchyclosed-loop

Sortie longue et agents

Instruction courte, beaucoup de sortie. Génération de code, rapports ou sorties structurées d'agents. Test de résistance du débit de décodage.

pp (prompt)
256
tg (gen)
4096
depth
0
concurrency
1 · 5 · 10
repeats
3
Tokens/sec · par utilisateur
50,2t/s
TTFT · mean
461ms
Échec du contrôle de cohérence
3 repeats · mean ± stddevview command →hide command ↑
uvx llama-benchy==0.4.0 \
  --base-url http://localhost:8000/v1 \
  --model ministral-3-3b-instruct-bf16 \
  --pp 256 \
  --tg 4096 \
  --depth 0 \
  --concurrency 1 5 10 \
  --runs 3 \
  --latency-mode generation \
  --format md
04 · llama-benchyclosed-loop

Travail de bureau multi-tours

Cinq tours par conversation, dix conversations en parallèle. Proche de l'usage réel d'une équipe, avec un contexte qui grandit à chaque tour.

pp (prompt)
2048
tg (gen)
512
depth
4
concurrency
1 · 5 · 10
repeats
3
Tokens/sec · par utilisateur
35t/s
TTFT · mean
1,21s
Échec du contrôle de cohérence
3 repeats · mean ± stddevview command →hide command ↑
uvx llama-benchy==0.4.0 \
  --base-url http://localhost:8000/v1 \
  --model ministral-3-3b-instruct-bf16 \
  --pp 2048 \
  --tg 512 \
  --depth 4 \
  --concurrency 1 5 10 \
  --runs 3 \
  --latency-mode generation \
  --format md
05 · llama-benchyclosed-loop

Grand contexte · 25k

Test de résistance avec de grandes invites. Pas forcément du matériel de chat, mais exactement là où le mur du préremplissage apparaît et où le TTFT s'effondre.

pp (prompt)
4096 · 8192 · 16384 · 25000
tg (gen)
256
depth
0
concurrency
1 · 5 · 10
repeats
3
Tokens/sec · par utilisateur
6,3t/s
TTFT · mean
15,14s
Échec du contrôle de cohérence
3 repeats · mean ± stddevview command →hide command ↑
uvx llama-benchy==0.4.0 \
  --base-url http://localhost:8000/v1 \
  --model ministral-3-3b-instruct-bf16 \
  --pp 4096 8192 16384 25000 \
  --tg 256 \
  --depth 0 \
  --concurrency 1 5 10 \
  --runs 3 \
  --latency-mode generation \
  --format md
06 · llama-benchyclosed-loop

Concurrence sous pression

Contexte de 25k avec vingt requêtes simultanées. Cinq et dix sont déjà couverts par le test 05 ; vingt montre où l'ordonnanceur abandonne.

pp (prompt)
25000
tg (gen)
256
depth
0
concurrency
20
repeats
3
Tokens/sec · par utilisateur
3,2t/s
TTFT · mean
31,19s
Échec du contrôle de cohérence
3 repeats · mean ± stddevview command →hide command ↑
uvx llama-benchy==0.4.0 \
  --base-url http://localhost:8000/v1 \
  --model ministral-3-3b-instruct-bf16 \
  --pp 25000 \
  --tg 256 \
  --depth 0 \
  --concurrency 20 \
  --runs 3 \
  --latency-mode generation \
  --format md
07 · vllm bench serveopen-loop

Référence de bureau réaliste

Jeu de données aléatoire, 4000 tokens en entrée et 500 en sortie, taux d'arrivée 0,3 avec une irrégularité de 0,7. Un bureau tranquille.

dataset
random
input / output
4000 / 500
rate (req/s)
0.3
prompts
200
burstiness
0.7
Tokens/sec · par utilisateur
95,1t/s
TTFT · p50
660ms
Request success 100% · Échec du contrôle de cohérence
200 prompts · seed 42view command →hide command ↑
docker exec vllm-bench vllm bench serve \
  --backend openai-chat \
  --base-url http://localhost:8000 \
  --endpoint /v1/chat/completions \
  --model mistralai/Ministral-3-3B-Instruct-2512 \
  --tokenizer mistralai/Ministral-3-3B-Instruct-2512 \
  --served-model-name ministral-3-3b-instruct-bf16 \
  --dataset-name random \
  --random-input-len 4000 \
  --random-output-len 500 \
  --random-range-ratio 0.9 \
  --num-prompts 200 \
  --request-rate 0.3 \
  --burstiness 0.7 \
  --percentile-metrics ttft,tpot,itl,e2el \
  --metric-percentiles 50,90,95,99 \
  --seed 42 \
  --save-result \
  --result-dir /tmp \
  --result-filename 07-office-baseline.json
08 · vllm bench serveopen-loop

Vraies conversations · ShareGPT

ShareGPT V3, en moyenne 228 tokens par tour, variant naturellement selon la conversation. Ce que font les vrais utilisateurs, pas une distribution synthétique.

dataset
sharegpt
rate (req/s)
0.3
prompts
250
burstiness
0.7
Tokens/sec · par utilisateur
18,1t/s
TTFT · p50
69ms
Request success 100% · Échec du contrôle de cohérence
250 prompts · seed 42view command →hide command ↑
docker exec vllm-bench vllm bench serve \
  --backend openai-chat \
  --base-url http://localhost:8000 \
  --endpoint /v1/chat/completions \
  --model mistralai/Ministral-3-3B-Instruct-2512 \
  --tokenizer mistralai/Ministral-3-3B-Instruct-2512 \
  --served-model-name ministral-3-3b-instruct-bf16 \
  --dataset-name sharegpt \
  --dataset-path /tmp/ShareGPT_V3.json \
  --num-prompts 250 \
  --request-rate 0.3 \
  --burstiness 0.7 \
  --percentile-metrics ttft,tpot,itl,e2el \
  --metric-percentiles 50,90,95,99 \
  --seed 42 \
  --save-result \
  --result-dir /tmp \
  --result-filename 08-sharegpt.json
09 · vllm bench serveopen-loop

Charge de raisonnement

Longues chaînes de pensée, 1k en entrée et 4k en sortie, taux d'arrivée lent de 0,2 car chaque requête coûte beaucoup de budget de décodage. Vérifie si le TTFT reste stable.

dataset
random
input / output
1024 / 4096
rate (req/s)
0.2
prompts
50
burstiness
1
Tokens/sec · par utilisateur
11,4t/s
TTFT · p50
423ms
Request success 100% · Échec du contrôle de cohérence
50 prompts · seed 42view command →hide command ↑
docker exec vllm-bench vllm bench serve \
  --backend openai-chat \
  --base-url http://localhost:8000 \
  --endpoint /v1/chat/completions \
  --model mistralai/Ministral-3-3B-Instruct-2512 \
  --tokenizer mistralai/Ministral-3-3B-Instruct-2512 \
  --served-model-name ministral-3-3b-instruct-bf16 \
  --dataset-name random \
  --random-input-len 1024 \
  --random-output-len 4096 \
  --random-range-ratio 0.9 \
  --num-prompts 50 \
  --request-rate 0.2 \
  --burstiness 1.0 \
  --percentile-metrics ttft,tpot,itl,e2el \
  --metric-percentiles 50,90,95,99 \
  --seed 42 \
  --save-result \
  --result-dir /tmp \
  --result-filename 09-reasoning.json
10 · vllm bench serveopen-loop

Pic du lundi matin

Aléatoire, 4000 en entrée et 500 en sortie, taux d'arrivée de 1,5 par seconde avec une irrégularité de 1,0 et 25 en parallèle au maximum. Un flux de requêtes indépendant et soutenu.

dataset
random
input / output
4000 / 500
rate (req/s)
1.5
prompts
300
burstiness
1
max parallel
25
Tokens/sec · par utilisateur
80,5t/s
TTFT · p50
803ms
Request success 100% · Échec du contrôle de cohérence
300 prompts · seed 42view command →hide command ↑
docker exec vllm-bench vllm bench serve \
  --backend openai-chat \
  --base-url http://localhost:8000 \
  --endpoint /v1/chat/completions \
  --model mistralai/Ministral-3-3B-Instruct-2512 \
  --tokenizer mistralai/Ministral-3-3B-Instruct-2512 \
  --served-model-name ministral-3-3b-instruct-bf16 \
  --dataset-name random \
  --random-input-len 4000 \
  --random-output-len 500 \
  --random-range-ratio 0.9 \
  --num-prompts 300 \
  --request-rate 1.5 \
  --burstiness 1.0 \
  --max-concurrency 25 \
  --percentile-metrics ttft,tpot,itl,e2el \
  --metric-percentiles 50,90,95,99 \
  --seed 42 \
  --save-result \
  --result-dir /tmp \
  --result-filename 10-monday-peak.json
11 · vllm bench serveopen-loop

Capacité · balayage de débit

Six taux d'arrivée croissants, de 0,1 à 1,0 requête par seconde. À chaque palier, on vérifie si le TTFT p95 reste sous le seuil.

dataset
random
input / output
4000 / 500
rates (req/s)
0.1 · 0.2 · 0.3 · 0.5 · 0.7 · 1.0
prompts
100 · 100 · 100 · 125 · 175 · 250
burstiness
0.7
Req/s · TTFT < 5s
0,46req/s
Req/s · TTFT < 10s
0,46req/s
Request success 100% · Échec du contrôle de cohérence

Interrompu à 1.0 req/s. La capacité est une borne inférieure, pas un plafond mesuré.

6 rates · seed 42view command →hide command ↑
# 0.1 req/s
docker exec vllm-bench vllm bench serve \
  --backend openai-chat \
  --base-url http://localhost:8000 \
  --endpoint /v1/chat/completions \
  --model mistralai/Ministral-3-3B-Instruct-2512 \
  --tokenizer mistralai/Ministral-3-3B-Instruct-2512 \
  --served-model-name ministral-3-3b-instruct-bf16 \
  --dataset-name random \
  --random-input-len 4000 \
  --random-output-len 500 \
  --random-range-ratio 0.9 \
  --num-prompts 100 \
  --request-rate 0.1 \
  --burstiness 0.7 \
  --percentile-metrics ttft,tpot,itl,e2el \
  --metric-percentiles 50,90,95,99 \
  --seed 42 \
  --save-result \
  --result-dir /tmp \
  --result-filename 11-rate-sweep-0.1.json

# 0.2 req/s
docker exec vllm-bench vllm bench serve \
  --backend openai-chat \
  --base-url http://localhost:8000 \
  --endpoint /v1/chat/completions \
  --model mistralai/Ministral-3-3B-Instruct-2512 \
  --tokenizer mistralai/Ministral-3-3B-Instruct-2512 \
  --served-model-name ministral-3-3b-instruct-bf16 \
  --dataset-name random \
  --random-input-len 4000 \
  --random-output-len 500 \
  --random-range-ratio 0.9 \
  --num-prompts 100 \
  --request-rate 0.2 \
  --burstiness 0.7 \
  --percentile-metrics ttft,tpot,itl,e2el \
  --metric-percentiles 50,90,95,99 \
  --seed 42 \
  --save-result \
  --result-dir /tmp \
  --result-filename 11-rate-sweep-0.2.json

# 0.3 req/s
docker exec vllm-bench vllm bench serve \
  --backend openai-chat \
  --base-url http://localhost:8000 \
  --endpoint /v1/chat/completions \
  --model mistralai/Ministral-3-3B-Instruct-2512 \
  --tokenizer mistralai/Ministral-3-3B-Instruct-2512 \
  --served-model-name ministral-3-3b-instruct-bf16 \
  --dataset-name random \
  --random-input-len 4000 \
  --random-output-len 500 \
  --random-range-ratio 0.9 \
  --num-prompts 100 \
  --request-rate 0.3 \
  --burstiness 0.7 \
  --percentile-metrics ttft,tpot,itl,e2el \
  --metric-percentiles 50,90,95,99 \
  --seed 42 \
  --save-result \
  --result-dir /tmp \
  --result-filename 11-rate-sweep-0.3.json

# 0.5 req/s
docker exec vllm-bench vllm bench serve \
  --backend openai-chat \
  --base-url http://localhost:8000 \
  --endpoint /v1/chat/completions \
  --model mistralai/Ministral-3-3B-Instruct-2512 \
  --tokenizer mistralai/Ministral-3-3B-Instruct-2512 \
  --served-model-name ministral-3-3b-instruct-bf16 \
  --dataset-name random \
  --random-input-len 4000 \
  --random-output-len 500 \
  --random-range-ratio 0.9 \
  --num-prompts 125 \
  --request-rate 0.5 \
  --burstiness 0.7 \
  --percentile-metrics ttft,tpot,itl,e2el \
  --metric-percentiles 50,90,95,99 \
  --seed 42 \
  --save-result \
  --result-dir /tmp \
  --result-filename 11-rate-sweep-0.5.json

# 0.7 req/s
docker exec vllm-bench vllm bench serve \
  --backend openai-chat \
  --base-url http://localhost:8000 \
  --endpoint /v1/chat/completions \
  --model mistralai/Ministral-3-3B-Instruct-2512 \
  --tokenizer mistralai/Ministral-3-3B-Instruct-2512 \
  --served-model-name ministral-3-3b-instruct-bf16 \
  --dataset-name random \
  --random-input-len 4000 \
  --random-output-len 500 \
  --random-range-ratio 0.9 \
  --num-prompts 175 \
  --request-rate 0.7 \
  --burstiness 0.7 \
  --percentile-metrics ttft,tpot,itl,e2el \
  --metric-percentiles 50,90,95,99 \
  --seed 42 \
  --save-result \
  --result-dir /tmp \
  --result-filename 11-rate-sweep-0.7.json

# 1.0 req/s
docker exec vllm-bench vllm bench serve \
  --backend openai-chat \
  --base-url http://localhost:8000 \
  --endpoint /v1/chat/completions \
  --model mistralai/Ministral-3-3B-Instruct-2512 \
  --tokenizer mistralai/Ministral-3-3B-Instruct-2512 \
  --served-model-name ministral-3-3b-instruct-bf16 \
  --dataset-name random \
  --random-input-len 4000 \
  --random-output-len 500 \
  --random-range-ratio 0.9 \
  --num-prompts 250 \
  --request-rate 1.0 \
  --burstiness 0.7 \
  --percentile-metrics ttft,tpot,itl,e2el \
  --metric-percentiles 50,90,95,99 \
  --seed 42 \
  --save-result \
  --result-dir /tmp \
  --result-filename 11-rate-sweep-1.0.json

Chat

Chat avec dix requêtes simultanées

La mesure de chat est exclue car le contrôle de cohérence a échoué. Les tokens/s présents ne prouvent donc aucune sortie de modèle utilisable.

Contexte long

Attente à 25k de contexte

Le test avec 25k tokens d'entrée est également exclu. Les résultats bruts figurent avec le test, mais ne constituent pas une base valable pour une recommandation de performance.

Charge de pointe

Requêtes et attente en charge de pointe

La mesure de pointe est exclue par l'échec du contrôle de cohérence. Une requête HTTP réussie n'est pas la même chose qu'une réponse utilisable.

Couverture des mesures

Quelles mesures comptent

0 des 11 tests ont une mesure qui compte selon les règles actuelles de l'Arena. Le contrôle de cohérence a échoué. Ce run est donc exclu du classement ; les chiffres bruts restent visibles à titre d'inspection uniquement. Interrompu : 11-rate-sweep.

Explication