Available now · Remote or Istanbul

Mohamd
Bouhemadi

محمد أحمد الطالب بوحمادي

Applied AI / LLM Engineer · Tool Calling & RAG · Fine-Tuning & Evaluation

I build LLM systems that can be tested: tool calling, grounded RAG and decision support where code, not the model, makes the critical decisions. 1.5+ years shipping LLM features in a production Python / FastAPI backend, and M.Sc. research on small language models.

Get in touch → Download CV
Portrait of Mohamd Bouhemadi
01

Selected work

RAG · Technical assessment · 2026

CX Knowledge Assistant

Demo: real API responses — answered with cited sources, abstained, partial, and a technical error

Grounded Turkish customer-support RAG service that answers only from company documents — every answer sentence links to an evidence sentence, and it says so when the documents are not enough. Python / FastAPI behind an ASP.NET Core (.NET 10) gateway; hybrid BM25 + E5 retrieval; current policy version chosen in code.

  • Decision: when two versions of a policy are both active, it refuses to answer instead of guessing which one applies
  • Technical failures are reported as errors, never disguised as “no information”
  • Frozen test set: hybrid 14/16, BM25 13/16
FastAPI.NET 10Hybrid RAGDocker
View code on GitHub
AI agent · Case study for E-Trink Global · 2026

ALFIQ — Agentic Commerce

Demo: real ALFIQ output — a budget-constrained basket chosen after checking 66 pairs, grounded reasons, a currency clarification and the catalog data-quality report

Turns a free-text shopping request (Turkish or English) into a validated basket over a deliberately corrupted catalog. The model judges meaning, code decides facts: the LLM never selects the basket, does price arithmetic or emits a number that reaches the user. Runs end to end from a clean clone with no credentials.

  • Decision: the two top-scoring products together broke the $300 budget, so the optimiser checked all 66 pairs and returned the best valid one
  • Test suite audited by mutation testing
AI AgentsDeterministic ValidationPythonTesting
View code on GitHub
Mobile app · AI agent · 2026
Demo: ContactE's AI agent Bradi drafts posts that wait for confirmation, the connected-accounts screen and the QR digital business card

ContactE — contacts, network and an AI social-media agent

Arabic-first Flutter app for contacts, groups and a professional network on Firebase. Its assistant, Bradi, plans and writes posts for Instagram, Facebook, LinkedIn and X, adapts one idea for each platform and drafts replies to comments — Claude with tool calling, behind a FastAPI service.

  • Decision: the model can only create drafts; platform rules are checked in code and nothing is published until the user taps Confirm
  • Digital business card: a vCard QR code that any phone camera can scan to save the contact
  • No secrets in the app: the AI key and social-media tokens stay on the server, tokens encrypted at rest
FlutterMaterial 3FastAPIClaudeFirebaseArabic RTL
View code on GitHub
Clinical decision support · Case study · 2026

One clinical problem, two architectures

I built two cardiology decision-support prototypes, both demonstrated to the Centre National de Cardiologie in Nouakchott. Both keep the clinical decision in deterministic code; the language model only explains or advises.

CNC Medication Assessment

Demo: dabigatran for an 82-year-old patient is classified A (must not be used) by the rule engine; the LLM only explains

FastAPI · PostgreSQL / pgvector · Next.js · French + Arabic (RTL). Rule, interaction and dose engines compute the risk category; the LLM explains the finished result behind an output guard. Knowledge-base releases need a second reviewer (four-eyes).

CardioGuard

Demo: spironolactone with high potassium is blocked by the rule engine, not the AI; shown in French, Arabic and Turkish

React 19 · Cloudflare Workers · Arabic, French, Turkish. A missing, stale or wrong-unit lab value produces its own “requires data” outcome instead of passing as safe; verdicts live on the server and every action is written to an append-only audit.

What I learned: the riskiest cases were not bad model text but incomplete data and unreviewed rule changes — so one prototype made missing data a first-class outcome and the other put rule changes behind a second reviewer.

FastAPIpgvectorNext.jsReact 19RBAC + auditLLM guardrails
Synthetic demo data · not approved or used clinically · code private
Production · DAKAEi · App Store
Demo: real WhatsApp recording — a customer sends a voice note and the Umsiyeti bot answers in Arabic with the event services from the live catalog

Umsiyeti — WhatsApp AI Assistant & Event-Services Marketplace

AI work for Umsiyeti, a Mauritanian event-services marketplace. I wired the WhatsApp Cloud API to LLM function calling, so a multilingual assistant (Arabic, French, English) answers from — and acts on — the live Supabase / PostgreSQL catalog. Customers can type or send voice notes, which the bot transcribes before answering. On the marketplace app (React Native / Expo, TypeScript, full RTL) I contributed AI features and backend integration as part of the team.

