Jais-3-32B

Jais-3-32B is the large dense member of the Jais-3 family: a 32B-class decoder-only model with a 512K context window.

Other formats are available in the IFM/Jais-3 collection:

Jais-3-32B benchmark results

Benchmark Results

Reference models
Jais-3-32BFalcon-H1-34B-InstructGemma-4-31B-itMuse-Glimmer-30BQwen3.8-27BFanar-2-27B
# Params32B34B31B30B27B27B
# Activated params32B34B31B30B27B27B
ArchitectureDenseDenseDenseDenseDenseDense
Open-ended Generation
AraGen
AraGen v3 (3C3H)
09-2025
71.045.073.475.666.755.9
Correctness
81.053.285.487.777.165.7
Completeness
80.351.084.987.076.263.5
Conciseness
28.119.721.123.023.921.6
Helpfulness
76.445.479.781.271.559.0
Honesty
79.949.084.486.774.761.3
Harmlessness
80.351.484.987.776.564.4
Knowledge & Reasoning
General Knowledge & Comprehension
Arabic MMLU*
Accuracy
88.673.789.587.085.866.3
Belebele
Accuracy
95.086.695.994.394.461.8
STEM & Math
AraSTEM*
Accuracy
95.285.596.394.795.342.4
Arabic GSM8K*
Accuracy
94.390.293.795.293.287.7
GATmath*
Accuracy
98.563.498.698.598.487.8
Professional Domains
MedAraBench*
Accuracy
87.060.788.886.187.350.9
Arabic Legal (HELM)*
Accuracy
73.463.171.173.170.545.7
Arabic Language & Culture
Islamic Knowledge & Arab Culture
IslamicQA
Accuracy (mean of the 4 below)
88.771.189.783.777.152.0
PaLM-X 2025-2*
Accuracy
94.684.794.592.690.869.3
QIAS-1*
Accuracy
95.956.293.287.481.631.4
QIAS-2*
Accuracy
85.573.486.983.081.961.8
IslamicEval2025-1B*
Accuracy
78.870.184.071.954.145.5
Arab Culture
Accuracy (mean of the 3 below)
88.076.590.284.681.041.4
ArabCulture*
Accuracy
88.279.791.486.085.034.2
AraDiCE-Culture*
Accuracy
88.375.489.483.277.155.9
Arabic Cuisine^
Accuracy
87.474.489.884.781.034.0
Dialects
Dialectal Arabic MMLU*
Accuracy
88.571.589.487.087.028.2
Dialect Identification (QADI)
Accuracy
70.650.370.460.651.529.6
Alyah*
Accuracy
83.071.888.480.377.736.3
Linguistics & Literature
Arabic MMLU with diacritics
Accuracy
87.969.188.986.685.264.2
FannOrFlop-MCQ
Accuracy
71.862.472.668.362.546.4
Arabic Linguistics^
Accuracy (mean of the 2 below)
94.357.496.791.889.739.1
Diacritization
Accuracy
91.965.295.289.589.647.0
Parsing
Accuracy
96.749.798.394.189.831.3
Translation
FLORES200+
LLM-as-a-judge
91.570.692.884.881.871.2
Assistant Capabilities
Instruction Following
Arabic IFBench^
Accuracy (prompt-level strict)
88.732.280.884.281.340.0
Arabic IFEval
Accuracy
80.066.878.779.577.049.8
Long Context
AA-LCR (Ar)
Accuracy
75.014.066.0-79.0-
Factuality & Hallucination
HalluScore
Accuracy
67.342.469.769.154.641.7
SimpleQA Verified (Ar)
Aggregate (2/3 F-score + 1/3 non-hallucination rate)
28.17.510.613.38.011.0
F-score
7.16.610.718.29.210.4
Non-hallucination rate
70.19.410.53.75.412.2
Agentic
Terminal Bench 2.1
Accuracy (Avg@3)
63.71.143.551.779.81.1
GDPVal
Accuracy (@ 75% threshold)
75.50.030.548.278.20.0
MCPMark
Accuracy (Pass@1)
66.10.848.844.949.612.1
WildClawBench (English text-only subset)
Mean Score@3
42.010.744.143.252.110.3
Apex-Agents (420 text-only subset, loop agent)
Pass@1 (Accuracy)
25.20.712.422.128.60.2
GAIA v2 lit (Ar)
Accuracy (Pass@1)
51.59.742.436.455.812.1
Arabic File Processing
Accuracy (@ 75% threshold)
71.80.04.520.978.60.0
SWE-Bench Verified (Offline)
Accuracy (Pass@1)
72.40.459.071.473.50.4
BrowseComp-Plus
Accuracy
71.91.842.541.153.03.9

