Skip to content
View AnbriSamir's full-sized avatar
🎯
Focusing
🎯
Focusing

Block or report AnbriSamir

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
AnbriSamir/README.md

Samir Anbri

Senior Data Engineer · Machine Learning · RAG · LLM · MLOps · Bordeaux, France

Machine learning engineer for eight years, all of them in road traffic and mobility. An exchange year at UC Berkeley pulled me into data analysis, and a research internship at Lawrence Berkeley National Lab (US Department of Energy) confirmed it. I then spent four years at IFPEN as an ML research engineer on French and European programs: traffic flow and emissions models for SAM, the national autonomous-vehicle program, and a transport-mode classifier serving ~20,000 users of the GECO Air app.

Today, at a traffic analytics company owned by the Vinci Group, I build the neural networks that turn partial Floating Car Data into all-vehicle traffic flow, calibrated against road sensors and deployed across 23 territories. I own that chain end to end, raw ingestion through model serving, and as the in-house AI referent I help the team get real work out of AI.

The last two years added a second craft on top of the first: RAG, agent orchestration, MCP, LLMOps and evals, learned by shipping the repositories below and holding them to the standard of my traffic models. My ambition is simple: bring the statistical rigor of production ML to LLM systems. Every headline number here comes with a reproducible harness and a confidence interval; if I quote a number, I measured it.


Featured work

These three projects run as one loop. The Multi-Agent Orchestrator executes my daily LLM workflows and records every decision as typed trace spans. The Eval Dataset Generator mines those production traces into labeled, provenance-stamped eval datasets, gated on measured human agreement (Cohen's κ 0.804). Those datasets score the next orchestrator build and set the bar for the Hybrid RAG's own eval harness, the same retrieval pipeline that grounds my LLM answers in my own work corpus. Each tool feeds the next: the agents produce the traces, the traces become the benchmark, and I ship only what passes it.

A six-stage pipeline from raw production logs to a validated evaluation dataset: boundary PII redaction, union-find dedup, HDBSCAN coverage, LLM-as-judge labeling, sha256 provenance.

Human-vs-judge agreement: Cohen's κ 0.804, CI95 [0.652, 0.933], with 0.870 on task type. I measure agreement double-blind; the judge never sees the human label. The gate blocked my first run at κ 0.263; I rewrote the annotation guideline and re-measured. I report that sequence as it happened, not as a controlled A/B. 677 offline tests, 6 ADRs.

evalgen-demo.mp4

An LLM agent orchestrator built as production-grade infrastructure: LangGraph planner-executor, a fail-closed race-safe tool registry, an HMAC-authenticated human-in-the-loop gate, Redis/Qdrant memory.

Worst-case execution is 96 node runs against a pinned ceiling of 229, and a test fails the build if that bound moves. Deterministic replay rebuilds any run span by span from its trace. Stored memory re-enters prompts as quarantined untrusted content, and the quarantine holds even when that content forges its own closing tag. 255 offline tests, 7 ADRs.

orchestrator-demo.mp4

Hybrid retrieval with the full chain: dense Qdrant plus sparse BM25, hand-written RRF fusion at k=60, cross-encoder reranking, citation-enforced generation.

Citation attribution: 1.000 (55/55), faithfulness 0.981. I compared four retrieval configs on recall@k, nDCG, and MRR with paired bootstrap CI95; deltas inside the interval stay labeled non-significant. The LangGraph corrective loop fired 0 times in 50 runs; I publish that as a non-gain. 370 offline tests, 9 ADRs.

rag-demo.mp4

The full-stack ML platform behind the traffic redressement: neural networks with custom multi-quantile losses, statistical evaluation with bootstrap CI95 and paired McNemar, bit-exact reproducible builds, Next.js + FastAPI + Docker.

Measured on Saint-Étienne sensor data: 82.5% of predictions within ±15%, R² 0.88, GEH under 5 on 98.4% of cases, with comparable results across 23 territories. 509 tests.

traffic-ml-demo.mp4

Also on this profile

Strofe_ProspectionAgent: a side project, an autonomous B2B prospecting agent for carbon-assessment (BEGES) consulting. LLM email drafting, a multi-API data pipeline, GitHub Actions scheduling, a deduplicated and scored mirror of public registries.

glan-demo.mp4

What I work with

ML & data: Python 3.11 (typed, Pydantic v2), TensorFlow/Keras, scikit-learn (HDBSCAN), NumPy/SciPy, pandas LLM systems: Anthropic SDK, LangGraph, MCP, hybrid RAG (Qdrant + BM25 + RRF), LLM-as-judge Serving & infra: FastAPI (async, SSE), Redis, Qdrant, Docker, GitHub Actions Evaluation gates: Cohen's κ, paired bootstrap CI95, McNemar, double-blind annotation protocols Reproducibility & provenance: bit-exact builds, git SHA + sha256 lineage, offline test suites, policy-as-code hooks, ADRs


Reach me

LinkedIn · samir.anbri@gmail.com · anbri-tools-ia.online

Pinned Loading

  1. Eval-dataset-generator Eval-dataset-generator Public

    Turns raw production logs into a labeled, deduplicated, statistically validated eval dataset. Human-vs-judge agreement measured double-blind (Cohen's κ + bootstrap CI95): a first run blocked at κ=0…

    Python

  2. multi-agent-orchestrator multi-agent-orchestrator Public

    Multi-agent orchestration built as production infrastructure: typed planning, a sandboxed tool registry, race-safe human-in-the-loop, deterministic replay, and a provably-terminating LangGraph — me…

    Python 1

  3. Strofe_ProspectionAgent Strofe_ProspectionAgent Public

    AI-powered B2B prospecting agent for carbon-assessment (BEGES) consultants — streaming SIRENE ETL, automated nightly sourcing, multi-source contact enrichment, deterministic + Gemini LLM scoring, w…

    TypeScript 1

  4. machine-learning-traffic-redressement-platform machine-learning-traffic-redressement-platform Public

    Full-stack ML platform for traffic-flow redressement — corrects Floating Car Data (FCD) underestimation through an end-to-end, reproducible pipeline: quantile-MLP training, statistical evaluation, …

    Python 1

  5. hybrid-rag-pipeline hybrid-rag-pipeline Public

    Production-grade hybrid RAG with the parts demos skip: dense (Qdrant) + BM25 + hand-written RRF fusion + cross-encoder reranking, citation-verified generation (attribution measured, never declared)…

    Python 2