FastAPIFunction CallingWhatsApp Cloud APIVoice notesSupabaseReact Native
Employer product · code private · recording from the live bot
02

How I can help

AI systems that answer from your own data, act only with a person's approval, and are measured before they go live — in Arabic (including Hassaniya), French, English and Turkish.

Clinics & hospitals

A patient assistant your staff can trust

  • Answers patients on WhatsApp or your website from your own information: services, hours, prices, preparation.
  • Books, moves and cancels appointments when connected to your scheduling system; voice notes and phone calls too.
  • Urgent or medical questions go straight to your team — it never diagnoses.
  • Decision support for clinicians where your rules decide and the AI only explains.

Proof: WhatsApp assistant with voice notes for Umsiyeti; two cardiology prototypes shown to the Centre National de Cardiologie.

Companies

Support, knowledge and paperwork, automated safely

  • Customer-support assistant that cites its sources and hands over to a person.
  • Internal knowledge assistant with access control for your staff.
  • Invoices, forms and requests turned into validated data, with human review.
  • MCP servers that connect your AI tools to your systems; audits of assistants you already run.

Proof: CX Knowledge Assistant (grounded RAG with citations), ALFIQ (code checks every fact), ContactE (nothing posted without approval).

Institutions, universities & NGOs

Information everyone can reach, in their language

  • Public or student information assistant that answers only from official documents, with citations.
  • Search and question answering over regulations, archives and research.
  • Arabic, French and English — and Hassaniya for Mauritanian audiences.
  • Data collection and language technology for low-resource dialects.

Proof: Hassaniya data platform and the Sewelni language model; this site's multilingual assistant.

More services

  1. 01

    Document data extraction

    Invoices, customs declarations, delivery notes and contracts turned into clean data in your accounting or ERP system (Logo, Mikro, Netsis, SAP). The model reads; code recomputes totals and VAT and checks every field; anything unclear goes to a person.

    Reads IDs and title deeds in the notary demo of this site.

  2. 02

    Audit of an assistant you already run

    A frozen test set built from your real questions, then a written report: invented answers, data leaks, prompt injection, off-topic replies, language quality, latency and cost, with the failing cases and a prioritised fix list. Includes a KVKK and EU AI Act readiness checklist (not legal advice).

    Same method as the 36 / 36 live evaluation of this site's assistant.

  3. 03

    Private AI on your own servers

    Sewelni, the private edition of the assistant on this site, runs on your premises or in your Turkish cloud. Your documents and conversations never leave your company: for hospitals, banks, law firms and public bodies.

    Every ability of the six live demos is available in Sewelni.

  4. 04

    Ask your database in plain language

    Managers ask “how much did we sell in İzmir last month?” and get the number with the table behind it. The database computes every figure through read-only queries, the query is shown, and each user only sees what their role allows.

    Shipped in Umsiyeti: its WhatsApp assistant answers from, and acts on, a live Supabase / PostgreSQL database.

  5. 05

    Arabic and French markets for Turkish companies

    Customer support, importer enquiries and product content in Arabic and French for the Gulf, North Africa and West Africa, and Hassaniya for Mauritania, so a Turkish exporter can answer every buyer in their own language.

    Shipping and medical-tourism demos answer in Arabic, French, Turkish and English.

  6. 06

    Integration with your systems

    AI connected to your ERP, CRM, booking or ticketing system through APIs and MCP servers, written as tested code with permissions, approvals and audit logs, not fragile drag-and-drop flows.

    A read-only MCP server for the shipping demo runs on this site.

  7. 07

    Monthly care after launch

    Monitoring of answer quality, errors and model cost, a monthly evaluation on new real questions, and upgrades when better models arrive, so the system keeps its quality instead of drifting.

    Every change to this site's assistant runs 115 offline tests.

  8. 08

    Workshops for your team

    Hands-on sessions in English, Arabic or French: how your staff can use AI safely at work, what to never paste into a chatbot, and how to check what it writes.

    Mentored international students in software engineering and AI at HET.

Voice assistants

Let people talk instead of type

Voice notes on WhatsApp transcribed and answered, and phone calls both answered and placed by the assistant (all shipped for Umsiyeti), voice conversations on your website — try the microphone in the chat on this page — and phone agents that answer calls, check your calendar and book appointments, with a person always reachable.

How we work together

  1. 1DiscoveryA call about your users, data, channels and constraints, then a short written plan: use case, risks and how success will be measured.
  2. 2PilotA working version on your real data, measured on a test set we agree on, with an evaluation report before anything scales.
  3. 3ProductionIntegration with your systems, roles, audit logs, privacy measures, documentation and handover — you own the code.
  4. 4CareMonitoring of quality, errors and cost after launch, regular evaluation on new questions and improvements.

Price depends on scope and is quoted after the discovery call. Write to mohamdahmed@talebbouhemadi.com or ask the assistant to prepare a short project brief.

