Custom AI development · UAE

Custom AI trained on your own data.

A build has to beat a hosted call at something. Here it beats it in two places: a labelled set in a language the general models barely saw, and a provable processing boundary.

Tell us what data you hold

What custom AI development is

Where custom AI development pays off.

Most of what is sold as AI development is a prompt on somebody else’s model. A build has to be better than that at something specific, and the something is usually your data.

Your data → your modelDatabaseDocs / PDFsCRM recordsYour dataFine-tune + RAGYour private model“Your refund policyis 7 days.”Your cloud account, your regionGeneric public LLMno link to your dataKnows nothingabout your businessTrained on your data. Owned by you, not rented.

Trained on your own data.

Your documents, your history, your images, labelled. The general models were pretrained on very little Gulf Arabic, so a labelled set drawn from your own bilingual paperwork is an advantage no subscription can sell you.

Runs where you can prove it.

Where the model actually processes the data, written down and demonstrable. There is no general rule here that the data must stay in the country, but there is a transfer question, and it is answered differently depending on where you are registered.

Yours to keep.

The weights, the training code, the retrieval index and the runbook, in your name. A model you cannot retrain is a subscription with a longer contract, and the difference only becomes visible the month you want to change something.

What we build

Six kinds of custom AI build.

Six things get commissioned under one name. Which one you need is decided by the data you already hold, not by the outcome you want.

Custom RAG & search48k chunksRetrieval-augmented pipelineDocsChunkEmbedVector index48,000 embeddingsQueryRetrieveAnswerit answers from your data, with the source attached

Answers from your own documents.

A model that answers from your contracts, policies and filings rather than from what it remembers, with the source shown beside every answer

Output

answers a person can check against the page they came from

RetrievalCited
Document intelligencetrainedheadertabletotalExtraction pipelineOCRscannedLayoutregionsExtractfieldsValidaterulesfield accuracy 98.6%we label your docs, then a model reads them at scale

Reading UAE paperwork.

The documents this market actually runs on, read and extracted: a trade licence, a tax invoice with a registration number, an identity document, a tenancy contract, a bill of lading

Output

fields, not a summary

ExtractionBilingual
Fine-tuned LLMson your dataBase model+ your dataFine-tunedBase vs fine-tunedTask accuracy62% to 89%Format valid71% to 97%trained on 12,000 of your examplesyour tone and your rules, baked into the model

Fine-tuning for your vocabulary.

A model taught your vocabulary and your register, which is the case worth funding when the general one keeps getting your terminology wrong

Output

a model you hold the weights to

Your vocabularyWeights yours
Predictive modelsAUC 0.91Training loss by epochepoch 124Accuracy92.4%AUC0.91F10.88a model tuned on your data, measured before it ships

Forecasting from your own history.

Demand, risk or failure predicted from records nobody else has, evaluated against a held-out period rather than against the months it was trained on

Output

a number with an error bar on it

Held-outMeasured
Computer visionmAP 0.94mAP@500.94Dataset24,800Classes detectedSurface scratch1,240Dent860Print defect540a detector trained on your line, not a stock model

Spotting things in your footage.

Defects, counts or readings from cameras you already run, which is a labelling engagement before it is a modelling one

Output

a labelled set that keeps its value after the model is replaced

Labelling firstYours
Agents & automationorchestratedMemoryGuardrailsTools · 6Eval loopPlannertools, memory and guardrails around a planner that decides

Agents with a narrow job.

A model given tools and a narrow remit, with every action logged and reversible

Output

a bounded agent rather than an open-ended one, because the open-ended ones are the demos

BoundedLogged

Fine-tune it, or retrieve over it

Fine-tune it, or let it read your files.

Both put your data behind the model. They differ in what they need, what they fix, and what happens the week the document changes.

