Aller au contenu
Pierre Urtado

En pré-test

Assistant vocal IA pour le service client

Projet réalisé en alternance chez Wipple. Le support posait les mêmes questions à chaque appel avant de le transférer. J'ai développé un assistant vocal auto-hébergé qui fait cette qualification et transfère l'appel au bon interlocuteur.

Contexte
Wipple (alternance)
Période
Depuis octobre 2025
Rôle
Conception, développement, supervision
Outils
Python asyncio · Asterisk · LLM + RAG · PostgreSQL · Docker

Contexte

Chaque appel entrant demandait une à deux minutes de qualification manuelle. Les plateformes vocales du marché font ce travail, mais elles facturent à la minute et les enregistrements des appels sont stockés chez elles.

Il y avait deux contraintes. Répondre en moins d'une seconde, sinon l'appelant pense que la ligne a coupé. Et garder la voix des clients sur nos serveurs.

Ce que j'ai fait

  • Un pipeline temps réel : Asterisk, transcription, modèle de langage avec RAG, synthèse vocale. Les étapes tournent en parallèle, chacune démarre avant la fin de la précédente.
  • La gestion des interruptions quand l'appelant reprend la parole, un coupe-circuit si un fournisseur ralentit, et un repli sur un Whisper local si une API ne répond plus.
  • Du code Python asyncio organisé en couches. Le déroulé de l'appel est décrit dans un fichier YAML : on peut modifier le script d'accueil sans toucher au code.
  • PostgreSQL, Docker, des migrations versionnées et un déploiement par script.

Choix techniques

Latence. J'ai réparti le budget d'une seconde entre les étapes et je mesure chaque étape en continu. Le gain vient surtout du recouvrement entre les étapes.

seuil d'une secondeen séquencetranscriptionmodèlesynthèsele seuil est franchien streamingtranscriptionmodèlesynthèsedécrochéréponse audible
Schéma de principe, les durées ne sont pas à l'échelle. En streaming, chaque étape commence avant la fin de la précédente, ce qui permet de répondre en moins d'une seconde.

Tests. 2 201 tests automatisés, sans aucun appel réseau : les fournisseurs de voix et de langage sont remplacés par des doubles. La suite s'exécute en quelques secondes et détecte les régressions de dialogue.

Supervision. Prometheus et Grafana pour le serveur, des tableaux de bord pour le suivi métier et le suivi des modèles, des alertes par Discord et par e-mail.

Résultats

< 1 sde temps de réponse en pré-test
≈ 10×moins cher qu'une plateforme SaaS
2 201tests automatisés

Le service est en pré-test sur un périmètre réduit. La prochaine étape est de l'étendre à toutes les lignes entrantes.

Chiffres de ce projet relevés le 4 septembre 2026.