Small Model Testing – Local LLM Dubai – 2026

Llama 3.2 3B vs Qwen 2.5 1.5B: A Local LLM Shootout for Dubai B2B Workflows

The Orange Club AI Integration Practice 12 min read

TL;DR

In our Llama vs Qwen Dubai test, Qwen 2.5 1.5B was faster on almost every task – sometimes by 5x – and cost half the RAM. Llama 3.2 3B produced more complete prose and handled ambiguous input with cleaner syntax compliance. Neither is universally better. But before you choose between them, read the second half of this post: most of the failures in our initial tests were prompt failures, not model failures. Adding “format”: “json” to the Ollama API call fixed fence wrapping, broken arrays, and date hallucination in one shot. The model you pick matters less than how you talk to it.

There is a question we get asked regularly at The Orange Club: “What is the smallest model I can actually use in production?”

Not the biggest, most capable model. The smallest one that still does the job.

It is the right question. Small models mean lower hardware requirements, faster inference, lower infrastructure cost, and the ability to run multiple models in parallel on the same machine. For high-frequency B2B automation workflows in Dubai – email classification, invoice extraction, lead routing – a 1.5B or 3B parameter model that runs reliably beats a 70B model that saturates your hardware and queues requests.

We run Qwen in production already. It is the foundation of Orange Nano, our on-premise model for high-frequency structured tasks – the model that cleared an aviation client’s classification queue in the same operational window a rate limit failure appeared. But we had not formally stress-tested the publicly available base models against each other on tasks that mirror what UAE businesses actually need.

So we did. Six tests. Two models. Real outputs. No cherry-picking.


The Models

Both models run on our Ollama instance at Q4_K_M quantization – the standard production quantization level that balances quality and inference speed.

Llama 3.2 3BQwen 2.5 1.5B
FamilyMeta LlamaAlibaba Qwen
Parameters3.2B1.5B
QuantizationQ4_K_MQ4_K_M
Model size on disk~2.0 GB~0.99 GB
ArchitectureDense transformerDense transformer

The size difference is material. Qwen 2.5 1.5B fits in under 1GB. On a machine where you are running multiple services, that matters – you can run Qwen alongside other models or workloads that Llama 3.2 would crowd out.


Test 1: Instruction Following

The task: Act as a Dubai logistics company AI assistant. A client asks about shipping 3 pallets of medical equipment from Dubai to Riyadh. Reply in 3 bullet points, professional tone.

This is the baseline. Can the model follow instructions, stay in role, and produce output a business would actually send?

Llama 3.2 3B Output – 26,090ms

- Customs Clearance: We require your company's official commercial invoice,
  certificate of origin, and bill of lading to facilitate customs clearance
  in both Dubai and Saudi Arabia.
- Documentation and Packaging: Please prepare the medical equipment for
  shipping by packing it securely. We recommend obtaining a Certificate of
  Free Sale (CFS) to ensure compliance with Saudi Arabian regulations.
- Shipping Method and Cost: We can provide quotes for various shipping
  options, including air freight and land transportation...

Qwen 2.5 1.5B Output – 5,004ms

- Please ensure you have all documentation required by Saudi Arabia,
  including the International Health Certificate (IHC).
- Verify that each pallet is properly packed with appropriate cushioning
  and securing materials.
- Confirm with your airline or shipping partner that they are prepared
  for transporting medical equipment internationally.

What happened: Llama produced a full professional email – subject line, salutation, sign-off – when asked for 3 bullet points. It ignored the format instruction while producing genuinely good content, including correct documentation specifics (CFS, bill of lading, certificate of origin). Qwen followed the instruction precisely: 3 bullets, no padding. The content is shallower but the format compliance is exact.

For a workflow where output goes directly into an automated system, Qwen wins on format reliability. For a workflow where output goes to a human, Llama’s richer response is more useful – even if it ignored the format.

Speed Differential

5.2x faster for Qwen on this test.


Test 2: Structured JSON Extraction