Fine-tuningTeach the model your materialRetrievalLet it read your material
What it needsA labelled set, large enough and consistent enough to teach from.The documents you already have, indexed. No labelling to begin with.
What it fixesVocabulary, register and format. How the model talks about your work.Knowledge. What the model knows about your work, and where it read it.
When the source changesA retraining run, on a schedule somebody has to own.A re-index, which is a job that runs overnight and needs nobody.
What neither fixesData that is wrong, missing or contradicts itself across systems.The same. Both inherit whatever the source documents already say.
Where the data goesInto the training run, wherever that runs, and then into the weights.Into an index you host, and into each call as context you can log.
What we recommend.

Retrieval, for most buyers, most of the time. It answers the question people actually have, which is what the organisation knows rather than how it phrases things, and it survives the documents changing. Fine-tuning earns its cost when the language itself is the problem: a register, a vocabulary or a dialect the general model handles badly, which in this market is a real and specific case. Often the answer is both, in that order. If what you need is a conversational product rather than a model, that is argued separately.

The UAE context

When a build beats a subscription.

Webzenia has worked with Gulf clients since 2018. Three observations, and the first two are the business case for building anything.

  1. 01of 03
    Arabic is a data problemNot a model problem

    General AI models barely learned Gulf Arabic.

    Research on Arabic language and speech models finds the dialects diverge from Modern Standard Arabic in vocabulary, form and structure, and that a shortage of annotated Gulf material is among the largest barriers to accuracy. A Jebel Ali freight forwarder under JAFZA holds exactly the annotated material that is missing.

    Our methodThe labelled set treated as the asset, and kept yours whichever model is current.
  2. 02of 03
    A boundary, not a borderAnd it differs by registration

    Your data can leave the UAE, under conditions.

    Transfer is permitted where the destination offers adequate protection, and otherwise on safeguards, consent or contractual necessity. No adequacy list has been published, so nothing is cleared by reference. A DIFC-registered fund sits outside the federal regime entirely, and mainland is not adequate to it either.

    Our methodThe processing boundary written down against your registration, before architecture.
  3. 03of 03
    A training set expiresOn somebody else’s schedule

    UAE invoices are becoming structured data.

    A document model taught on today’s invoice formats has a known shelf life for that one document type, and the plan should say so rather than discovering it. A Sharjah SAIF Zone manufacturer with years of scanned paperwork is training on a format with an end date attached.

    Our methodEach document type in the training set given an expected life, reviewed annually.

What the engagement covers

Inside an AI build.

Six stages, and the first decides whether the other five are worth starting. Most of what goes wrong in an AI project went wrong in the data.

Data pipeline & prepreadyClean, labelled data before any trainingRows240kLabelled96%Cleaned100%Train / validation / test splittrainvaltestArabic and English in the set, both labelledclean, labelled data in, or the model learns nothing

Checking and labelling your data.

What you hold, how much of it is usable, how it splits by language, and what has to be labelled before anything can be trained

Output

a readiness read, and sometimes the verdict that there is not enough

ReadinessBy language
Model training & fine-tuningrunningTraining run, checkpointed and monitoredfine-tune-v3epoch 18 / 2475%Compute4x A100Loss0.18ETA2h 10mcheckpoint saved every 500 stepstrained to target, checkpointed along the way

Training the model.

The runs, the hyperparameters and the decisions behind them, recorded so a result can be reproduced rather than remembered

Output

a model and the record of how it came to exist

ReproducibleRecorded
Evaluation & benchmarkingbenchmarkedMeasured against a baseline before it shipsv3 (ours)0.92v20.88Baseline0.71we ship the version that measurably wins

Testing against your target.

A held-out set the model never saw and a threshold agreed before training rather than after it

Output

a pass or a fail, and no argument about what good looked like

Held-outAgreed first
DeploymentliveBehind an API, autoscaled and reversibleAPI endpointreplica 1replica 2replica 3canary 5%autoscale 2-8, 1-click rollbackDeployed inside your own cloud accountbehind an API, autoscaled, with a canary and rollback

Deploying where you require.

The model served where your registration requires it to run, with the path the data takes documented rather than described

Output

an architecture diagram a compliance function can read

