Last checked: 25 October 2026. Tested by J. SERVO on our own hardware.

Short answer: Yes, you can self-host Jais 3, and its small models handle the part of Arabic customer service that generic models miss: telling an Egyptian customer from a Gulf one and answering each in their own dialect. We ran the 3.7B and 7B models on an Apple M5 Mac with 16 GB of memory against 40 WhatsApp-style messages. With reasoning on, both picked the right intent for all 40 messages, recognised the dialect in 38 and 39, and pulled every order number, including ones typed in Arabic-Indic digits.

Qwen3.5, the model IFM compares Jais 3 with, recognised the dialect in only 22 (4B) and 23 (9B) of 40 with thinking off, and the 4B 21 of 40 with thinking on, at a median of 82.1 seconds per message. The catches are speed and honesty. With reasoning on, Jais 3 took a median of 20.7 to 28 seconds per message, and every model we tested sometimes invented a price or claimed an action it could not have taken. With reasoning off, the 7B answered in 2.5 seconds and still recognised the dialect in 38 of 40.

What is Jais 3?

Jais 3 is a family of open Arabic-English language models published in October 2026 by the Institute of Foundation Models (IFM) and Inception42. Middle East AI News reported the launch on 16 October as MBZUAI and Inception42 releasing six Jais 3 models. The weights are on Hugging Face under the Apache 2.0 licence, which allows commercial use.

The family runs from a 0.9B model to a 375B model that activates 23B parameters per token, with a 32B dense model and a 36B mixture-of-experts model (MoVA-36B-A4B, which runs 4B parameters per token) in between. For a business that wants to run Arabic AI on its own hardware, the three small dense models are the interesting ones:

ModelContext windowFull-precision file (BF16)4-bit file (Q4_K_M)Licence
Jais 3 0.9B128K tokens2.16 GB0.67 GBApache 2.0
Jais 3 3.7B512K tokens10.13 GB3.16 GBApache 2.0
Jais 3 7B512K tokens18.01 GB5.59 GBApache 2.0

File sizes are from IFM’s own GGUF repositories on Hugging Face. IFM also publishes MLX builds for Apple silicon and an FP8 build. It is a reasoning model: it thinks before it answers, and its model card tells you to keep reasoning effort on “high” for every request.

IFM’s model cards report strong Arabic results, and they are IFM’s own numbers. On dialect identification (the QADI benchmark), the card reports 68.8 for Jais 3 3.7B against 37.4 for Qwen3.5-4B, and 69.0 for Jais 3 7B against 35.7 for Qwen3.5-9B. The same 7B card also shows where Jais 3 is not the strongest: Google’s larger Gemma-4-12B-it scores 62.8 on the AraGen v3 open-ended generation benchmark, against 55.0 for Jais 3 7B. We wanted to see whether the dialect advantage survives contact with the messages a business in Cairo or Riyadh actually receives.

How we tested Jais 3 on Egyptian and Gulf messages

We wrote 40 short customer messages of the kind a shop, clinic or service company gets on WhatsApp: 20 in Egyptian Arabic and 20 in Gulf Arabic, mixing Saudi expressions such as «وش» and «أبغى» with Kuwaiti and Emirati ones such as «باجر» and «وايد». Eight of them are in Franco-Arabic, Arabic typed in Latin letters with numbers for sounds, such as “ana 3amel order rakam 39105 men 5 ayam”. Three order numbers are written in Arabic-Indic digits (٨٨٤١٢), as many Gulf customers type them.

Each message has one correct answer for three fields:

  • Intent: one of eight labels: order status, return or refund, price quote, booking, complaint, change delivery, talk to a human, payment issue. Four to six messages per label.
  • Dialect: Egyptian or Gulf.
  • Order number: the number in Latin digits, or nothing when the message has none (12 messages contain one).

Every model got the same instruction: return a JSON object with those three fields plus a one- or two-sentence first reply to the customer, in Arabic script and in the customer’s own dialect. A script scored intent, dialect and order number automatically. We then read all the replies ourselves and marked whether each one was written in the customer’s dialect, and whether it stated something the bot could not know, such as a price, an available slot or “your delivery time has been changed”.