The task: Extract vendor name, invoice number, date, line items, subtotal, VAT, total, and payment terms from a UAE invoice into valid JSON. Return ONLY JSON, no explanation.

This is the core use case for Orange Nano in production – structured extraction from business documents.

Llama 3.2 3B Output – 14,769ms – BROKEN JSON

{"vendor_name": "ABC Trading LLC", "invoice_number": "INV-2026-00892",
"invoice_date": "2026-07-14", "line_items": [{"item_quantity": 10,
"item_description": "Office chairs", "unit_price": 450}],
["item_quantity": 2, "item_description": "Conference tables", "unit_price": 2200]},
"subtotal_aed": 8900, "vat_aed": 445, "total_aed": 9345, "payment_terms": "30 days"}

Qwen 2.5 1.5B Output – 10,041ms – VALID JSON

{
  "vendor_name": "ABC Trading LLC",
  "invoice_number": "INV-2026-00892",
  "invoice_date": "14 July 2026",
  "line_items": [
    {"item_type": "Chair", "quantity": 10, "price_aed": 450},
    {"item_type": "Table", "quantity": 2, "price_aed": 2200}
  ],
  "subtotal_aed": 8900,
  "vat_aed": 445,
  "total_aed": 9345,
  "payment_terms": "30 days"
}

What happened: Llama produced broken JSON. The second item in the line_items array is malformed – it uses an opening bracket instead of a brace, making the output unparseable by any standard JSON parser. This would cause a hard failure in any automated pipeline that calls JSON.parse(). It also normalised the date to ISO 8601, which is arguably better behaviour, but the broken array structure makes the output unusable regardless.

Qwen produced valid, parseable JSON. It wrapped the output in markdown code fences despite being told “no explanation” – a minor formatting deviation – but the JSON itself is structurally correct and would parse cleanly after stripping the fences.

Production Impact

For any production workflow that depends on JSON parsing, Llama’s output on this test is a hard fail. Qwen passes.


Test 3: Email Classification

The task: Classify an email into one of six categories and return a JSON object with category, confidence, and one-sentence reasoning. JSON only.

This is the classification task Orange Nano handles at volume for the aviation client – the same task where performance at scale matters more than depth per call.

Llama 3.2 3B Output – 6,323ms

{
  "category": "service_request",
  "confidence": "high",
  "reasoning": "The email expresses a request for completion of a quotation
  and a deadline for contract delivery, indicating a service-related inquiry."
}

Qwen 2.5 1.5B Output – 3,599ms

{
  "category": "service_request",
  "confidence": "high",
  "reasoning": "The email is a formal request for confirmation of receipt
  and action on an ongoing project (warehouse fit-out quotation)."
}

What happened: Both models got the classification correct. Both returned high confidence. Both produced valid JSON – though Qwen again wrapped in markdown fences. The reasoning quality is comparable, with Llama’s slightly more precise on urgency and Qwen’s a softer read of the same email.

Both Correct

Qwen is 1.8x faster on this task. At the volume Orange Nano handles – 100+ classifications per day – that speed difference compounds significantly across a working week.


Test 4: Arabic-English Mixed Input

The task: Extract company name (English and Arabic), total amount, VAT amount, and currency from a bilingual invoice snippet. Return ONLY JSON matching a provided schema.

UAE business documents are routinely bilingual. A local LLM that cannot handle Arabic field values is not production-ready for the UAE market.

Llama 3.2 3B Output – 6,744ms

{
  "company_name_en": "",
  "company_name_ar": "شركة الخليج للتجارة",
  "total_amount": 15750,
  "vat_amount": 787.5,
  "currency": "AED"
}

Qwen 2.5 1.5B Output – 4,604ms

{
  "company_name_en": "",
  "company_name_ar": "",
  "total_amount": 15750,
  "vat_amount": 787.50,
  "currency": "AED"
}

What happened: This is the starkest result of the six tests. Both models correctly extracted the numeric fields. On the Arabic company name, the results diverge completely.

