Projects

Personal and research projects covering generative AI, NLP, data engineering and SaaS architecture. Source code: GitHub

Independent project · in production

Aubier, Data & AI SaaS Platform

Data-⁠analysis SaaS platform powered by AI, multi-⁠tenant and in production, designed and built end-⁠to-⁠end single-⁠handedly (backend, frontend, infrastructure), covered by over 6,600 automated tests. Hybrid RAG pipeline (pgvector + full-⁠text search, GraphRAG, RAPTOR, cross-⁠encoder reranking), text-⁠to-⁠SQL engine with SSE streaming, multi-⁠format document extraction (PDF, DOCX, images via OCR/VLM) and 22 async connectors (PostgreSQL, MySQL, MSSQL, Oracle, MongoDB, S3, ERP and accounting such as Sage, Cegid and Pennylane, OAuth2 SaaS APIs, scraping). LLM cost control: multi-⁠provider routing (litellm), caching and cost tracking (Langfuse). End-⁠to-⁠end LLM security: strict multi-⁠tenant isolation, AST validation of generated SQL, code sandboxing, RBAC, JWT RS256, SSO, 2FA, Fernet encryption, GDPR compliance, audit logging. OpenTelemetry/Prometheus observability, Celery orchestration, AutoML predictions, Stripe billing.

–

  • Hybrid RAG
  • text-⁠to-⁠SQL
  • GraphRAG
  • RAPTOR
  • LLM cost control
  • LLM security
  • Observability
  • multi-⁠tenant
  • FastAPI
  • React
  • TypeScript
  • pgvector
  • litellm
  • Langfuse
  • Celery
  • Docker
  • Stripe

Product site In production

–

baptisteblouin.fr, Portfolio & AI Agent

Production AI Agent · Public MCP Server

This site, designed, built and operated single-⁠handedly, is a showcase running in production. A LangGraph agent (FastAPI, PostgreSQL/pgvector, persisted conversation memory) answers recruiters about my background, assesses how well a job offer fits and drafts a contact message. Multi-⁠provider LLM chain with automatic fallback (Claude first, then Gemini and Mistral) and prompt caching, for an inference cost under half a euro cent per answer. A prompt-⁠injection classifier (ONNX Runtime, 24 ms) picked from 7 benchmarked models: on a held-⁠out set, recall goes from 10% to 73% without blocking a single real question. RAG evaluation by an LLM judge (grounding, completeness, no invention) on 38 gold cases, 35 passed, rerun on every model change; a private monitor extracts candidate cases from real conversations. A Cloudflare Worker (Hono, D1, KV, Workers AI, scheduled jobs) serves a public MCP server that any compatible client can query, plus a daily AI news digest and a radar of AI-⁠ecosystem signals. Self-⁠hosted Langfuse and OpenTelemetry monitoring, inference cost tracking, 20 documented architecture decisions (ADRs), CI on a self-⁠hosted runner.

  • LangGraph
  • MCP
  • Claude
  • AI agents
  • LLM evaluation
  • LLM security
  • FastAPI
  • pgvector
  • Cloudflare Workers
  • Astro
  • Langfuse

Product site

–

Private Apps, Agents & Authenticated MCP Servers

4 applications in production · 2 private MCP servers

Four private applications built and operated single-⁠handedly (FastAPI, HTMX, over 3,000 tests): a stock screener, a business application encrypted at rest, a monitor for the site’s agent and an operations dashboard. Two of them embed a tool-⁠using agent written without a framework and expose a private MCP server protected by OAuth, where every write waits for human confirmation.

  • MCP
  • OAuth
  • AI agents
  • Claude
  • Human-⁠in-⁠the-⁠loop
  • FastAPI
  • HTMX
  • DuckDB
  • SQLCipher
  • n8n
  • Docker

In production

 - 

HistText

Large-⁠Scale Text Analysis Platform

Full-⁠stack platform for large-⁠scale analysis of historical Chinese texts (over 15 million documents, 20 billion words). High-⁠performance Rust backend, REST API, React interface with interactive visualizations (network graphs, timelines), Apache Solr full-⁠text search engine, multilingual NER pipeline, and an R client package (histtext) distributed from GitLab. Deployed to over 200 users in the international digital-⁠history research community as part of the ENP-⁠China project (ERC Advanced Grant), then backed by an ERC Proof of Concept grant to bring it to market.

  • Rust
  • React
  • Python
  • R
  • PostgreSQL
  • Apache Solr
  • Docker
  • NER

