Deployment
Install SGLang
Install SGLang
For all methods and hardware platforms, see the official SGLang installation guide. The two paths below match the Python / Docker toggle in the command panel.Then run the Python output of the command panel below in that environment.
- Python (pip / uv)
- Docker
Command
The H200 speed results use
lmsysorg/sglang:dev at SGLang commit d59c1ddf7 and the B200 results at commit d10a656ad8; the launch recipes were verified end to end on both GPUs against the release checkpoints. Each speed point uses 80 fixed-length random requests at 8,192 input and 1,024 output tokens, 8 warmup requests, a flushed cache, greedy sampling, and ignore-EOS.Playground
The Playground layers SGLang features on top of the verified recipe. Any override changes the badge to Not Verified until that exact configuration is tested end to end.1. Model introduction
Granite 4.2 is IBM’s dense decoder-only language model family with 3B, 8B, and 30B checkpoints. Each checkpoint uses BF16 weights, has a configured context length of 131,072 tokens, and supports default thinking, non-thinking, low-effort thinking, and structured tool calls through its chat template. The repositories declare the Apache-2.0 license.| Variant | Total params | Position in family |
|---|---|---|
| Granite 4.2 3B | 3B | Smallest checkpoint |
| Granite 4.2 8B | 8B | Mid-size checkpoint |
| Granite 4.2 30B | 30B | Largest checkpoint |
temperature=1.0 and top_p=0.95 for general chat, reasoning, and tool calling. The release checkpoints ship these values in generation_config.json; send them per request when you want to be explicit.
Resources: Granite 4.2 3B · Granite 4.2 8B · Granite 4.2 30B.
2. Configuration tips
- Thinking is enabled by default. Set
chat_template_kwargs.enable_thinkingtofalsefor a direct answer. Setenable_thinkingandlow_efforttotruefor a shorter reasoning trace. - Give thinking enough tokens. At
temperature=1.0the default thinking mode can run past 1,000 tokens on multi-step problems. Use amax_tokensof at least 2,048 for thinking requests so the answer is not cut off. - Reasoning parser. Launch with
--reasoning-parser auto, which resolves tonemotron_3for these checkpoints, so OpenAI-compatible responses separate the trace intomessage.reasoning_contentand the answer intomessage.content. Without a parser flag the reasoning markup stays inline inmessage.content. - Tool-call parser. Launch with
--tool-call-parser auto, which resolves toqwen3_coderfor these checkpoints, so tool requests are returned throughmessage.tool_calls. Without it, raw<tool_call>markup stays inmessage.content. - Single-GPU sizing. All three BF16 checkpoints loaded and completed chat requests with
--tp 1 --mem-fraction-static 0.8on one H200 and on one B200. Increase TP only after validating the new topology. - Image selection. The validated path uses
lmsysorg/sglang:dev. A stable image tested during validation had an incompatible dependency set before model loading, so use the recipe’s image until a newer tagged release is confirmed.
3. Advanced usage
The outputs below are verbatim captures from Granite 4.2 3B on the verified server. Sampling is stochastic, so a repeated request can produce different wording.3.1 Thinking modes
Thenemotron_3 reasoning parser keeps reasoning and final content in separate fields. Granite 4.2 accepts three chat-template modes: default thinking, non-thinking, and low-effort thinking.
Thinking modes example (Python)
Thinking modes example (Python)
Example
Example output
Example output
Output
3.2 Tool calling
Theqwen3_coder parser converts the model’s tool markup into OpenAI-compatible structured calls.
Tool calling example (Python)
Tool calling example (Python)
Example
Example output
Example output
Output