Llama correctly extracted the Arabic company name and left the English field empty – which is actually a failure too, since “Gulf Trading Company” is plainly in the source text. But it handled the Arabic script and placed it in the right field. Qwen left both name fields empty entirely.

Bilingual Gap

For UAE workflows where Arabic company names appear in invoices, contracts, or vendor records – which is essentially all of them – this is a meaningful gap. Neither model fully passed this test, but Llama’s partial pass is more useful than Qwen’s complete miss.


Test 5: Multi-Step Reasoning / Lead Routing

The task: Act as a CRM routing agent. Score a lead 1-10, assign it to a sales team, set urgency, and draft a one-sentence first response. Return ONLY JSON.

This tests whether the model can hold multiple decision criteria simultaneously and produce structured output that reflects actual business logic.

Llama 3.2 3B Output – 8,161ms

{
  "lead_score": 9,
  "team_to_route": "real_estate_specialist",
  "urgency_level": "high",
  "first_response": "Reach out to the real estate specialist team to discuss
  AI automation possibilities with a pilot ready within 60 days."
}

Qwen 2.5 1.5B Output – 4,350ms

{
  "lead_score": 8,
  "sales_team": "enterprise_uae",
  "urgency_level": "high",
  "first_response_suggestion": "Route to the enterprise_uae team as they
  specialize in large-scale enterprise solutions, particularly for
  companies like Emaar Properties."
}

What happened: Both models scored the lead correctly as high-urgency. The routing decision is where they diverge. Llama routed to real_estate_specialist, the more contextually aware choice given the property management use case. Qwen routed to enterprise_uae, defensible on company size alone but ignoring the sector context.

Qwen also used different field names than requested – a schema compliance deviation that would require handling in any downstream system expecting consistent field names.

Result

Llama’s routing decision shows better contextual reasoning. Its schema compliance is also cleaner.


Test 6: Schema Compliance Under Ambiguous Input

The task: Extract vendor, amount, date, status, and notes from a deliberately vague, poorly formatted text. Return valid JSON matching an exact schema. Use null for fields that cannot be determined.

This is the stress test. Real-world inputs are not clean invoices with clear field labels. A model that only works on well-formatted input is not production-ready.

Llama 3.2 3B Output – 6,498ms

{
  "vendor": "Ramadan Trading",
  "amount": 3500,
  "date": "2023-06-00",
  "status": "unpaid",
  "notes": "still haven't paid it. they called twice."
}

Qwen 2.5 1.5B Output – 5,399ms

{
  "vendor": "ramadan trading",
  "amount": 3500,
  "date": "2023-06-XX",
  "status": "unpaid",
  "notes": "got invoice, think it was around 3 or 4 thousand dirhams
  maybe 3500? still haven't paid it. they called twice."
}

What happened: Both models made the same reasonable inference on amount. Both correctly identified status as unpaid. Neither hallucinated a vendor that wasn’t there. The date handling is revealing: the correct response was null since no specific date is determinable, and neither model returned it. Llama’s invalid date is at least clean JSON; Qwen’s included an inline comment that would break JSON validity in a stricter parser.

The notes field shows a meaningful difference: Qwen preserved more of the original uncertainty, which is actually more useful for a human reviewing the record. Llama’s notes are tighter but lose the ambiguity present in the source.


The Full Results

TestLlama 3.2 3BQwen 2.5 1.5BWinner
T1 – Instruction followingRich content, ignored formatExact format, shallower contentDraw
T2 – JSON extractionBroken JSONValid JSON, minor fence wrappingQwen
T3 – Email classificationCorrect, clean JSON, 6.3sCorrect, fence-wrapped, 3.6sQwen
T4 – Arabic-English inputArabic name extracted, EN missedBoth names missedLlama
T5 – Lead routingBetter routing, clean schemaWeaker routing, schema deviationLlama
T6 – Ambiguous inputInvalid date, clean JSONInvalid date, comment breaks JSONLlama
MetricLlama 3.2 3BQwen 2.5 1.5B
Avg response time~11,431ms~5,500ms
Fastest test6,323ms (T3)3,599ms (T3)
Slowest test26,090ms (T1)10,041ms (T2)
Speed advantage~2x faster overall
JSON parse failures1 (T2 broken array)1 (T6 inline comment)
Schema field deviations01 (T5 field names)
Arabic handlingPartialFailed
Model size2.0 GB0.99 GB

