Le WordPress d'aujourd'hui, décodé pour les développeurs

IA & MCP

Centre équestre : un modèle répond aux stages, un humain prend le relais

Répondre aux questions fréquentes sur les stages d'équitation avec un modèle de langage, puis transmettre à un humain dès que la demande sort du cadre prévu.

Par Clément Hadrot • 8 août 2025 • 4 min de lecture • Aucun commentaire
Centre équestre : un modèle répond aux stages, un humain prend le relais

Répondre à la même question vingt fois par semaine, ou la déléguer à un modèle capable de la traiter aussi bien qu’un salarié ? C’est la question que s’est posée l’équipe d’un centre équestre proposant des stages pendant les vacances scolaires, submergée par des messages toujours similaires sur les horaires, l’âge minimum, le matériel à apporter et les tarifs.

La réponse retenue n’a pas été un chatbot généraliste capable de tout traiter, mais un modèle volontairement cantonné à quatre catégories de questions, avec une règle simple : dès que la demande sort de ce périmètre, un humain reprend la main, sans détour ni fausse tentative de réponse.

Le périmètre : quatre catégories, et seulement quatre

Les échanges avec les familles montraient une régularité frappante : la grande majorité des questions portaient sur les horaires des sessions, l’âge minimum requis, le matériel personnel à prévoir (bombe, bottes) et les tarifs selon la durée du stage. Ces quatre catégories ont été formalisées en base de connaissance, chacune associée à une réponse validée par la direction du centre.

La logique d’escalade, pièce centrale du système

Le modèle, un LLM appelé via une API externe, reçoit un prompt système qui l’instruit de répondre uniquement à ces quatre catégories et de retourner une valeur spécifique, hors_perimetre, dans tout autre cas. Cette valeur déclenche côté WordPress la création d’un ticket de support classique, avec transfert immédiat vers l’adresse de contact du centre.

L'essentiel à retenir : Un périmètre de questions strictement défini ; Une bascule automatique vers un humain hors périmètre ; Aucune réservation gérée par le modèle

L’implémentation côté WordPress

Le traitement s’appuie sur un hook déclenché à la réception d’un message via le formulaire de contact, qui interroge d’abord le modèle avant de décider s’il faut afficher une réponse automatique ou créer un ticket humain :

function traiter_question_stage( string $message ): array {
    $reponse = appeler_llm_stages( $message );

    if ( 'hors_perimetre' === $reponse['statut'] ) {
        wp_insert_post(
            array(
                'post_type'   => 'ticket_support',
                'post_title'  => wp_trim_words( $message, 10 ),
                'post_status' => 'publish',
                'meta_input'  => array(
                    'message_origine' => $message,
                    'escalade'        => true,
                ),
            )
        );
        return array( 'type' => 'ticket_cree' );
    }

    return array( 'type' => 'reponse_directe', 'texte' => $reponse['texte'] );
}

Ce découpage évite un écueil fréquent avec les modèles de langage : la tentation de répondre à tout, y compris à des questions qu’ils ne maîtrisent pas réellement, comme la disponibilité effective d’un créneau ou une demande de remboursement.

Ce que le suivi des tickets a révélé

Sur les deux premiers mois d’utilisation, environ sept demandes sur dix ont été traitées directement par le modèle, sans intervention humaine. Les trois demandes restantes concernaient presque systématiquement des situations particulières : un enfant avec une contrainte médicale, une demande de stage sur mesure, ou une réclamation liée à un stage précédent.

  • Les réponses automatiques ont été jugées justes dans la quasi-totalité des cas relus.
  • Aucune tentative de réservation n’a transité par le modèle, la fonctionnalité n’existant simplement pas côté outil.
  • Le volume de messages traités manuellement a diminué sans que la charge de travail humaine sur les cas complexes n’augmente.

Le cas qui a confirmé le choix de la limite stricte

Un parent a demandé, dans le même message, les horaires d’un stage et la possibilité d’un paiement échelonné pour des raisons personnelles. Le modèle a correctement répondu à la première partie et basculé la seconde en ticket humain, plutôt que de tenter une réponse générique sur les modalités de paiement, sujet qu’il n’était pas censé traiter.

Un modèle qui sait dire « je transmets » plutôt que d’improviser une réponse plausible rend un bien meilleur service qu’un modèle qui répond à tout avec la même assurance.

En résumé

La réussite de ce projet tient moins à la qualité du modèle qu’à la discipline du périmètre : quatre catégories définies, une valeur d’escalade explicite, et l’absence totale de logique de réservation confiée au modèle. Un centre équestre n’a pas besoin d’un agent capable de tout faire, mais d’un outil qui traite bien un nombre limité de cas et laisse la place à un humain pour tout le reste.

Partager :

À propos de l'auteur

Clément Hadrot

Développeur WordPress, passionné par Elementor, le FSE et l’automatisation par IA.

Voir tous ses articles

Dans la même veine

À lire aussi