BoundaryDocumented
Monitoring & retrainingdrift watchWatched for drift, retrained on timePrediction driftretrain thresholdretrain triggeredwhen the world shifts, it retrains itself

Watching it for drift.

Live performance tracked against the evaluation baseline, with a threshold that raises rather than a chart nobody opens

Output

notice that the model is getting worse before a user tells you

DriftThreshold
Handover & enablementyoursYours to run and extendModel carddeliveredAPI docsdeliveredEval suitedeliveredRunbookdeliveredTeam trainingdeliveredthe model, the docs and the know-how, handed over

Handing over everything.

Weights, training code, the evaluation suite, the model card and a runbook, in your accounts

Output

a model your own team could retrain without us, which is the test of whether you own it

WeightsRunbook

Our stack

Built with PyTorch and open models.

Chosen for what each does to the boundary rather than for what it can do. Select one to see where your data ends up.

PyTorch
Why PyTorch

Training and fine-tuning happen here, and the artefact that comes out is a set of weights you hold rather than an account you keep paying for.

How we excel

We record every run and the decisions behind it, so a result can be reproduced a year later by somebody who was not there. A model nobody can retrain is a subscription with extra steps.

Produces weights you holdReproducible laterArtefact
PyTorchWeights
A hosted fine-tuneAn endpoint
Prompting aloneNothing
A vendor’s platformTheirs

How the build runs

From your data to a live model.

The first phase can end the project, and often should. Reading the data first is what stops a model being trained on data that could never support one.

01Weeks 1 to 3Scoped

Reading your data and your registration.

We establish what you hold, how much of it is usable, and how it divides between Arabic and English, because the second number decides whether the language advantage is real. In parallel we read where the entity is registered and what that permits, since a mainland company, a DIFC entity and an ADGM one are answering different questions. Both reads happen before anything is trained.

  • Dataread for volume and quality
  • Languagessplit, not assumed
  • Boundaryset by the registration
02Weeks 4 to 10Built

Setting the target, then training.

The threshold is set before training rather than after, and the model is measured on data it has never seen. The hosted model is benchmarked in the same exercise, as the baseline the build has to beat: where it wins, the honest outcome is that there is no project. Every run and the reasoning behind it is recorded so the result can be reproduced by somebody who was not in the room.

  • Targetagreed before training
  • Baselinethe hosted model
  • Runsrecorded, reproducible
03Month 3 onwardRunning

Deploying it and watching for drift.

The model is served in your own account in a region chosen against your registration, with the data path written down rather than described. Live performance is then tracked against the evaluation baseline, because a model does not fail loudly: it gets slowly worse as the world it was trained on moves, and the first person to notice is usually a customer.

  • Servedin your account
  • Data pathdocumented, not described
  • Driftraised against the baseline

Documented against your registration, so where it processes is a diagram rather than an assurance.

The boundary, in writing
Held-outIn your accountWeights yours

Our commitment

Four promises about the model.

An AI build fails at the data and at the boundary, months before anybody looks at the model. These four are in the scope for that reason.

  • We agree the target before training.

    What good looks like is written down while it can still be argued about, and the model is measured on data it never saw. A result reported against a threshold chosen afterwards has been marked by the person who sat the exam.

  • Where it runs is documented.

    Where the model runs, what leaves it and under what basis, written as a diagram your compliance function can read. Where your registration makes a transfer a question, we answer it before the architecture rather than after the audit.

  • The model and the code are yours.

    Including the labelled set, which outlives every model trained on it and is the part that actually appreciates. The test of ownership is whether your own team could retrain it without us, and we hand over enough that they could.

  • We tell you when to buy instead.

    Often it does, and saying so ends the engagement at a data read rather than at a disappointing launch. A firm that sells custom models and never recommends against one is not giving you an assessment.

Common questions

Custom AI, answered.

Next step

Get your data assessed.

Describe the data you hold and where the entity is registered. We will say what could be built on it, where it would have to run, and whether a hosted model already does the job.

Tell us what you need.

+971
Chat on WhatsApp