Aller au contenu
Donné Alphonse.

Donné Alphonse SOLOFONDRAIBE

Python Developer · Data Architect · AI Engineer

Je conçois des plateformes de données et des systèmes d'IA fiables, de l'ingestion au serving LLM.

années d'expérience
4+
app/api.py
from typing import Annotated from fastapi import Depends, FastAPIfrom fastapi.responses import StreamingResponsefrom pydantic import BaseModel from app.auth import Tenant, current_tenantfrom app.llm import stream_tokensfrom app.retrieval import build_prompt, search app = FastAPI(title="RAG API")CurrentTenant = Annotated[Tenant, Depends(current_tenant)]  class Question(BaseModel):    text: str  @app.post("/v1/ask")async def ask(q: Question, tenant: CurrentTenant):    hits = await search(q.text, tenant_id=tenant.id, k=5)    prompt = build_prompt(q.text, hits)     async def events():        async for token in stream_tokens(prompt):            yield f"data: {token}\n\n"     return StreamingResponse(        events(), media_type="text/event-stream"    )
Exemple générique : recherche filtrée par tenant, puis réponse du LLM streamée en SSE.
01

Positionnement

Domaines d'expertise

Un profil Python, data et IA, centré sur la conception de plateformes fiables plutôt que sur des démonstrations isolées.

  • Python Engineering
  • Data Architecture
  • Data Engineering · ETL / ELT
  • Data pipelines
  • LLM / Generative AI
  • RAG
  • AI Infrastructure
  • Backend Engineering
  • API / Microservices
  • PostgreSQL
  • Vector Databases
  • Docker
  • Security
03

Data & AI Architecture

Comment je conçois les systèmes

Des architectures types, de l'ingestion au serving LLM — on-premise ou via API. Survolez ou parcourez les blocs au clavier pour le détail, puis lisez les décisions et leurs compromis.

Intégrer un LLM : on-premise ou via API

Déroulé en 9 étapes : Client, puis API FastAPI, puis Isolation tenant, puis Pipeline RAG, puis Qdrant · pgvector, puis PostgreSQL, puis Inférence LLM, puis Streaming, puis Monitoring · logs. Utilisez les flèches du clavier pour passer d'une étape à l'autre.

  1. · Application métier

    Le logiciel métier consomme le moteur IA via API. Les données restent dans l'infrastructure de l'entreprise.

  2. · Auth JWT

    Point d'entrée unique : authentification JWT, validation des requêtes et endpoints d'intégration.

  3. · Contrôles d'accès

    Chaque requête est confinée au périmètre de son tenant : contrôles d'accès et isolation des données entre clients.

  4. · Retrieval · prompt

    Recherche sémantique dans la base de connaissances métier, puis construction du contexte et du prompt envoyés au modèle.

  5. · Index vectoriel

    Index des documents découpés et vectorisés (embeddings), interrogé par similarité pour la recherche sémantique.

  6. · Base relationnelle

    Données relationnelles de l'application, consultées par le pipeline en complément de la recherche vectorielle.

  7. · vLLM · on-premise

    Modèle de langage servi localement avec vLLM : aucune donnée n'est envoyée à un service cloud externe.

  8. · Token par token

    La réponse est renvoyée au client au fil de la génération, ce qui réduit fortement la latence perçue.

  9. · Perf · logs · sécurité

    Supervision de toute la chaîne : logs, performances et événements de sécurité.

Le logiciel métier consomme le moteur IA via API. Les données restent dans l'infrastructure de l'entreprise.

Point d'entrée unique : authentification JWT, validation des requêtes et endpoints d'intégration.

Chaque requête est confinée au périmètre de son tenant : contrôles d'accès et isolation des données entre clients.

Recherche sémantique dans la base de connaissances métier, puis construction du contexte et du prompt envoyés au modèle.

Index des documents découpés et vectorisés (embeddings), interrogé par similarité pour la recherche sémantique.

Données relationnelles de l'application, consultées par le pipeline en complément de la recherche vectorielle.

Modèle de langage servi localement avec vLLM : aucune donnée n'est envoyée à un service cloud externe.

La réponse est renvoyée au client au fil de la génération, ce qui réduit fortement la latence perçue.