Live demo GitHub JDMDH 2024

 - 

EventExtractionPapers

Open Source Community Resource

Curated selection of NLP resources dedicated to event extraction: papers, datasets, models and code. A reference widely used by the international NLP research community, with 580 GitHub stars as of 3 September 2026. Maintained from 2019 to 2024.

  • NLP
  • Event extraction
  • Open source

GitHub 580 stars (09/2026)

Applied AI Rig

Open Source Tool · Traceability of AI Decisions

Command-⁠line tool that installs, inside a repository, the decision and evidence record of a project that ships AI: why this model, which evaluation justifies a threshold, which cost limit, which fallback. An always-⁠installed core (decision records, a claim-⁠to-⁠evidence index separating measured from estimated and unknown, a checksum manifest) plus five optional modules chosen from the project’s risks. Registers are plain CSV reviewed in a pull request, the structural check runs in CI. Python 3.10+, published on PyPI.

  • Python
  • CLI
  • AI governance
  • Evaluation
  • CSV
  • GitHub Actions
  • PyPI

GitHub

–

Tech Brief

Automated Publishing · Open Source

Public mirror of the site’s tech watch, published as bilingual Markdown on GitHub. A dependency-⁠free Node script, triggered twice a day by GitHub Actions, calls the public routes of the Cloudflare Worker that computes the watch, renders the day’s news digest, then archives the completed day with numbered source references, day-⁠to-⁠day navigation and a monthly index. On Sundays the weekly recap replaces the daily digest.

  • Node.js
  • GitHub Actions
  • Cloudflare Workers
  • Markdown
  • Automation
  • Bilingual

GitHub

ENP-⁠Corpus Creator

OCR & Annotation Pipeline

Tool suite transforming scanned images of historical newspapers into semantically enriched corpora. Complete pipeline: OCR via Google Cloud Vision, interactive web annotation interface with keyboard shortcuts, export to standard formats (CoNLL, JSON). Designed for complex multilingual documents (Chinese, English, French).

  • Python
  • Google Vision API
  • Web
  • OCR

Article

 - 

Chinese NER Dataset & ML Pipeline

Data Engineering & ML

The largest manually annotated NER dataset of historical Chinese newspapers from the transitional period (1872-⁠1949), per the LREC-⁠COLING paper: 196 Shenbao documents, 6,491 entities (persons, places, organizations, dates) over 121,971 characters, with entity linking and coreference. Automated quality-⁠control pipeline, reproducible benchmarks with fine-⁠tuned BERT models, and data freely available to the community.

  • Python
  • PostgreSQL
  • Annotation
  • ML pipeline
  • BERT

LREC-⁠COLING 2024

Chinese Language Model & Tokenization

ML Model Development

Fine-⁠tuning of segmentation models for transitional Chinese, in collaboration with Academia Sinica. Reaches an F-⁠score above 83%, +35 points over the Jieba tokenizer, exploring various domain-⁠adaptation strategies for an under-⁠documented linguistic variety.

  • PyTorch
  • TensorFlow
  • Tokenization
  • Fine-⁠tuning

NLP4DH 2023

OCR Simulation & ML Robustness

Experimental Research

Data-⁠augmentation framework simulating the OCR artifacts (character substitutions, deletions, insertions) observed in digitized historical documents. Reduces the impact of OCR errors by 50% on NER and classification tasks, with a standardized benchmark to evaluate model robustness.

  • PyTorch
  • Transformers
  • Data augmentation

TALN 2022

Transfer Learning & Adaptation to the Historical Domain

ML Development & Optimization

Study of model transfer methods for NER on historical documents (out-⁠of-⁠domain genres, noisy OCR, older variants of the language), depending on the effort invested: describing the target data, annotating a few texts or matching pre-⁠training resources. Experiments with Transformers on the LitBank and HIPE historical datasets: 250 annotated sentences recover 93% of the full-⁠data performance, and OCR errors are handled by simulating noise during pre-⁠training and with character-⁠aware Transformers.

  • BERT
  • Transformers
  • Few-⁠shot
  • Adaptation

NLP4DH 2021