Aller au contenu
Jesus Miguel Sánchez Torres
Retour aux projets

Maître

Un assistant IA qui prend les réservations des restaurants par téléphone et par chat, en trois langues, avec des règles écrites dans du code testé.

Rôle
Conception et développement
Équipe
Projet personnel
Période
oct. 2026
Technologies
TypeScript, Python, Cloudflare Workers et Durable Objects, Astro, LiveKit, Claude Haiku
Statut
Démo publique en ligne
Appel de test avec des données inventées

Pourquoi il est construit ainsi

Les assistants vocaux de réservation sont souvent montrés une fois, en direct, puis déclarés terminés. Dans une de ces démos, l'agent répète le numéro de l'appelant avec un chiffre faux et réserve la table à ce numéro. Rien ne le remarque, parce que rien ne vérifie.

Maître part de l'autre bout. Ce qui doit toujours être vrai est écrit dans le code et couvert par des tests, et le modèle de langage se contente de parler. Les clients réservent par téléphone ou par chat ; l'équipe gère le service du jour depuis un tableau de bord avec le plan de salle.

Les règles que le code fait respecter

  • La dernière table pour un seul client

    Chercher une table et la réserver ne forment qu'une seule étape, donc deux clients ne peuvent jamais obtenir la même table.

  • Des dates exactes

    Le client dit « vendredi » ou « après-demain », le code calcule le jour et chaque réponse rappelle la date complète.

  • Les allergènes de la fiche cuisine

    La réponse vient de la fiche, mot pour mot. Si la fiche ne dit rien, la réponse est « nous ne savons pas » et la question est transmise à l'équipe.

  • Le modèle ne voit jamais le numéro

    Le numéro arrive par le canal lui-même (l'appel, le clavier ou le formulaire), jamais par la reconnaissance vocale.

  • Jamais de réservation en double

    Si le modèle répète une action, aucune deuxième réservation n'est créée.

  • Des données dans l'Union européenne

    Les données de chaque restaurant sont conservées dans l'UE et les conversations sont supprimées au bout de 90 jours.

Comment il est évalué

Le modèle a été choisi avec une règle écrite avant les tests. Chaque conversation devait être réussie aux trois passages ; venait ensuite l'attente la plus courte pour le client et, entre candidats proches, un banc d'essai indépendant de conversations avec outils. Plusieurs vrais modèles ont été comparés ainsi, et Claude Haiku est arrivé en tête.

Aujourd'hui, la série compte 41 conversations écrites à l'avance en français, en anglais et en espagnol, dont 26 jouées aussi au téléphone. Chacune passe trois fois et n'est validée que si les trois réussissent. Au dernier passage, les 41 ont réussi, avec une réponse médiane de 1,6 seconde.

Plusieurs échecs sont devenus du code. Un modèle a rempli une date avec le mauvais mois, donc le modèle ne gère plus les dates (c'est le code qui les calcule). Un autre a promis de faire rappeler un client sans rien enregistrer ; désormais, c'est le code qui transmet la demande à l'équipe.

Limites connues

Il ne regroupe pas encore les tables, donc les groupes plus grands que la plus grande table passent à une personne. Il n'y a pas de connexion pour l'équipe, et un vrai déploiement placerait Cloudflare Access devant le tableau de bord. WhatsApp est conçu mais pas construit.

Aucun vrai restaurant ne l'utilise encore. La démo fait tourner un bistrot inventé avec des données inventées, et l'évaluation détecte les régressions sans prouver que l'assistant a raison dans toutes les conversations possibles.

41/41
conversations réussies, dernier passage
1,6 s
réponse médiane, dernière évaluation
26
conversations testées aussi au téléphone
90 jours
avant la suppression des conversations
  • Appel de test avec sous-titres, où l'assistant confirme une table pour deux
    Appel de test avec des données inventées
  • Le client tape son numéro sur le clavier de l'appel
    Appel de test avec des données inventées
  • Une allergie aux fruits à coque que la fiche ne couvre pas, alors l'assistant transmet la question à l'équipe
    Appel de test avec des données inventées
  • La réservation téléphonique pour deux sur le plan de salle, à confirmer
    Tableau de bord du restaurant avec des données inventées
  • La liste des rappels du tableau de bord, avec la question d'allergène restée sans réponse
    Tableau de bord du restaurant avec des données inventées
  • La transcription de l'appel dans le tableau de bord, avec la réservation et la question transmise
    Tableau de bord du restaurant avec des données inventées