What This Means for Local LLM Deployment in Dubai

Use Qwen 2.5 1.5B when:

  • Throughput is the primary constraint. At roughly 2x the speed of Llama on equivalent hardware, Qwen handles twice the classification or extraction volume per hour.
  • Your inputs are clean and well-formatted. Qwen performs well on structured extraction where the input document is predictable.
  • Hardware is constrained. At under 1GB on disk, Qwen runs on hardware that Llama 3.2 3B would strain.

Use Llama 3.2 3B when:

  • Arabic-English handling matters. This is the clearest differentiator in the test results. For UAE invoice processing, vendor management, or any workflow where Arabic script appears in structured fields, Llama is the safer choice at this model size class.
  • Routing logic requires contextual reasoning. Llama’s additional parameters appear to contribute meaningfully to reading sector context rather than just pattern-matching surface features.
  • Input quality is unpredictable. Llama produced cleaner JSON failure modes on the ambiguous invoice test – failures that are parseable even if semantically incorrect.

What neither model should handle alone:

Both models are 1.5B-3B parameter base models at Q4_K_M quantization. They are not fine-tuned for UAE-specific business workflows. The gaps this test surfaces – Arabic field extraction, date handling on ambiguous input, consistent schema field naming – are the exact gaps that fine-tuning addresses. Orange Nano, our production Qwen-based model, is LoRA fine-tuned on client-specific document taxonomies, which is why it hits above 95% classification accuracy on real aviation workflows rather than the more variable results you see from the base model here.

These base model tests are useful for understanding where each architecture starts. They are not a ceiling – they are a starting point.


The Hardware Context

Both models ran on our Ollama instance on private UAE-hosted infrastructure, accessible via HTTPS behind Cloudflare. The response times above reflect real network round-trips plus inference time, not localhost benchmarks.

For inference speed comparisons, the relevant hardware baseline is whatever you are running locally. Community benchmarks for Q4_K_M models in the 1.5-3B range on typical production server hardware (16-32GB RAM, no GPU or partial offload) put inference in the 15-40 tokens/second range depending on context length and hardware. The response time differences between Llama and Qwen in these tests are driven primarily by model size – more parameters means more compute per token at equivalent quantization.

If you are evaluating local LLM hardware for UAE deployment, see our Gemma 4 26B evaluation for the hardware baseline and quantization guidance that applies to larger models. The same principles hold at smaller scale: RAM headroom matters, partial GPU offload helps, and Q4_K_M is the right starting quantization for production evaluation.


Part Two: What Prompt Engineering Actually Fixed

The results above are the raw baseline – first-attempt prompts, no optimisation. We then ran three additional rounds of targeted prompt changes and one structural fix (Ollama’s native JSON mode) to find out which failures were model limitations and which were prompt limitations. The answer matters for anyone building a pipeline: you do not want to swap models when the real fix is a three-word prompt change.

The Fastest Fix: format json

Ollama supports a native JSON mode via a single additional field in the API request:

Ollama API – Native JSON Mode

curl -s https://your-ollama-host/api/generate -d '{
  "model": "qwen2.5:1.5b",
  "format": "json",
  "prompt": "Your prompt here",
  "stream": false
}'

This enables grammar-constrained decoding at the Ollama level – the model’s output is forced to conform to valid JSON structure before tokens are emitted. It is not fine-tuning, not a system prompt trick, and not post-processing. It is a constraint applied during generation itself.

The results were immediate and significant.

Qwen’s markdown fence wrapping: fixed in one shot. Every test that previously returned fenced JSON returned clean raw JSON with format json enabled. No prompt changes required.