The setup, so you can repeat it:

  • Hardware: an Apple M5 Mac with 16 GB of unified memory. No cloud GPU.
  • Runtime: llama.cpp’s llama-server, build 11669 (0.7.0 on Homebrew), started with --jinja -ngl 99 -c 8192 --reasoning-format auto so each model’s own chat template and reasoning parser are used. llama.cpp added the Jais 3 architecture (called K2 Horizon) on 6 October 2026.
  • Models: IFM’s official 4-bit GGUF files (Q4_K_M) for Jais 3 0.9B, 3.7B and 7B, and Q4_K_M files of Qwen3.5-4B and Qwen3.5-9B, the reference models on IFM’s own cards for the 3.7B and 7B.
  • Settings: each vendor’s recommended sampling. For Jais 3 with reasoning: reasoning effort high, temperature 0.7, top-p 0.95, top-k 20. For Qwen3.5 with thinking: temperature 1.0, top-p 0.95, top-k 20, presence penalty 1.5. Fast modes used each card’s non-reasoning settings.
  • Runs: one run per message per model, with output capped at 6,144 tokens per answer (IFM’s cards allow up to 32,768). The longest Jais 3 answer used 5,804 tokens and none hit the cap; Qwen3.5-4B with thinking hit it twice. We did not run Qwen3.5-9B with thinking on: the 4B already took a median of 82 seconds per message that way, and the 9B generates at about 60% of the 4B’s speed on this Mac.
  • Reading the numbers: results from 40 messages are a strong signal, not a benchmark. A one- or two-message difference between models is noise.

Results: Jais 3 vs Qwen3.5 on 40 customer messages

Model and modeRight intentDialect recognisedOrder number rightReply in customer’s dialectReply stated something unsupportedMedian time per message
Jais 3 3.7B · reasoning on40384036720.7 s
Jais 3 3.7B · reasoning off3933402281.5 s
Qwen3.5-4B · thinking on3621381482.1 s
Qwen3.5-4B · thinking off372240331.9 s
Jais 3 7B · reasoning on40394034128 s
Jais 3 7B · reasoning off3938401672.5 s
Qwen3.5-9B · thinking off402340243.6 s
Jais 3 0.9B · reasoning on343840878 s

All counts are out of 40 messages. “Order number right” includes correctly returning nothing for the 28 messages without one. The last two columns come from our reading of every reply.

Jais 3 vs Qwen3.5 test results on 40 Egyptian and Gulf customer messages

Three things stand out. Intent is the easy part: every configuration except the tiny 0.9B picked the right intent for at least 36 of 40 messages, so any of these models can route a WhatsApp inbox. Order numbers were solved too: whenever a model returned an answer, it pulled all 12 order numbers correctly, including the three in Arabic-Indic digits and the two inside Franco-Arabic, and returned nothing for the messages without one.

Dialect is where the models split. Jais 3 recognised the dialect in 33 to 39 of 40 messages in every configuration, while Qwen3.5 got 22 (4B) and 23 (9B) with thinking off and 21 (4B) with thinking on, mostly by labelling Gulf customers as Egyptian.

Where Jais 3 pulls ahead: dialect

Recognising a dialect and replying in it are different skills, and the gap is wider on the second. With reasoning on, the 3.7B answered 36 of 40 customers in their own dialect and the 7B 34: Egyptian customers got «هنراجع» and «ابعتلي», Gulf customers got «أبشر», «للحين» and «عطنا». Qwen3.5 replied in the customer’s dialect 3 times (4B) and 2 times (9B) with thinking off, and 1 time with thinking on. Most of its replies were formal Modern Standard Arabic, and some were broken: the 4B told one Gulf customer «سأنظف طلبك», which means “I will clean your order”, and sent three replies in Latin letters.

Jais 3 reply in Gulf dialect compared with Qwen3.5 for the same message