Supervision de toute la chaîne : logs, performances et événements de sécurité.

Vue générique du moteur IA souverain : de la requête du client à la réponse streamée, sans qu'aucune donnée ne quitte l'infrastructure.

Décisions d'architecture

  • ADR-A1

    Inférence LLM locale plutôt qu'API cloud
    Contexte
    Les données métier sont sensibles et le logiciel cible des environnements réglementés : elles ne doivent pas quitter l'infrastructure.
    Décision
    Servir des modèles open-weight en local avec vLLM, derrière l'API interne.
    Compromis
    Capacité GPU à dimensionner et à exploiter soi-même ; choix limité aux modèles open-weight, parfois en retrait des modèles propriétaires sur certaines tâches ; mises à jour des modèles et des drivers à la charge de l'équipe.
  • ADR-A3

    Streaming des réponses token par token
    Contexte
    Une génération LLM complète peut prendre plusieurs secondes ; attendre la fin dégrade fortement l'expérience utilisateur.
    Décision
    Streamer les tokens depuis l'inférence jusqu'au client via une réponse HTTP en flux.
    Compromis
    Erreurs possibles en milieu de flux, à signaler proprement au client ; buffering et timeouts des reverse proxies (Nginx) à configurer ; journalisation et tests plus complexes qu'une réponse unique.

Comparatif on-premise / API

  • Souveraineté des données
    On-premise souverain
    Les données restent dans l'infrastructure.
    Via API (clé API)
    Le prompt et son contexte transitent chez le fournisseur ; rétention et localisation à vérifier contractuellement.
  • Conformité
    On-premise souverain
    Périmètre entièrement maîtrisé, adapté aux environnements réglementés.
    Via API (clé API)
    Dépend du fournisseur : accord de traitement des données, région d'hébergement, certifications.
  • Maintenance
    On-premise souverain
    Modèles, drivers et capacité GPU à la charge de l'équipe.
    Via API (clé API)
    Modèles maintenus par le fournisseur ; clés, quotas et changements de version d'API à gérer.

Pipeline data de bout en bout

Déroulé en 8 étapes : Sources, puis Ingestion, puis Transformation, puis Vectorisation, puis Qdrant · pgvector, puis PostgreSQL, puis Serving API, puis Logs · monitoring. Utilisez les flèches du clavier pour passer d'une étape à l'autre.

  1. · MySQL · PgSQL · Web

    Bases relationnelles MySQL / PostgreSQL et contenus web.

  2. · ETL / ELT · scraping

    Extraction et chargement ETL/ELT depuis les bases ; scraping (SeleniumBase) pour les sources web.

  3. · Nettoyage · Pandas

    Nettoyage, normalisation et enrichissement des données avec Pandas.

  4. · Embeddings

    Découpage des contenus et calcul des embeddings pour la recherche sémantique.

  5. · Stockage vectoriel

    Index des embeddings, interrogé par similarité.

  6. · Stockage relationnel

    Données structurées et nettoyées, servies aux requêtes applicatives.

  7. · FastAPI

    API FastAPI qui expose la recherche et les données aux applications et aux agents IA.

  8. · Runs · erreurs · latence

    Logs d'exécution et monitoring des pipelines et de l'API.

Bases relationnelles MySQL / PostgreSQL et contenus web.

Extraction et chargement ETL/ELT depuis les bases ; scraping (SeleniumBase) pour les sources web.

Nettoyage, normalisation et enrichissement des données avec Pandas.

Découpage des contenus et calcul des embeddings pour la recherche sémantique.

Index des embeddings, interrogé par similarité.

Données structurées et nettoyées, servies aux requêtes applicatives.

API FastAPI qui expose la recherche et les données aux applications et aux agents IA.

Logs d'exécution et monitoring des pipelines et de l'API.

Architecture de référence générique, assemblée à partir des briques utilisées dans mes missions : de la source brute jusqu'au serving API.
04

Projets

Projets sélectionnés

Ce que chaque projet accomplit — problème, solution et rôle — plutôt qu'une simple liste de technologies.