Starred (*) benchmarks have been audited for sample quality. Items with ambiguous questions, invalid answer options, or indefensible gold labels were excluded, since they can penalize a correct answer or reward a lucky guess. Scores on these benchmarks are reported on the cleaned sets. The audit methodology, the excluded samples and the verified benchmarks are available in the IFM/Arabic-Benchmark-Auditing collection.

Benchmarks marked with ^ will be released by IFM soon.

Quickstart

Serving

vLLM (vllm>=0.30.0) · vLLM recipe:

vllm serve inception42/Jais-3-32B \
  --trust-remote-code \
  --model-impl vllm \
  --dtype bfloat16 \
  --tensor-parallel-size 2 \
  --reasoning-parser k2_horizon \
  --enable-auto-tool-choice \
  --tool-call-parser k2_horizon

Use an exact branch name from the inventory with vLLM's --revision option.

SGLang (sglang>=0.5.20) · SGLang recipe:

sglang serve \
  --model-path inception42/Jais-3-32B \
  --tp 2 \
  --dtype bfloat16 \
  --attention-backend fa3 \
  --reasoning-parser k2_horizon \
  --host 0.0.0.0 \
  --port 30000 \
  --tool-call-parser k2_horizon

API Usage

Recommended settings: reasoning_effort="high", the sampling hyperparameters in the table below, and at least 32,768 output tokens. Reasoning depth is selected per request through chat_template_kwargs. Thinking is returned in reasoning_content and the answer in content.

Parameter Default Thinking mode, English Thinking mode, Arabic
temperature 0.2 1.0 0.7
top_p 0.95 0.95 0.95
top_k 20 20 20
from openai import OpenAI
client = OpenAI(base_url="http://localhost:30000/v1", api_key="EMPTY")
response = client.chat.completions.create(
    model="inception42/Jais-3-32B",
    messages=[{"role": "user", "content": "لدينا عددان مجموعهما 50 وحاصل ضربهما 600. ما هما العددان؟ اشرح خطوات الحل."}],
    temperature=0.7,
    top_p=0.95,
    max_tokens=32768,
    extra_body={"top_k": 20, "chat_template_kwargs": {"reasoning_effort": "high"}},
)
message = response.choices[0].message
print("Reasoning:", getattr(message, "reasoning_content", None))
print("Answer:", message.content)
import json
from datetime import datetime
from zoneinfo import ZoneInfo
from openai import OpenAI
client = OpenAI(base_url="http://localhost:30000/v1", api_key="EMPTY")
TIMEZONES = {"أبوظبي": "Asia/Dubai", "الرياض": "Asia/Riyadh", "القاهرة": "Africa/Cairo", "لندن": "Europe/London"}

def get_current_time(city: str) -> dict:
    if city not in TIMEZONES:
        return {"error": f"مدينة غير معروفة: {city}"}
    return {"city": city, "time": datetime.now(ZoneInfo(TIMEZONES[city])).strftime("%H:%M")}

tools = [{
    "type": "function",
    "function": {
        "name": "get_current_time",
        "description": "يعيد الوقت الحالي في مدينة معينة",
        "parameters": {
            "type": "object",
            "properties": {"city": {"type": "string", "description": "اسم المدينة بالعربية"}},
            "required": ["city"],
        },
    },
}]
available_tools = {"get_current_time": get_current_time}
messages = [{"role": "user", "content": "كم الساعة الآن في القاهرة؟"}]
for _ in range(5):  # call the model, run any requested tools, repeat until it answers
    message = client.chat.completions.create(
        model="inception42/Jais-3-32B",
        messages=messages,
        tools=tools,
        temperature=0.7,
        top_p=0.95,
        max_tokens=32768,
        extra_body={
            "top_k": 20,
            "chat_template_kwargs": {"reasoning_effort": "high", "tool_call_format": "xml"},
        },
    ).choices[0].message
    messages.append(message)
    if not message.tool_calls:
        break
    for call in message.tool_calls:
        tool = available_tools.get(call.function.name)
        arguments = json.loads(call.function.arguments)
        result = tool(**arguments)
        messages.append({"role": "tool", "tool_call_id": call.id,
                         "content": json.dumps(result, ensure_ascii=False)})