Customer wroteJais 3 3.7B, reasoning onQwen3.5-4B, thinking off
ana 3amel order rakam 39105 men 5 ayam w lessa ma weselsh, fen el shohna?تمام، هنراجع حالة الطلب رقم 39105 دلوقتي وهنبلغك بمكان الشحنة.وعليكم السلام، شكراً لتواصلكم معنا. سأقوم بالتحقق من حالة طلب رقم 39105 وأخبركم فوراً.
والله تعاملكم وايد سيء، طلبت من أسبوع وكل ما أتصل يقولون لي باجر باجرنعتذر وايد عن سوء الخدمة. طلبك صار عندنا، أرسل رقم الطلب عشان نتأكد من حالته.سآخذ شكواكم على محمل الجد، وسأتواصل مع فريق الدعم فوراً لحل هذه المشكلة.
الطلب وصل ناقص والمندوب ما رضى يستنى أشيك عليه، شغل مو زيننعتذر عن أي إزعاج، عطنا رقم الطلب عشان نشيك على الشحنة ونصلح الوضع، وبنرد عليك فوراً.عفاكم الله، نقدر نعرف عليكم في هذا الأمر ونسأل المندوب فوراً. شكراً على صبركم.

For a business, this is the difference between a bot that sounds like it belongs to your company and one that sounds like a government form. An Egyptian customer who writes «لسه موصلش» and gets back «لم يصل بعد، يرجى الانتظار» knows immediately they are talking to a machine.

Reasoning on or off: 21 seconds or 1.5 seconds

Reasoning is what makes Jais 3 slow, and for classification you mostly do not need it. With reasoning off, the 7B still picked the right intent for 39 messages and recognised the dialect in 38, at a median of 2.5 seconds per message instead of 28. The 3.7B lost more without reasoning: dialect recognition fell from 38 to 33, and every miss was a Gulf message. What reasoning buys is the reply: the 3.7B wrote 36 replies in the customer’s dialect with reasoning on and 22 with it off; the 7B wrote 34 and 16.

Thinking did not rescue Qwen3.5. With thinking on, the 4B recognised the dialect in 21 of 40, took a median of 82.1 seconds per message, and twice kept thinking until it hit our 6,144-token limit without answering. One booking message used 5,493 tokens, nearly all of it thinking, for a one-line reply.

Jais 3 speed and memory per message on an Apple M5 Mac

For WhatsApp, our results point to a split, with one caveat: IFM’s cards recommend keeping reasoning on and describe the low setting as a research option. In our test, the 7B with reasoning off still classified intent, dialect and order number almost as well as with it on, which is enough for an instant acknowledgement; the 3.7B lost dialect accuracy. Then let a reasoning-on call, or a person, write the substantive reply in the background, where 20 to 30 seconds is acceptable.

The problem every model shares: replies that invent facts

Every configuration, Jais 3 and Qwen3.5 alike, wrote some replies that stated things the bot had no way of knowing. Out of 40 replies we counted between 1 and 8 per configuration; Jais 3 7B with reasoning on had the fewest, though with counts this small the gaps between configurations are a pattern, not a ranking.

The examples are the ones that cost money: a monthly price of 100 riyals (Jais 3 3.7B), 50 riyals (3.7B with reasoning off) and 29.99 riyals (7B with reasoning off) for a subscription whose price appears nowhere in the message; «تم تغيير موعد التوصيل», “your delivery time has been changed”, when nothing had been changed; a clinic slot at 4 pm the customer never asked for; a phone number made of a 0 and an 800; and refunds promised before anyone checked the order.

Qwen3.5’s lower counts with thinking off come with vaguer replies that commit to less. Jais 3 7B did one thing we wish every model did: asked for a price it did not have, it wrote a placeholder, «[السعر]», instead of inventing one.

None of this is a reason to avoid an open model. It is a reason never to let any language model answer customers from its own imagination. The fixes are standard engineering:

  1. Give the model the facts. Look up the order, price list or calendar with a tool call or retrieval before the reply is written, and pass the result in.
  2. Forbid unsupported claims in the prompt and in code. Reject any reply that contains a number, date or price that is not in the message or the data you supplied. A few lines of code catch invented prices and times; invented actions such as «تم تغيير» need the next two rules.
  3. Separate acknowledging from committing. A first reply can say “we’re checking order 52907 now”. Only your system should say “it arrives on Tuesday”.
  4. Keep a human on refunds and complaints. Route those intents to staff with the AI’s summary attached.

What hardware do you need to self-host Jais 3?

Less than you might think for the small models. These are the figures we measured on the 16 GB M5 Mac, with 4-bit files and an 8,192-token context:

