Demo-grade
- Naive fixed-size chunking, no metadata
- Top-k similarity search and hope
- Confident answers with no source of truth
- Prompt injection is an open door
- Quality measured by vibes
- Latency and cost discovered in production
Open to new contracts Production AI · Agents · Full-Stack
Senior AI engineer specialising in production RAG, autonomous agents and Azure OpenAI integrations. Retrieval that stays accurate under real documents, grounded answers with citations, and hardening against prompt injection and data leakage.
Live demo · runs in your browser
This is a miniature RAG pipeline answering questions about me — the same shape I ship to clients. Pick a question and watch it retrieve, rerank, and answer with citations you can trace. Notice what it does when the sources don't have an answer.
Try one of these
Sources — knowledge base
Grounded answer
Choose a question to see the pipeline run. Answers are grounded in the source cards above and cite them inline — [1].
Canned data, real behaviour — retrieval, reranking, inline citations and a refusal path when confidence is low. On a client build the sources are your documents and the model is Azure OpenAI.
01The gap
Wiring an LLM to a vector store takes an afternoon. Keeping it accurate, fast and safe once real users and real documents arrive is a different discipline. That second part is my job.
Demo-grade
Production-grade
02Capabilities
Six things clients come back for. Every one of them has shipped and stayed running.
End-to-end retrieval pipelines: ingestion, structure-aware chunking, embedding strategy, hybrid search, reranking and grounded answers with citations you can click through to the source.
Autonomous and tool-using agents that actually complete work — planning loops, tool calling, memory, human handoff and the failure handling that stops an agent looping forever on someone's bill.
Enterprise LLM deployment on Azure — private endpoints, managed identity, quota and region strategy, streaming, retries and cost controls that stand up to a procurement review.
Hardening live systems against prompt injection, jailbreaks and data leakage. Input/output filtering, tenant isolation on retrieval, PII redaction and permission-aware document access.
Forecasting, recommendation and risk models that go past the notebook — feature pipelines, training, evaluation, and deployment into the product where the prediction actually gets used.
The product around the model: Python/FastAPI services, SQL and vector data layers, auth, streaming front-ends, and cloud deployment — so the AI ships as software, not as a script.
03How I build
Every retrieval system I deliver follows this shape. Ingestion is offline and repeatable, serving is measured, and the guardrail layer sits in the request path — never bolted on afterwards. Select any stage to see what happens there, what I tune, and what breaks if you get it wrong.
Stage 8 of 10
What happens here
What I tune
Get it wrong and…
What gets measured
Retrieval hit-rate, groundedness, answer latency (p50/p95), tokens per answer, cache hit-rate, refusal rate.
What ships with it
An eval set built from your real questions, a regression gate in CI, and documentation your next engineer can actually read.
What you own
Everything. Your cloud, your keys, your repo. No black boxes and no dependency on me to keep it running.
04Portfolios
Each discipline has its own portfolio page with delivered work and reference systems — and its own URL, so you can share exactly the one that fits: wahabazhar.site/vision, /rag, /agents…
Reference products, not clients. The companies below are independent and unaffiliated with Wahab Azhar. They are listed purely as recognisable examples of each system class. Actual engagements are in Selected work.
Multi-source retrieval across connected company apps — permission-aware and citation-backed.
Systems of this type
Autonomous workers that run long tasks against a CRM, a ticket queue or a back-office process.
Systems of this type
Classification at volume, taxonomy building, feedback clustering and signal extraction from speech or text.
Systems of this type
Detection, grading and measurement from image and video streams, including edge inference.
Systems of this type
Low-latency speech pipelines — real-time transformation, synthesis and moderation on live audio.
Systems of this type
Matching and optimisation, fraud and identity scoring, calculation engines and batch inference.
Systems of this type
05Selected work
Real engagements with real hours behind them. Client names withheld under contract — every figure below is as recorded on the Upwork profile.
The longest-running engagement on my profile, across two contracts and a year of continuous work — built, shipped, hardened, and still being extended.
01The problem
A retrieval system that answered well in testing and badly in production. Real documents were longer, messier and more repetitive than the sample set; users asked questions the chunking strategy had never anticipated; and nobody could tell whether a given answer was grounded or invented.
02The work
Rebuilt ingestion around structure-aware chunking with metadata enrichment. Moved retrieval to hybrid vector + keyword with a reranking pass. Added a citation contract so every claim resolves to a source. Then hardened the live system against prompt injection and data leakage once it was in front of real users.
03Where it stands
Still running after 1,900+ hours, renewed continuously, and extended into new document classes as the client's needs grow. The eval harness added in phase one is now the gate every prompt change passes through.
Senior RAG engineering on a legal search product: a legal taxonomy over the corpus and an accuracy bar high enough that answers could be relied on in practice.
“Excellent work, communication and documentation. They delivered a working product exactly as I asked for and it was just an A+ experience all-around.”
A long data-science engagement — feature pipelines, model iteration and integration — run as an embedded member of the client's team rather than a hand-off.
“Very knowledgeable regarding data science and a great partner to have on the team. I'd highly recommend him.”
A 331-hour build spanning recommendation, conversational search and automation, delivered across nearly a year of continuous work.
“Diverse and intense effort into delivering the project. Use them for all your AI needs.”
A conversational agent running on Meta's messaging surfaces — intent handling, product lookup and human handoff, built to survive the volume and the weirdness of public DMs.
Two engagements on the agent side: consulting on agent architecture for a client's roadmap, and building autonomous agents with planning loops, tool use and safe termination.
Customer-support automation, healthcare ML, supply-chain optimisation, financial risk analysis, real-estate assistants, recommendation engines, executive AI assistants on self-hosted vLLM, and enterprise full-stack Python.
See the full contract history06Proof
Wahab has been extremely easy to work with, and very professional. His expertise has been invaluable in helping us to deliver this project.
Delivered a working product exactly as I asked for and it was just an A+ experience all-around. I will be hiring Wahab again.
He came through brilliantly on this time-sensitive project — real-time responses and a clear improvement to the overall customer experience.
His expertise in NLP and ChatGPT API integration was evident throughout the project.
Responsive, knowledgeable, and delivered as expected. Would happily work with him again.
Well-designed model — a great job with demand prediction, inventory management, and improving logistics.
Endorsements awarded by clients on completed Upwork contracts.
07Process
No discovery theatre. You get something working early, then we make it correct.
We agree what “good” means in numbers before any code — accuracy target, latency ceiling, cost per answer. Then I measure where you are today so improvement is provable, not asserted.
One narrow path through the whole system in production shape — ingestion to cited answer. Real infrastructure, real data, small scope. It's running in week one, not month two.
Retrieval strategy, reranking, prompt structure and guardrails — each change scored against the eval set. Nothing ships on a hunch, and regressions get caught before your users find them.
Documentation, runbooks and a walkthrough with your team. Clients keep me on for years — but never because they'd be stuck without me.
08Before you ask
Answered up front, so the first call can be about your problem instead of my terms.
Hourly for open-ended systems work where the shape will change as we learn, fixed-price for well-defined deliverables. Rates typically land between $30 and $60 an hour depending on scope and depth. A fixed-price number comes after a scoping conversation, never before — quoting blind is how both sides end up unhappy.
I run one or two contracts at a time deliberately, so availability is usually one to two weeks out. If your problem is urgent, say so in the first message — I'd rather tell you I can't start than take the contract and stall it.
You do, entirely. Work happens in your repo, on your cloud, with your keys. No proprietary wrapper you have to keep licensing, and no component only I understand. The handover is part of the contract, not a favour at the end of it.
Yes — that constraint is most of what I do. Azure OpenAI with private endpoints and managed identity keeps inference inside your boundary, and where a hosted model is off the table entirely I've deployed open-weight models on self-hosted vLLM. Retrieval is built permission-aware from the start, so a query can't reach a document the user isn't cleared for.
That's a large share of my work. Inheriting a RAG system that half-works is normal, and the first step is always the same: build an eval set from your real questions so we can see what's actually broken before touching anything. Rewrites are a last resort, not an opening move.
An eval set built from your questions, a regression gate in CI, guardrails in the request path, tracked latency and cost per answer, monitoring you can read, documentation and a runbook. If a system has none of that, it isn't in production — it's just deployed.
No. You contract with me and I do the work. On a couple of larger builds I've brought in help with the client's knowledge, but the engineering accountability stays with me.
I've run contracts with US, EU and APAC clients concurrently and work async-first, with real overlap scheduled where it matters — standups, demos, incidents. You'll get written updates you can read on your own clock rather than a meeting you have to attend on mine.
09About
My first 100 contracts were creative — book covers, illustration, brand packaging. Clients kept saying the same things: patient, communicative, solves the actual problem. Then I moved into machine learning and it turned out the hard part was the same. Understanding what someone genuinely needs, and shipping it without drama.
Today I work almost exclusively on production AI: retrieval systems, agents and the Python services around them. The design years are why my systems come with diagrams your CTO can read and documentation your next engineer won't curse.
I take a small number of contracts at a time, and most of them run for months. If you're looking for someone to disappear with a spec and return with a surprise, I'm the wrong hire.
10Next step
Send the problem — a retrieval system giving wrong answers, an agent that loops, an LLM feature stuck at 80% — and I'll tell you honestly whether I'm the right person and what it would take. No pitch deck, no discovery call to book a discovery call.
What to put in the first message
That's enough for a real answer. No intake form, no call to book a call.
Typically replies same day · Working across US, EU and APAC hours