Llama’s broken array syntax: fixed with format json plus a few-shot example. The format flag alone was not enough for the nested array case – Llama still duplicated the line_items key in round 3. Adding a concrete correct example to the prompt fixed it in round 4:

Round 4 Prompt Fix

Example of correct output:
{"vendor_name": "ACME", "line_items": [{"description": "Chair",
"quantity": 1, "unit_price": 100}, {"description": "Table",
"quantity": 2, "unit_price": 200}]}

All line items go into ONE line_items array - do not repeat
the line_items key.

The lesson: format json fixes syntax. A few-shot example fixes semantics. For complex nested schemas, you need both.

Llama 3.2 3B fixed JSON extraction output llama3.2_3b_fixed_extraction.json curl -s https:// /api/generate -d ‘{“model”:”llama3.2:3b”,”format”:”json”,…}’ // format json + few-shot array example – round 4 { “vendor_name”: “”, “invoice_number”: “INV-2026-00892”, “line_items”: [ {“description”: “Office chairs”, “quantity”: 10, “unit_price”: 450}, {“description”: “Conference tables”, “quantity”: 2, “unit_price”: 2200} ], “subtotal_aed”: 8900, “total_aed”: 9345 } Valid JSON – one line_items array, no repeated key – 23,366ms

Llama 3.2 3B round 4 output – valid JSON after adding format json and a concrete filled example. Note the array fix worked, but vendor_name still came back empty even though “ABC Trading LLC” was plainly in the source text – a separate extraction gap the array fix did not touch.

Date null handling: fixed by format json plus an explicit negative rule. Neither model returned null for an ambiguous date across two rounds of prompt tweaking. The fix required two things together: the format flag and a rule phrased as a specific negative – not just “use null if unknown” but “sometime in june is NOT a specific date – use null.”

A Genuine Model Limit

Qwen’s date field returned null correctly after the fix. Llama still hallucinated a date after four rounds. Llama’s date hallucination on ambiguous input is a confirmed hard limit at this parameter size without grammar-constrained decoding at the schema level (Outlines, llama.cpp JSON grammar) – format json enforces valid JSON structure but not field-level constraints like “this field must be null when uncertain.”

Date null handling: Llama fails, Qwen passes SAME PROMPT, SAME FIX APPLIED – DATE NULL HANDLING TEST Llama 3.2 3B – llama3.2:3b “date”: “2024-06-01” Invented a specific date the source text never gave. Wrong year, wrong day. 7,288ms – 4 rounds – still failing Qwen 2.5 1.5B – qwen2.5:1.5b “date”: null Correctly returned null per the rule – “sometime in june” is not a specific date. 8,718ms – 3 rounds – passed

Identical prompt, identical fix (format json + explicit negative rule), applied to both models on the same ambiguous date input. Qwen complied. Llama did not – a real per-model limitation, not a prompting gap.


What Prompt Changes Fixed (Without format json)

T1 – Llama format compliance: Fixed in round 2 by replacing “Reply in 3 bullet points” with an explicit negative list (“No greeting, no sign-off, no subject line. Start immediately with the first bullet”) plus a literal format template. The model needed to see what not to include, not just what to include.

T3 – Qwen classification: This one took four rounds. The original prompt just listed category names. Qwen returned the correct answer in round 1, broke in round 2 when formatting constraints crowded the prompt, then landed the wrong answer twice more before round 4 fixed it with explicit category definitions:

Category Definitions That Fixed T3

- service_request: customer has an existing relationship and is
  requesting action (sending a contract, scheduling, proceeding
  with a quoted job)
- complaint: customer is unhappy or raising a problem

The definition of service_request – with concrete examples of what it looks like – is what finally produced a stable correct classification. At 1.5B parameters, Qwen needs the decision logic spelled out, not just the category names. This is the clearest signal in the entire test series that small models require more explicit prompting than larger ones.

