Projets

Mes Projets et réalisation

2025-2026

Bibliothèque Polymage AI Agent

Le problème

Je voulais des workflows d’agents IA pour traiter des médias en batch — images, audio, vidéo, texte — en pouvant comparer les résultats entre différents modèles et plateformes d’inférence. Il n’existait pas de bibliothèque simple pour ça, alors j’en ai fait une.

Polymage

C’est une bibliothèque Python modulaire et agnostique aux plateformes. Elle permet de définir des agents avec des prompts et des entrées multimodales, puis de les exécuter sur plusieurs backends pour comparer les résultats.

Plateformes supportées

En local :

  • Ollama — macOS, Windows, Linux
  • LM Studio — macOS, Windows, Linux
  • DrawThings — macOS uniquement

En cloud :

  • Groq — inférence LLM rapide
  • Cloudflare Workers AI — modèles en edge
  • Together AI — modèles open-source hébergés
  • HuggingFace — hub et API d’inférence

Fonctionnalités

  • Définir des agents avec prompts + entrées multimodales
  • Exécuter le même agent sur plusieurs plateformes et modèles
  • Orchestration via scripts Python ou Apache Airflow

Stack technique

Python comme bibliothèque centrale, Docker pour la reproductibilité, Hermes Agent et Strix Agent pour l’orchestration, OpenCode pour le développement assisté.

Où on en est

Développement actif. La bibliothèque sert pour mes projets personnels.

Ce que j’ai appris

L’inférence LLM locale demande une gestion sérieuse des ressources. La coordination multi-agent est nettement plus complexe qu’un agent unique.

PythonOllamaLM StudioDrawThingsGroqCloudflare Workers AITogether AIHuggingFace
2017-2023

Infrastructure du Human Brain Project

Le Human Brain Project avait besoin d’une plateforme cloud multi-datacenter pour faire collaborer des neuro-scientifiques à travers l’Europe. 20+ applications, 400+ VMs, 4 datacenters.

J’ai mis en place et maintenu l’ensemble de l’infrastructure durant toute la durée du projet. OpenStack pour le cloud, OpenShift pour les containers Kubernetes, Ansible/AWX pour l’automatisation, GitLab pour le CI/CD, Keycloak pour l’authentification fédérée, Zabbix pour le monitoring, Harbor pour le registry Docker.

La plateforme a globalement très bien fonctionné. Nous avons initialement eu quelques petits soucis de stockage des volumes sur certaines VM (due à une configuration initiale de OpenStack à CSCS avec un backend NFS vers GPFS). Un upgrade de OpenStack avec CEPH a réglé les problèmes.

Un incident de sécurité à CSCS (coupure Internet suite à un problème de sécurité sur les supercalculateurs) nous a obligés à basculer une partie des services chez Exoscale en urgence. Ce qui nous a permis de valider notre architecture de reprise d’activité.

OpenStackOpenShiftKubernetesAnsibleGitLabKeycloakZabbixHarborPostgreSQL
2000-2003

La plateforme e-brands

e-brands était initialement une start-up : fournisseur d’accès Internet en marque blanche (dial-up). La société a ensuite été rachetée et intégrée au groupe Vivendi Universal.

La plateforme

Vue d’ensemble de la salle serveur e-brands

Vue d’ensemble de la plate-forme e-Brands : 9 baies 49U + baie SAN dans une salle privative, hébergée chez LDCOM.

Le Réseau

Accès Internet

Routeurs Cisco 3660

e-Brands disposait de son propre AS (AS21128). Le peering BGP4 s’effectuait sur 2 routeurs Cisco 3660 avec LDCOM et PROXAD.

e-Brands avait aussi des interconnexions avec :

  • Worldcom
  • SFR
  • Orange
  • Bouygues Telecom
  • Vizzavi
  • Cegetel

Load Balancing

ArrowPoint CS800

Les services web étaient load-balancés par deux ArrowPoint : un CS800 et un CS150 en failover.

Switching

Cisco Catalyst 4000

Les VLAN étaient répartis sur deux Cisco Catalyst 4000, interconnectés par un trunk gigabit.

Les Web Services

Architecture classique 3-tiers full Java.

Frontaux Web

Serveurs Apache sur Sun X1

Des serveurs Apache sur des Sun X1, load-balancés par les ArrowPoint.

Serveurs d’application

Tomcat + JBoss sur Sun T2000

Tomcat + JBoss sur des Sun T2000 et T1125.

Base de données

Cluster Oracle Sun V880

Le cluster Oracle : 2 Sun V880 + 1 Sun V280R connectés en fibre channel sur une baie Sun/HDS 9010.

La plateforme CRM

Plateforme CRM

Le traitement des données (normalisation, phonétisation, déduplication) tournait sur un Sun E4500 avec DataStage. Les données étaient stockées sur Oracle. Les traitements métier passaient par Epiphany.

La plateforme de Facturation

Plateforme de Facturation

Plateforme de facturation des numéros 0800 pour le compte de Cegetel.

La plateforme SMS

Plateforme SMS

Une plateforma qui routait les SMS vers les 3 opérateurs nationaux : Orange, SFR et Bouygues.

Les services mutualisés

Services Internet de base

Services Internet sous OpenBSD

DNS publiques et privés, relais mail, FTP, supervision : tout tournait sur des PC rackables sous OpenBSD.

Backup

Backup sur librairie DLT

Les sauvegardes etait stockées sur une librairie DLT via Veritas NetBackup.

Cisco BGP4ArrowPointSun MicrosystemsApacheTomcatJBossOracleOpenBSDVeritas NetBackup