ai-sage/GigaChat3.5-432B-A28B-Reasoning-bf16
GigaChat 3.5 Reasoning
GigaChat 3.5 Reasoning is the first GigaChat model with full reasoning trained with online RL. Compared with GigaChat 3.5 Ultra Instruct, the largest gains are in mathematics, code, instruction following, and structured output.
This repository contains the BF16 weights for fine-tuning and custom quantization. For inference, use GigaChat3.5-432B-A28B-Reasoning.
Model architecture
GigaChat 3.5 Reasoning is a 432B Mixture-of-Experts model with 28B active parameters. It uses a custom hybrid architecture that combines Multi-head Latent Attention (MLA) with GatedDeltaNet linear-attention layers.
The model also uses GatedNorm, a learned multiplicative gate applied after RMSNorm, and has three MTP heads for speculative decoding. The maximum supported context length is 262K tokens.

Online RL
Post-training starts from an SFT checkpoint. We train six domain experts independently with online RL and then combine them into one release model with on-policy distillation (OPD). Separate experts let us use different reward signals for domains where the answer can be verified directly and domains where quality has to be judged differently.
The experts are trained with CISPO. Before training, the current checkpoint is evaluated on the task pool and tasks solved in more than 75% of attempts are removed. As the model improves, the training set therefore shifts toward harder tasks.
Rewards are domain-specific but follow the same general construction: gated checks for hard constraints, additive rewards for answer quality, and an adaptive length penalty. After RL, OPD combines the six experts: the student generates its own trajectory and the expert for the corresponding domain provides token-level supervision on that trajectory.
Benchmark scores
\ IMOAnswerBench uses `Qwen-3-235B-Instruct-2507` as the judge. \\ TAU3-bench is averaged across Airline, Retail, Telecom, and Banking. \\\ Natural Plan uses a corrected scorer that normalizes UTF-8 characters to ASCII. \\\\ SWE-bench Verified and Terminal-Bench 2 use mini-swe-agent with a three-hour timeout. \\\\\* Arena evaluations use MiniMax-M2.7 as the judge and GPT-5.2 as the baseline.
Benchmarks without a methodology-defined system prompt were evaluated with an empty system prompt.
Reasoning efficiency
On AIME 2025, AIME 2026, HMMT, and IMOAnswerBench, GigaChat 3.5 Reasoning uses 37% fewer reasoning tokens overall than DeepSeek V4 Flash Preview across the reported evaluation samples.
Usage with SGLang
The current launch path uses GigaChat 3.5 support from SGLang PR \#29189.
Install
git clone https://github.com/sgl-project/sglang.git
cd sglang
git fetch origin pull/29189/head:pr-29189
git checkout pr-29189
pip install --upgrade pip
SGLANG_BUILD_RUST_EXTS=none pip install -e "python[all]"SGLANG_BUILD_RUST_EXTS=none disables the optional Rust router. It is not required for the inference server.
Launch
Example two-node, 16-GPU configuration. Run the command on every node and set --node-rank to the node index.
MASTER_ADDR=<rank0_host_or_ip>
DIST_PORT=<port>
python -m sglang.launch_server \
--model-path ai-sage/GigaChat3.5-432B-A28B-Reasoning-bf16 \
--trust-remote-code \
--tp-size 16 --ep-size 16 \
--nnodes 2 \
--node-rank <rank> \
--dist-init-addr ${MASTER_ADDR}:${DIST_PORT} \
--mem-fraction-static 0.8 \
--tool-call-parser gigachat35 \
--reasoning-parser gigachat35 \
--speculative-algorithm EAGLE \
--speculative-num-steps 3 \
--speculative-eagle-topk 1 \
--speculative-num-draft-tokens 4 \
--host 0.0.0.0 --port 8000--reasoning-parser gigachat35 returns the reasoning trace in reasoning_content and the final answer in content. --tool-call-parser gigachat35 enables function-call parsing. The speculative-decoding options enable the model's three MTP heads.
If CUDA graph capture fails during prefill, add --cuda-graph-backend-prefill disabled.
Request example
curl http://localhost:8000/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{
"model": "ai-sage/GigaChat3.5-432B-A28B-Reasoning-bf16",
"messages": [
{"role": "user", "content": "Докажи теорему о неподвижной точке"}
],
"max_tokens": 2000,
"temperature": 0.6
}'Function calling
curl http://localhost:8000/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{
"model": "ai-sage/GigaChat3.5-432B-A28B-Reasoning-bf16",
"messages": [
{"role": "user", "content": "What is the weather in Moscow right now?"}
],
"tools": [
{
"type": "function",
"function": {
"name": "get_weather",
"description": "Get the current weather in a city",
"parameters": {
"type": "object",
"properties": {
"city": {"type": "string"}
},
"required": ["city"]
}
}
}
],
"tool_choice": "auto",
"max_tokens": 2000,
"temperature": 0.6
}'