Qwen 2.5 1.5B fixed classification output qwen2.5_1.5b_classification_round4.json curl -s https:// /api/generate -d ‘{“model”:”qwen2.5:1.5b”,”format”:”json”,…}’ // 6 category definitions with examples – round 4 { “category”: “service_request”, “confidence”: “high”, “reasoning”: “There is a request for action, sending a contract by Thursday due to the board deadline.” } Correct category, stable across reruns – 6,755ms – round 4 of 4

Qwen 2.5 1.5B’s round 4 output once category definitions replaced bare category names. Same task as round 1, materially more reliable result.

T5 – Qwen schema field names: Fixed by adding “Return EXACTLY this structure with EXACTLY these field names – do not rename any field” plus showing the template with literal field names. Qwen was renaming fields because it was inferring better names from context.

T5 – Llama lead routing: Fixed by adding a routing rule directly: “if the company operates primarily in real estate or property, prefer real_estate_specialist over enterprise_uae even if the company is large.” Without the rule, Llama’s reasoning was contextually aware but inconsistently applied.


What Four Rounds of Prompt Engineering Did Not Fix

T4 – Arabic Company Name Extraction

Neither model successfully extracted both the Arabic and English company names across any round, with any prompt variation, with or without format json. This is not a prompt problem. At 1.5B-3B parameters, these models have limited multilingual capacity in their base weights. For bilingual UAE document workflows, the options are: use a larger model, use a model with stronger Arabic training, or fine-tune on bilingual extraction examples.

Llama T6 – Date Null Compliance

Four rounds, four different prompt formulations, format json enabled – Llama kept returning an invented date. The model’s tendency to fill uncertain fields with plausible values rather than null appears to be baked into its instruction tuning at this parameter count. Addressing it properly requires either a JSON Schema grammar constraint at the decoding level or fine-tuning on null-handling examples.

TestRound 1 failureFixRounds
T1 Llama formatWrote full emailExplicit negative instructions + template2
T2 Qwen fencesMarkdown wrappedformat json3
T2 Llama arrayBroken bracket syntaxformat json + few-shot example4
T3 Qwen classificationWrong categoryExplicit category definitions4
T5 Qwen field namesRenamed schema fields“Do not rename” + literal template3
T5 Llama routingInconsistent routingExplicit routing rule2
T6 date null (Qwen)Invalid date stringformat json + explicit negative rule3
T4 Arabic extractionBoth names missedNot fixed – model limitation
T6 date null (Llama)Invented dateNot fixed – model limitation

The pattern is consistent: formatting failures (fences, field names, schema structure) are prompt problems. Semantic failures on ambiguous or multilingual input are model problems. Know which you are dealing with before you start iterating.


The Practical Prompt Checklist

Based on four rounds of iteration, these are the prompt patterns that reliably improve output quality for both models on structured B2B tasks.

For any JSON output task:

  • Always add format json to the API request – it is the single highest-value change
  • Provide a filled example of the correct output structure, not just an empty template
  • Specify field names explicitly and tell the model not to rename them

For classification tasks:

  • Define each category with a one-line description and at least one concrete example
  • Keep formatting instructions out of the classification prompt – they compete for attention at small model sizes

For extraction with optional or null fields:

  • Phrase null rules as specific negatives, not general permissions
  • For enum fields, list the exact allowed values and add “no other values allowed”

For nested schemas:

  • Show a complete filled example, not just the schema
  • For arrays specifically: state that all items go into one array and the key is not repeated

The Verdict

Llama vs Qwen for Dubai B2B Automation

Most of the failures in round 1 were fixable. Qwen’s fence wrapping – gone with format json. Llama’s broken array syntax – fixed with format json and a concrete example. Qwen’s classification instability – fixed with explicit category definitions. These are not model weaknesses, they are prompting gaps, and closing them took one to four iterations per task.

What was not fixable through prompting alone: Arabic-English bilingual extraction for both models, and date null compliance for Llama. These are genuine hard limits at this parameter size class that require either a larger model or fine-tuning.