6 projets

  • 2026En coursPhareAI Infrastructure

    Moteur IA souverain

    Contribution à un moteur d'IA auto-hébergé pour un logiciel métier réglementé : RAG, inférence LLM locale, APIs sécurisées et isolation multi-tenant.

    Rôle · AI Engineer — backend, RAG, sécurité applicative et intégration production

  • IA Agentique

    Agents IA métiers via API

    Agents IA intégrés à des applications métier et adossés à un fournisseur LLM externe appelé via clé API, selon l'architecture « IA métier via API » présentée plus haut.

  • 2024TerminéIA Agentique

    JuriBot Mada Intelligent

    Plateforme d'IA pour rendre le droit accessible à Madagascar. Réponses intelligentes aux questions juridiques en malgache et en français.

    Rôle · Développeur full-stack IA

  • 2025PrototypeIA RH & Formation

    AI-Recruteur — Simulateur d'entretien

    Agent conversationnel qui simule un entretien d'embauche à partir d'une offre, génère des questions techniques et RH, évalue les réponses.

    Rôle · Développeur IA

  • 2025TerminéIA Agentique

    Agent IA pour Data Scraping

    Système d'IA agentique capable de scraper du contenu web et de répondre à partir des données collectées via recherche sémantique.

    Rôle · Développeur Python IA

  • 2024TerminéBackend / ERP

    Modules ERP Odoo & intégration IA

    Modules Odoo personnalisés pour automatiser les processus métier, avec API pour connecter l'ERP à des modèles d'IA externes.

    Rôle · Développeur Python / Odoo

05

Compétences

Compétences techniques

Organisation par domaines d'ingénierie — uniquement les technologies réellement utilisées dans mon parcours.

Survolez ou sélectionnez une compétence pour voir où elle a été utilisée.

Python Engineering

APIs, services backend et intégrations métier en Python.

Data Engineering

Ingestion, transformation et pipelines de données de la source au stockage.

  • Pandas

Data Architecture

Modélisation et choix de stockage : relationnel, vectoriel et cache.

AI / LLM Engineering

RAG, agents, intégration et service de modèles de langage.

  • SpaCy

Platform / DevOps

Conteneurisation, CI/CD, déploiement et supervision.

  • Linux
  • Nginx
  • GPU inference

Security

Authentification, autorisations et isolation des données.

  • SSO / token exchange
06

Expérience

Parcours professionnel

Rôles, responsabilités et technologies — un fil chronologique centré sur Python, la data et l'ingénierie IA.

  1. Responsabilités

    • Architecture de systèmes IA adaptés aux besoins métier
    • Conception de systèmes RAG, bases de connaissances et pipelines de vectorisation
    • APIs IA sécurisées pour l'intégration applicative
    • Prompt engineering et routage intelligent des requêtes
    • Supervision (monitoring, logs, sécurité) et optimisation des performances
08

Méthode

De l'idée à la production

Une approche système complète : du cadrage métier jusqu'au monitoring, pas seulement un prototype.

Déroulé en 7 étapes : Problème, puis Architecture, puis Développement, puis Intégration IA, puis Tests, puis Déploiement, puis Monitoring. Utilisez les flèches du clavier pour passer d'une étape à l'autre.

  1. Cadrage métier & contraintes

  2. Design système & données

  3. APIs, services, UI

  4. LLM, RAG, agents

  5. Qualité & isolation

  6. Docker, CI/CD, on-prem

  7. Perf, logs, sécurité

09

À propos

Ingénieur Python, data & IA, orienté production

Software Engineer spécialisé en Machine Learning et IA, avec plus de 4 ans d'expérience en développement backend. Je construis des API performantes, des pipelines de données et des services IA déployables avec Docker, CI/CD et une architecture pensée pour la production.

Mon travail actuel porte sur des moteurs IA auto-hébergés (RAG, LLM, isolation multi-tenant, sécurité) intégrés à des logiciels métiers réglementés. Je privilégie la fiabilité, la clarté d'architecture et des livrables mesurables plutôt que des prototypes jetables.

Télécharger le CV

Formation

  • Master en Informatique — Management des Systèmes d'Information

    E-media Madagascar

  • Licence en Informatique — Développement d'Applications Internet / Intranet

    EMIT

Langues

Français · Anglais technique

10

Contact

Discutons de votre prochaine plateforme data ou IA

Une question technique, une mission, ou un besoin d'architecture — écrivez-moi.