Instructions to use inception42/Jais-3-0.9B with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use inception42/Jais-3-0.9B with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("text-generation", model="inception42/Jais-3-0.9B", trust_remote_code=True) messages = [ {"role": "user", "content": "Who are you?"}, ] pipe(messages)# pip install -U transformers accelerate # Load model directly from transformers import AutoModelForCausalLM model = AutoModelForCausalLM.from_pretrained("inception42/Jais-3-0.9B", trust_remote_code=True, device_map="auto") - Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- vLLM
How to use inception42/Jais-3-0.9B with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "inception42/Jais-3-0.9B" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "inception42/Jais-3-0.9B", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }'Use Docker
docker model run hf.co/inception42/Jais-3-0.9B
- SGLang
How to use inception42/Jais-3-0.9B with SGLang:
Install from pip and serve model
# Install SGLang from pip: pip install sglang # Start the SGLang server: python3 -m sglang.launch_server \ --model-path "inception42/Jais-3-0.9B" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "inception42/Jais-3-0.9B", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }'Use Docker images
docker run --gpus all \ --shm-size 32g \ -p 30000:30000 \ -v ~/.cache/huggingface:/root/.cache/huggingface \ --env "HF_TOKEN=<secret>" \ --ipc=host \ lmsysorg/sglang:latest \ python3 -m sglang.launch_server \ --model-path "inception42/Jais-3-0.9B" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "inception42/Jais-3-0.9B", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }' - Docker Model Runner
How to use inception42/Jais-3-0.9B with Docker Model Runner:
docker model run hf.co/inception42/Jais-3-0.9B
Jais-3-0.9B
Jais-3-0.9B is the compact dense member of the Jais-3 family: a 0.9B-class decoder-only model with a 128K context window.
Other formats are available in the IFM/Jais-3 collection:
- GGUF for llama.cpp and Ollama: IFM/Jais-3-0.9B-GGUF
- MLX for Apple silicon:
Benchmark Results
| Reference models | |||||
|---|---|---|---|---|---|
| Jais-3-0.9B | Qwen3.5-2B | Falcon-H1-1.5B-Deep-Instruct | Hala 1.2B | tiny-aya-global | |
| # Params | 0.9B | 2B | 1.5B | 1.2B | 3B |
| # Activated params | 0.9B | 2B | 1.5B | 1.2B | 3B |
| Architecture | Dense | Dense | Dense | Dense | Dense |
| Open-ended Generation | |||||
| AraGen | |||||
AraGen v3 (3C3H) 09-2025 | 32.7 | 15.3 | 12.2 | 25.0 | 21.4 |
Correctness | 39.4 | 20.0 | 15.5 | 28.2 | 27.3 |
Completeness | 38.6 | 19.3 | 15.0 | 27.1 | 25.2 |
Conciseness | 10.9 | 2.6 | 3.1 | 14.4 | 6.5 |
Helpfulness | 33.2 | 15.4 | 11.4 | 25.8 | 21.1 |
Honesty | 35.8 | 15.4 | 13.1 | 26.8 | 22.1 |
Harmlessness | 38.7 | 19.0 | 15.4 | 27.5 | 26.5 |
| Knowledge & Reasoning | |||||
| General Knowledge & Comprehension | |||||
Arabic MMLU* Accuracy | 70.4 | 63.1 | 48.7 | 45.0 | 55.9 |
Belebele Accuracy | 81.6 | 67.6 | 57.8 | 39.9 | 62.2 |
| STEM & Math | |||||
AraSTEM* Accuracy | 81.6 | 83.9 | 62.5 | 48.3 | 58.5 |
Arabic GSM8K* Accuracy | 80.9 | 75.6 | 65.4 | 57.3 | 59.6 |
GATmath* Accuracy | 87.4 | 87.4 | 40.2 | 29.6 | 31.4 |
| Professional Domains | |||||
MedAraBench* Accuracy | 48.1 | 54.3 | 32.3 | 32.3 | 39.5 |
Arabic Legal (HELM)* Accuracy | 58.7 | 49.1 | 48.8 | 41.1 | 52.2 |
| Arabic Language & Culture | |||||
| Islamic Knowledge & Arab Culture | |||||
IslamicQA Accuracy (mean of the 4 below) | 66.2 | 43.0 | 48.2 | 35.9 | 44.2 |
PaLM-X 2025-2* Accuracy | 78.1 | 62.0 | 62.1 | 50.0 | 71.6 |
QIAS-1* Accuracy | 61.1 | 26.1 | 32.1 | 16.2 | 23.1 |
QIAS-2* Accuracy | 65.0 | 51.5 | 56.0 | 41.9 | 54.7 |
IslamicEval2025-1B* Accuracy | 60.6 | 32.5 | 42.4 | 35.5 | 27.3 |
Arab Culture Accuracy (mean of the 3 below) | 73.3 | 54.8 | 54.4 | 46.9 | 61.5 |
ArabCulture* Accuracy | 74.0 | 63.8 | 61.7 | 60.6 | 68.6 |
AraDiCE-Culture* Accuracy | 72.6 | 46.9 | 49.2 | 30.7 | 55.3 |
Arabic Cuisine^ Accuracy | 73.4 | 53.6 | 52.4 | 49.5 | 60.6 |
| Dialects | |||||
Dialectal Arabic MMLU* Accuracy | 63.7 | 59.5 | 42.3 | 40.3 | 47.7 |
Dialect Identification (QADI) Accuracy | 65.9 | 24.2 | 23.4 | 23.0 | 38.8 |
Alyah* Accuracy | 73.8 | 53.2 | 54.8 | 53.2 | 68.1 |
| Linguistics & Literature | |||||
Arabic MMLU with diacritics Accuracy | 65.1 | 49.4 | 34.7 | 31.3 | 45.6 |
FannOrFlop-MCQ Accuracy | 59.3 | 43.6 | 38.5 | 31.3 | 48.5 |
Arabic Linguistics^ Accuracy (mean of the 2 below) | 85.5 | 54.7 | 33.3 | 32.6 | 38.2 |
Diacritization Accuracy | 83.6 | 65.1 | 26.0 | 32.9 | 36.7 |
Parsing Accuracy | 87.4 | 44.4 | 40.6 | 32.2 | 39.6 |
| Assistant Capabilities | |||||
| Instruction Following | |||||
Arabic IFBench^ Accuracy (prompt-level strict) | 91.1 | 33.1 | 16.2 | 14.6 | 21.5 |
Arabic IFEval Accuracy | 71.3 | 62.6 | 49.3 | 44.1 | 58.2 |
| Factuality & Hallucination | |||||
HalluScore Accuracy | 28.0 | 25.8 | 6.0 | 10.1 | 20.1 |
SimpleQA Verified (Ar) Aggregate (2/3 F-score + 1/3 non-hallucination rate) | 27.1 | 7.9 | 2.6 | 3.1 | 3.1 |
F-score | 1.0 | 2.7 | 2.0 | 3.1 | 3.1 |
Non-hallucination rate | 79.3 | 18.2 | 3.8 | 3.2 | 3.2 |
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-0.9B \
--trust-remote-code \
--dtype bfloat16 \
--max-model-len 131072 \
--hf-overrides '{"rope_parameters":{"rope_type": "yarn", "factor": 16, "original_max_position_embeddings": 8192, "rope_theta": 1000000, "beta_fast": 128, "beta_slow": 4}}' \
--gpu-memory-utilization 0.85 \
--tensor-parallel-size 1 \
--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-0.9B \
--tp 1 \
--dtype bfloat16 \
--attention-backend fa3 \
--reasoning-parser k2_horizon \
--host 0.0.0.0 \
--port 30000
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 throughchat_template_kwargs. Thinking is returned inreasoning_contentand the answer incontent.
| 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-0.9B",
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)
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-0.9B"
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-0.9B.
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-0.9B
Branch names below refer to this repository.
| Checkpoint | Branch / repository |
|---|---|
| CPT Checkpoint | CPT |
| Cooldown Checkpoint | Cooldown |
| FTPO Checkpoint | FTPO |
| SFT Checkpoint | SFT |
Best Practices
- 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. - Sampling parameters. Use the values in the table above:
temperature=0.2,top_p=0.95,top_k=20by default. In thinking mode, settemperature=1.0for English andtemperature=0.7for Arabic. Keepmin_p=0.0,presence_penalty=0.0andrepetition_penalty=1.0. - Serving. Use the validated SGLang recipe above: BF16, TP=1 on a single H100 node, FlashAttention-3.
- Parsers. Enable the
k2_horizonreasoning parser for chat, and add thek2_horizontool-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
- 158