Qwen 2.5 1.5B is the right choice for high-frequency structured tasks – invoice extraction, email classification, lead triage – where throughput matters and inputs are reasonably predictable. It is 2x faster, half the size, and with the right prompt produces clean parseable JSON reliably.

Llama 3.2 3B is the right choice when contextual reasoning matters more than speed – nuanced routing decisions, ambiguous input where richer notes are valuable, and any workflow with Arabic text in structured fields.

For most Dubai B2B automation workflows, start with Qwen, add format json, write explicit prompts with category definitions and field examples, and benchmark on your actual data before moving to a larger model. The step from base model to production is prompt engineering first, fine-tuning second, and model upgrade third – in that order.


Run These Tests Yourself

All six tests were run via curl against a live Ollama instance. If you have Ollama running locally or on a UAE server, you can reproduce every result in this post.

Reproduce This Test

# Confirm your models are available
curl -s https://your-ollama-host/api/tags | jq '.models[].name'

# Run a classification test - note format json for clean output
curl -s https://your-ollama-host/api/generate -d '{
  "model": "qwen2.5:1.5b",
  "format": "json",
  "prompt": "Classify this email... [your prompt]",
  "stream": false
}' | jq '{model: .model, response: .response, duration_ms: (.total_duration / 1000000 | round)}'

The format json field is the single most impactful change from our test iterations. Add it to every structured output task from day one.

Frequently Asked Questions: Llama vs Qwen Dubai

Which is better for email classification in Dubai – Llama 3.2 3B or Qwen 2.5 1.5B?

For high-frequency email classification where throughput matters and input format is controlled, Qwen 2.5 1.5B is the faster and more resource-efficient choice. Both models achieved correct classification on our test email. Qwen was 1.8x faster on the classification task.

Can Qwen 2.5 1.5B handle Arabic text in UAE business documents?

Not reliably at base model level. In our test, Qwen failed to extract both the Arabic and English company names from a bilingual invoice snippet. Llama 3.2 3B extracted the Arabic name correctly while missing the English. For Arabic-English mixed workflows, validate both models carefully against your specific document types before committing.

What causes Llama 3.2 3B to produce broken JSON, and how do you fix it?

On our structured extraction test, Llama produced a malformed JSON array – using an opening bracket instead of a brace for the second array element. This is a known behaviour in smaller dense models on complex nested schemas: the model loses track of bracket depth during generation. The fix is two-step: add format json to the Ollama API request, and provide a concrete filled example of the correct array structure in the prompt. Both are needed for nested schemas.

How does Qwen 2.5 1.5B compare to the base Qwen model in Orange Nano?

Orange Nano is built on Qwen and LoRA fine-tuned on client-specific document taxonomies and classification schemas. The base Qwen 2.5 1.5B model tested here is untuned. The fine-tuning is what drives Orange Nano’s higher classification accuracy on production aviation workflows – the base model is the starting architecture, not the finished system.

How many prompt iterations does it typically take to get reliable structured output from these models?

Based on our test series: one to two iterations for formatting failures (fence wrapping, bullet format, field naming), two to four iterations for semantic failures (category classification, routing logic, enum compliance). The fastest single fix across all tests was adding format json to the API call. If you are spending more than four prompt iterations on the same failure, you are likely hitting a model limitation rather than a prompt limitation.

Is a 1.5B or 3B model sufficient for production B2B AI automation in Dubai?

For high-frequency structured tasks – classification, extraction, routing – yes, with the right validation layer and fine-tuning. For complex multi-step reasoning, long-context document processing, or Arabic-first workflows, see our Gemma 4 26B evaluation for what a larger local model adds.

Building AI Integration for Your Dubai Business?

The Orange Club designs and deploys AI integration solutions across Dubai and the UAE – from local LLM evaluation and fine-tuning to full enterprise system integration. If you are choosing between small models or need a production-grade AI integration built to UAE compliance standards, talk to our team.

See Our AI Integration Services →

The Orange Club – author

Leave a Reply

Your email address will not be published. Required fields are marked *

Connecting...