Model (4-bit Q4_K_M)File sizePeak memory measuredGeneration speed
Jais 3 0.9B0.67 GB1.6 GB146.3 tokens/s
Jais 3 3.7B3.16 GB4.5 GB38.2 tokens/s
Jais 3 7B5.59 GB5.4 GB22.3 tokens/s
Qwen3.5-4B2.74 GB3.5 GB37.1 tokens/s
Qwen3.5-9B5.68 GB4.9 GB21.6 tokens/s

Memory is the peak resident memory macOS reported for the llama-server process. The model file is memory-mapped, so this can read slightly below the file size. Speed is generation speed in tokens per second. We measured only on the Mac; on any machine, budget at least the model file’s size plus room for the conversation context. The full-precision 7B needs about 18 GB for the weights alone, so it does not fit on a 16 GB machine without the 4-bit file. IFM’s validated serving recipe is SGLang at full precision on a single NVIDIA H100, which is the right shape for many concurrent conversations.

Two more members of the family matter for self-hosting. Jais-ASR, IFM’s Arabic speech recognition model, is also Apache 2.0 and lists 19 dialect codes, including Egyptian (EG), Saudi (SA), Emirati (AE), Kuwaiti (KW) and Qatari (QA). IFM reports a 22.85% average word error rate on the Open Universal Arabic ASR Leaderboard; we did not test it here. If your customers send WhatsApp voice notes, it is the piece to evaluate next.

Jais 3 Uno is a speed-up adapter: IFM’s card for the 3.7B reports 1.67 times faster generation on average with exactly the same output distribution, measured on an H100, with the smallest gains on open-ended chat. It needs a dedicated engine (nano_vllm_uno); standard vLLM, SGLang and Transformers cannot use it.

How to run Jais 3 yourself in ten minutes

On a Mac with Homebrew, or on Linux with a recent llama.cpp build, three steps are enough. These are the same server and API calls we used in the test; there we loaded the downloaded files with -m, and we checked the -hf download command separately with the 0.9B.

1. Install llama.cpp (any build after 6 October 2026 includes Jais 3 support):

brew install llama.cpp

2. Download and serve Jais 3 straight from IFM’s Hugging Face repository. Swap 3.7B for 0.9B or 7B to change size:

llama-server -hf IFM/Jais-3-3.7B-GGUF:Q4_K_M --jinja --port 8080

3. Send a message through the OpenAI-compatible API. The chat_template_kwargs line switches reasoning on, as IFM recommends:

curl http://localhost:8080/v1/chat/completions \
  -H "Content-Type: application/json" \
  -d '{
    "messages": [{"role": "user", "content": "عايز أعرف الأوردر بتاعي فين؟ رقمه 45821"}],
    "chat_template_kwargs": {"reasoning_effort": "high"},
    "temperature": 0.7, "top_p": 0.95, "top_k": 20
  }'

The model’s thinking comes back in reasoning_content and the answer in content. Set "reasoning_effort": "low" for the fast mode; IFM’s cards advise against it except for research, so test it on your own messages first, as we did. Because the server speaks the OpenAI API format, the same endpoint plugs into n8n’s OpenAI Chat Model node (with a custom base URL), LangChain or your own code. For production on a GPU server, use IFM’s vLLM or SGLang recipes from the model card instead.

Should your business use Jais 3?

A self-hosted Jais 3 makes sense when at least two of these are true:

  • Your customers write in dialect, especially a mix of Egyptian and Gulf, and you want replies that sound local.
  • Customer data has to stay on your own servers, in your country or your data centre, because of regulation, a client contract or your own policy. With an open model nothing leaves your network. Our guide to self-hosted vs cloud AI for data sovereignty covers that decision in more depth.
  • Your volume is steady and high, so a fixed server cost beats paying per message to an API.
  • You want to own the system rather than rent a chatbot platform.

Stay with a hosted frontier model when volume is low, when replies need broad world knowledge or long careful writing, or when nobody on your side can run and update a server. A common middle ground is to self-host a small model for triage and routing, and call a larger hosted model only for the conversations that need it.