print(message.content)

Our model supports multiple tool-call formats, which can be changed with chat_template_kwargs. The supported values are json, xml, and xml_typed. The default is xml. Keep --tool-call-parser k2_horizon enabled to parse the selected format.

Transformers

Validated with Transformers 5.15.0, PyTorch 2.13.0, Safetensors 0.8.0.

from transformers import AutoModelForCausalLM, AutoTokenizer
model_id = "inception42/Jais-3-32B"
tokenizer = AutoTokenizer.from_pretrained(model_id, trust_remote_code=True)
model = AutoModelForCausalLM.from_pretrained(
    model_id, device_map="auto", dtype="bfloat16", low_cpu_mem_usage=True, trust_remote_code=True
)
inputs = tokenizer("لدينا عددان مجموعهما 50 وحاصل ضربهما 600. ما هما العددان؟ اشرح خطوات الحل.", return_tensors="pt").to(model.device)
inputs.pop("token_type_ids", None)
outputs = model.generate(**inputs, max_new_tokens=32768, temperature=0.7, top_p=0.95, top_k=20, do_sample=True)
print(tokenizer.decode(outputs[0], skip_special_tokens=True))

Release Artifacts

The table below lists the release artifacts for Jais-3-32B.

Artifact Index

Artifact Link
Model card Hugging Face
Training logs W&B
Blog post Jais 3: Introducing Arabic-centric Agentic AI
Checkpoints Checkpoint inventory
Technical report Coming soon
Code repository Coming soon

Checkpoint Inventory

Model repository: inception42/Jais-3-32B

Branch names below refer to this repository.

Checkpoint Branch / repository
CPT Checkpoint CPT
Cooldown Checkpoint Cooldown
FTPO Checkpoint FTPO
SFT Checkpoint SFT

Best Practices

  1. Reasoning effort: always high. All reported results use high reasoning effort. Pass {"chat_template_kwargs": {"reasoning_effort": "high"}} on every request. No reasoning ({"reasoning_effort": "low"}) is not recommended except for research on reasoning efforts.
  2. Sampling parameters. Use the values in the table above: temperature=0.2, top_p=0.95, top_k=20 by default. In thinking mode, set temperature=1.0 for English and temperature=0.7 for Arabic. Keep min_p=0.0, presence_penalty=0.0 and repetition_penalty=1.0.
  3. Serving. Use the validated SGLang recipe above: BF16, TP=2 on a single H100 node, FlashAttention-3.
  4. Parsers. Enable the k2_horizon reasoning parser for chat, and add the k2_horizon tool-call parser for agent use. Leave both off for plain completion-style generation.

Intended Use and Limitations

Intended use: The model is designed for Arabic and English assistant and agentic applications, including reasoning and tool-use tasks, as well as for research and experimentation.

Out of scope: The model should not be used in ways that violate applicable laws or regulations. The following uses are also considered out of scope:

  • Harmful or malicious use: generating hateful, extremist, discriminatory, or deliberately misleading content, or using the model to support illegal or harmful activities.
  • Sensitive information: using the model to generate, expose, or infer personal, confidential, or otherwise sensitive information about individuals or organizations.
  • Unsupported languages: applications that depend on reliable performance in languages other than Arabic or English.
  • High-stakes decisions: relying on the model to make medical, legal, financial, or safety-critical decisions without appropriate human oversight.

Limitations: The model can produce inaccurate or made-up content and may reflect biases present in its training data. Evaluate it for your use case and add safeguards before deploying it.

Citation

@misc{jais3_2026,
  title  = {Jais 3: Introducing Arabic-centric Agentic AI},
  author = {{IFM Team}},
  year   = {2026},
  url    = {https://ifm.ai/blog/jais3/},
}
Downloads last month
60
Safetensors
Model size
35B params
Tensor type
BF16
·
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for inception42/Jais-3-32B

Adapters
1 model
Quantizations
5 models

Collection including inception42/Jais-3-32B