03

Experience

Software Developer · DAKAEi
Oct 2024 — Jun 2026
  • Built and shipped AI-driven features for Umsiyeti, a digital-services product on the Apple App Store — Python / FastAPI backend, REST APIs and database layer.
  • Connected LLM function calling to a live service database, so model-generated actions read and write real production data.
  • Owned model and external API integrations through debugging to production delivery.
Mentor — SE · Cybersecurity · AI · HET Academic Training & Development
Jun 2024 — Aug 2024

Mentored international students in Software Engineering, Cybersecurity and Artificial Intelligence, helping them understand technical concepts and organise their learning.

04

Research

M.Sc. research · Kocaeli University · 2025 – 2027

Small language models and how to evaluate them

My M.Sc. research is on small language models and how to evaluate them. Details will follow once the work is published.

Side project · in progress · 2026

Sewelni (سولني, “ask me”) — a Hassaniya Arabic language model

Hassaniya, the Arabic of Mauritania and my native language, has almost no public training data. I collected and cleaned a corpus (including a web platform I built for native-speaker data) and adapted Gemma 4 E4B with LoRA. On the public Alexandria-MR test set it reaches chrF++ 30.6 / spBLEU 14.2 for English → Hassaniya, with paired bootstrap confidence intervals against the base model.

Honest caveat: these automatic metrics cannot tell Hassaniya from Moroccan Darija — the base model scores well while writing Darija — so a blind native-speaker evaluation is in progress before any claim of dialect quality. Weights are not public yet.

05

The assistant on this site

Agentic RAG · built and evaluated by me · live in the corner of this page

Not a prompt wrapper: a small production agent

The chat in the corner plans, calls tools over a curated knowledge base, cites every fact it uses and refuses what it should not do — in English, Arabic, French, Turkish, and Hassaniya. Ask it about my work and watch the tool calls and sources appear as it answers.

  1. 1RouteA confident match to a curated answer is returned instantly — no model call, same answer every time.
  2. 2Agent loopClaude Haiku 5.5 plans and calls schema-validated tools: search, project lookup, contact, message draft.
  3. 3Hybrid retrievalBM25 + character n-grams fused with reciprocal rank fusion; English queries serve Arabic, French and Turkish questions.
  4. 4GuardsCitations must match the evidence, unsupported figures are removed, prompt leaks are blocked, and every outgoing message waits for your click.
  5. 5StreamTokens and tool activity stream over server-sent events; the system prompt and tools are prompt-cached.
36 / 36
live eval cases passed
18 / 18
answers cite the right source
4 / 4
injection attempts blocked
3 / 3
Hassaniya answers in dialect

Live evaluation on 2 Nov 2026: 36 deterministic checks in English, Arabic, French, Turkish and Hassaniya — grounded answers, unknown facts, off-topic requests, prompt injection, message drafts and dialect. Median answer under 5 s at about $0.0006 on Claude Haiku 5.5; Hassaniya turns go to Claude Sonnet 5.5, guided by examples from my own Hassaniya dataset, while I train Sewelni to speak the dialect fluently. 115 offline tests run on every change.

Other AI agents can query the same knowledge base through a read-only MCP server at talebbouhemadi.com/mcp (Streamable HTTP) or read the plain-text summary at /llms.txt.

06

Skills

LLM systems

Function Calling / Tool UseGrounded RAGHybrid Retrieval (BM25 + Dense)AI Agents Output GuardsStructured Output ValidationAnthropic & OpenAI APIs

Model training & adaptation

QLoRALoRADoRAPEFT Supervised Fine-TuningQuantization (INT8/INT4)Grammar-Constrained Decoding

Evaluation

Frozen Held-Out Test SetsMulti-Seed AnalysisBootstrap CIs TOST EquivalenceMcNemarGroundedness Labeling

Backend & web

PythonFastAPIASP.NET CoreREST APIsDocker LinuxPostgreSQL / pgvectorSupabaseTypeScriptReact / Next.jsPlaywrightGit

ML frameworks

PyTorchHugging Face (transformers, peft, datasets)Pydanticllama.cpp

Supporting

YOLOOpenCVByteTrackFlutterReact Native / ExpoFirebase
07

Education & Languages

Education

M.Sc. Computer Engineering
Kocaeli University · Sep 2025 — Jun 2027 (exp.) · GPA 3.6 / 4.0
B.Sc. Computer Engineering
Bolu Abant İzzet Baysal University · Sep 2020 — Jun 2024

Languages

Arabic
Native
Turkish
C1 · professional
French
C1 · professional
English
B1 · technical reading and writing daily; spoken English improving
08 · Contact

Building with LLMs? Let's talk.

Open to Applied AI and LLM internships and junior roles — available now, remote or in Istanbul.

Mohamd Bouhemadi
Ask Sewelni Cloud