Whichever model you choose, the work that decides whether a customer-service agent succeeds is the same: connecting it to your orders, catalogue and calendar, adding the guardrails above, and handing off to staff at the right moment. That is the part we build for clients as WhatsApp AI agents for Egypt and the GCC, usually on self-hosted n8n. If you are choosing a platform rather than building, start with our guide to WhatsApp chatbots for Arabic customer support.

Frequently asked questions about Jais 3

Is Jais 3 free for commercial use?

Yes. The Jais 3 0.9B, 3.7B and 7B models and Jais-ASR are published under the Apache 2.0 licence, which allows commercial use, modification and self-hosting. You pay only for the hardware you run them on.

Does Jais 3 understand Egyptian Arabic?

In our test, yes. With reasoning on, the 3.7B model recognised all 20 Egyptian messages as Egyptian, including the Franco-Arabic ones, and answered all 20 in Egyptian dialect. IFM’s model cards for the language models report dialect benchmarks but do not mention Egyptian Arabic by name; the Jais-ASR card does list Egyptian as a supported dialect.

Can Jais 3 run on a laptop?

The 0.9B and 3.7B models run well on a 16 GB Apple silicon laptop at 4-bit, using about 1.6 GB and 4.5 GB of memory in our test. The 7B also fits at 4-bit. Speed is fine for testing and light use; for many simultaneous conversations, use a GPU server.

Jais 3 or Qwen3.5: which is better for Arabic customer service?

For Egyptian and Gulf customer messages, Jais 3, on our test. Both families routed messages well and extracted order numbers perfectly, but Jais 3 recognised the dialect far more often (33 to 39 of 40, against 21 to 23 for Qwen3.5) and, with reasoning on, its 3.7B and 7B were the only models that reliably replied in the customer’s own dialect (36 and 34 of 40). Qwen3.5 is a capable general model; if your traffic is mostly English or formal Arabic, test both on your own messages.

How fast is Jais 3?

On an Apple M5 Mac with 4-bit files, Jais 3 3.7B generated about 38.2 tokens per second and the 7B about 22.3. With reasoning on, that meant a median of 20.7 and 28 seconds per WhatsApp message; with reasoning off, 1.5 and 2.5 seconds. A data-centre GPU is much faster, and IFM reports a further 1.67 times speed-up for the 3.7B with its Uno adapter on a dedicated engine.

Thinking about Arabic AI on your own servers? J. SERVO builds AI agents, WhatsApp AI and self-hosted automation for businesses in Egypt and the GCC, and every project starts with a free technical assessment. Request a free technical assessment or message us on WhatsApp.

ملخص بالعربية

اختبرنا نماذج جايس 3 (Jais 3) المفتوحة، التي نشرها معهد النماذج الأساسية (IFM) وInception42 في أكتوبر 2026، على جهاز Mac بمعالج M5 وذاكرة 16 جيجابايت، باستخدام 40 رسالة واتساب قصيرة: 20 باللهجة المصرية و20 باللهجة الخليجية، منها 8 مكتوبة بالفرانكو. وقارنّاها بنموذج Qwen3.5 الذي تقارن به IFM نماذجها.

حدد نموذج Jais 3 3.7B مع تفعيل التفكير نوع الطلب في 40 رسالة من 40، وتعرّف على اللهجة في 38، واستخرج كل أرقام الطلبات بما فيها المكتوبة بالأرقام العربية الهندية، وردّ على 36 عميلًا بلهجتهم. أما Qwen3.5 مع إيقاف التفكير فتعرّف على اللهجة في 22 و23 رسالة فقط، وجاءت معظم ردوده بالفصحى. يستغرق Jais 3 مع التفكير بين 20.7 و28 ثانية للرسالة، ومن دونه بين 1.5 و2.5 ثانية.

تنبيه مهم: كل النماذج التي اختبرناها اخترعت أحيانًا أسعارًا أو مواعيد، أو ادّعت تنفيذ إجراءات لم تحدث. لذلك يجب ربط أي وكيل لخدمة العملاء ببيانات الطلبات والأسعار الحقيقية، ومنع أي رقم أو سعر لا يأتي من نظامك، وتحويل الاسترداد والشكاوى إلى موظف. ترخيص النماذج Apache 2.0، ويسمح بالاستخدام التجاري والتشغيل على خوادمك الخاصة.

Sources