Model reference · open weights

JustRL-II-model

LLMs openbmb Text gen 1 build Licence not stated 0 dl/mo

JustRL-II-model is an open-weight language model from openbmb. JustRL-II-base-model (BF16) weighs 5.0 GB; the smallest configuration that runs it is RTX 3060 12 GB.

For self-hosting, compare this build's requirements below with the GPU you plan to rent.

  • JustRL-II-model is a text-generation checkpoint by openbmb designed as the initialization point for the JustRL II reinforcement learning recipe.
  • It is a small language model with a Llama-style architecture that supports English and Chinese, featuring a 65,536-token context length.
  • The model is intended for reproducing mathematical reasoning training runs and has not been aligned for general assistant use.

Summary of the openbmb/JustRL-II-base-model model card, 2026-10-01

What it is

Released byopenbmb
Released2026-09-07
VRAM5.0 GB for the weights

What it runs on

Memory and cards for JustRL-II-base-model (BF16)

5.0 GBweights, file size
43 MBcache per 1K tokens
647 MBruntime overhead, at least
65,536 tokenscontext max
CardRequests at onceContext maxMemory
8K each32K each
RTX 3060 12 GB164all 64K11.6 GB
RTX 4060 Ti 16 GB276all 64K15.4 GB
RTX 3090 24 GB5012all 64K23.4 GB
RTX 4090 24 GB5012all 64K23.4 GB
RTX 5090 32 GB7117all 64K31.0 GB
L40S 48 GB10827all 64K44.0 GB
A100 80 GB20551all 64K78.2 GB
H100 80 GB19448all 64K78.1 GB
RTX PRO 6000 Blackwell 96 GB23959all 64K93.8 GB
DGX Spark (GB10) 128 GB unified27769all 64K107 GB
H200 141 GB36491all 64K138 GB
B200 180 GB472118all 64K176 GB
Memory needed at each load
Requests at once8K tokens each32K tokens each
16.0 GB7.1 GB
57.4 GB12.7 GB
88.5 GB17.0 GB
1611.3 GB28.2 GB
3217.0 GB50.8 GB
6428.2 GB95.9 GB

One card, with vLLM's small-card settings.

From the model card

What openbmb says about JustRL-II-model

Read the model card

This is the RL initialization checkpoint used in the blog JustRL II: Scaling Small LLMs to 128K Reasoning with a Critic (中文版).

It is the starting point of the mathematical-reasoning case study in that blog — the checkpoint that every run there (the standard-GRPO baseline, the full JustRL II recipe, and all ablations) is initialized from and evaluated against. It is not the post-RL model. We release it so that the blog's data pipeline and training recipe can be reproduced from the exact same starting weights.

What this checkpoint is

  • A small language model that has already been trained to produce long chain-of-thought (thinking) responses. It emits its reasoning inside ... before the final answer.
  • Before any RL, it scores about 61% on AIME 2025 under the blog's evaluation protocol (average over sampled responses, 128k-token generation budget).
  • Starting from this checkpoint, the full JustRL II recipe reaches 81% on AIME 2025 in ~300 RL steps, while a standard GRPO baseline on the same data plateaus around 74% (see Figures 1, 2 and 8 of the blog).
  • The blog's difficulty-recalibration step (Stage 3 of the data pipeline) is computed by rolling out this checkpoint 8 times per problem, so the released training set's difficulty tiers refer to this model's pass rates.

Files

FileNotes
pytorch_model.binbf16 weights, single file
config.jsonLlama-style architecture (LlamaForCausalLM), loads with stock transformers
tokenizer.json, tokenizer_config.json, special_tokens_map.jsontokenizer
chat_template.jinjachat template with thinking-mode support (enable_thinking)

Two end-of-sequence ids are configured (eos_token_id = [1, 130073]); pass both to your generation call or serving engine. config.json ships with max_position_embeddings = 65536; the RL runs in the blog use a 128k-token generation budget — refer to the blog for the long-context serving setup used there.

Usage

import torch
from transformers import AutoModelForCausalLM, AutoTokenizer

model_id = "openbmb/JustRL-II-base-model"
tokenizer = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForCausalLM.from_pretrained(
    model_id, torch_dtype=torch.bfloat16, device_map="auto"
)

messages = [{"role": "user", "content": "What is the sum of all positive divisors of 360? Think step by step."}]
text = tokenizer.apply_chat_template(
    messages, tokenize=False, add_generation_prompt=True, enable_thinking=True
)
inputs = tokenizer(text, return_tensors="pt").to(model.device)
inputs.pop("token_type_ids", None)

out = model.generate(
    **inputs,
    max_new_tokens=8192,
    do_sample=True,
    temperature=1.0,
    eos_token_id=[tokenizer.eos_token_id, 130073],
)
print(tokenizer.decode(out[0][inputs["input_ids"].shape[1]:], skip_special_tokens=False))

For evaluation or RL rollouts, serve it with vLLM or SGLang as a standard Llama-architecture model, e.g.

vllm serve openbmb/JustRL-II-base-model --dtype bfloat16

Intended use

  • Reproducing the JustRL II recipe and its ablations from the same initialization.
  • Research on long-CoT RL for small models: credit assignment, critic diagnostics, data difficulty calibration.

This checkpoint has not been aligned for general assistant use and has only been evaluated on mathematical reasoning. It may produce very long outputs; set a generation budget appropriate to your hardware.

The JustRL II recipe (summary)

The blog trains this checkpoint with a critic-equipped GRPO recipe:

  • Data: a three-stage pipeline audits ~100k open-source math problems (DAPO-Math, DeepScaleR, DeepMath) for solvability, re-checks labels with independent strong-model solutions, and removes problems this checkpoint already solves 8/8 — leaving 32,412 problems in the training set.
  • Algorithm: GRPO's group structure and dynamic sampling are retained; a learned value model (initialized from the policy, bias calibrated to the pool pass rate) provides token-level advantages through GAE with a length-adaptive λ; tail-only overlong control limits excessive rollout length.
  • Rollouts: 8 samples per prompt at temperature 1.0 with a 128k-token budget, graded by a variant of math-verify.

See the blog for the full specification, ablations, and critic diagnostics.

Citation

@misc{justrl2,
  title  = {JustRL II: Scaling Small LLMs to 128K Reasoning with a Critic},
  author = {Pan, Haoxuan and Zhou, Chuyue and Li, Xin and others},
  year   = {2026},
  howpublished = {\url{https://panhaoxuan.notion.site/justrl-ii-scaling-small-llms-to-128k-reasoning-with-a-critic}}
}

Quoted from the model card on Hugging Face. The full card is behind the Hugging Face link above.

© 2026 AxForge · EU-hosted AI infrastructure Pricing Docs Trust Privacy Terms