Skip to main content
Le prompt engineering ne suit aucune formule fiable. Reformuler un prompt pour demander à un grand modèle de langage (LLM) un « résumé détaillé et précis » plutôt qu’un « aperçu succinct » change la façon dont le modèle répond, mais vous n’avez aucun moyen de savoir si ce changement aide réellement vos utilisateurs tant que vous ne le mesurez pas face à un comportement réel. Des frameworks d’évaluation comme RAGAS évaluent si votre application LLM répond correctement. Ils ne vous disent pas si un changement de prompt aide les utilisateurs à accomplir ce pour quoi ils sont venus sur votre produit. Feature Experimentation comble cet écart. Vous stockez chaque prompt candidat dans une variable de feature, répartissez le trafic entre les variations, et suivez la métrique d’engagement ou métier qui vous intéresse. Comme le prompt vit dans un feature flag plutôt que dans votre code source, vous pouvez ajouter, modifier ou annuler une variation depuis la plateforme Kameleoon sans redéployer votre application.

Fonctionnement

Un feature flag stocke chaque prompt comme la valeur d’une variable de feature, avec une variation par prompt que vous voulez tester. Lorsqu’un visiteur accède à votre application, le SDK Kameleoon affecte le visiteur à une variation et retourne le prompt correspondant, que votre code applicatif envoie au LLM. Un objectif rattaché au feature flag enregistre une conversion lorsque le visiteur interagit avec votre fonctionnalité basée sur un LLM, par exemple en posant une question de suivi ou en menant à bien une tâche grâce à l’aide de l’assistant. Une fois que vous avez collecté suffisamment de trafic, comparez le taux de conversion de chaque variation pour déterminer quel prompt est le plus performant.

Prérequis

  • Un compte Kameleoon avec un projet configuré pour Feature Experimentation.
  • L’ID client et la clé secrète client de votre compte. Pour trouver ces valeurs, consultez Identifiants API.
  • Une application Python dans laquelle vous pouvez installer le SDK Kameleoon.

Configurer votre expérience de prompt dans Kameleoon

Configurez le feature flag, les variations de prompt et l’objectif de suivi dans la plateforme Kameleoon avant de toucher à votre code applicatif.

Créer le feature flag

Créez un feature flag pour contenir vos variations de prompt et contrôler le déploiement de votre expérience.
  1. Dans l’application Kameleoon, cliquez sur Features > Flags & Experiments > New feature flag.
  2. Saisissez un nom, par exemple LLM prompt test, et sélectionnez le projet pour le flag.
  3. Dans le champ Description, notez ce que le flag contrôle, afin que les autres membres de votre équipe comprennent son objectif.
  4. Cliquez sur Validate.
Pour en savoir plus, consultez Créer un feature flag.

Stocker le prompt dans une variable de feature

Ajoutez une variable de feature pour contenir le texte du prompt, afin de pouvoir le modifier depuis la plateforme Kameleoon sans éditer votre code applicatif.
  1. Sur la page du flag, dans la barre latérale gauche, cliquez sur Set Up > Variables > Add Variable.
  2. Définissez le Type de la variable sur String.
  3. Saisissez une Variable Key, par exemple prompt_template.
  4. Définissez la Default Value sur le prompt actuellement utilisé par votre application. Kameleoon délivre cette valeur aux visiteurs qui ne font pas partie de votre expérience.
  5. Cliquez sur Save.
L'écran de configuration des Variables affichant une variable de type String nommée prompt_template avec une valeur par défaut de type texte pour le prompt.
Pour en savoir plus, consultez Définir des variables de feature.

Créer une variation par prompt

Créez une variation par prompt que vous voulez tester, et définissez la variable prompt_template avec le texte correspondant dans chacune.
  1. Dans la barre latérale gauche, cliquez sur Set Up > Variations > Add variation.
  2. Saisissez un Name pour la variation, par exemple Detailed summary.
  3. Définissez la variable prompt_template avec le texte du prompt pour cette variation.
  4. Cliquez sur Save.
  5. Répétez ces étapes pour chaque prompt supplémentaire que vous voulez tester.
L'écran de configuration des Variations affichant une variation nommée Detailed summary avec la variable prompt_template définie sur une valeur de prompt.
Pour en savoir plus, consultez Définir des variations de feature.

Attacher un objectif pour mesurer l’engagement

Attachez un objectif au feature flag afin que Kameleoon puisse mesurer quelle variation de prompt génère le plus d’engagement. Kameleoon étant une plateforme unifiée, vous pouvez attacher n’importe quel objectif déjà existant dans votre organisation, comme un objectif de transaction défini par une autre équipe, ou créer un objectif spécifique à votre fonctionnalité basée sur un LLM.
  1. Sur la page du flag, dans le menu Set Up, cliquez sur Goals > Add goal.
  2. Sélectionnez un objectif existant, ou cliquez sur Create a new goal pour en définir un, comme un objectif personnalisé déclenché lorsqu’un visiteur interagit avec votre fonctionnalité basée sur un LLM.
  3. Cliquez sur Save.
L'écran de configuration des Goals affichant un objectif attaché au feature flag, avec la possibilité d'ajouter un objectif existant ou d'en créer un nouveau.
Pour en savoir plus sur les types d’objectifs, y compris comment déclencher un objectif personnalisé depuis votre backend, consultez Créer un objectif.

Déployer l’expérience

Créez une règle d’expérience qui répartit le trafic entre vos variations de prompt, puis activez l’environnement pour commencer à collecter des données.
  1. Dans le Rollout Planner, sélectionnez l’environnement que vous voulez cibler, par exemple Production.
  2. Cliquez sur Add a rule > Experiment.
  3. Sous Variations to serve, ajoutez chaque variation de prompt et définissez son pourcentage d’exposition. Par exemple, répartissez le trafic également entre deux variations à 50 % chacune.
  4. Définissez le ciblage de la règle pour inclure les visiteurs que vous voulez tester, par exemple tous les visiteurs qui accèdent à l’application.
  5. Activez le toggle ON/OFF de l’environnement sur ON.
  6. Cliquez sur Save.
Le Rollout Planner de l'environnement Production affichant une règle d'expérience qui cible tous les visiteurs et répartit le trafic à 50/50 entre deux variations.
Pour en savoir plus, consultez Créer des expériences de feature. Une fois la règle enregistrée, Kameleoon commence à affecter les visiteurs à une variation et à servir le prompt correspondant. Pour modifier un prompt ou ajouter une variation plus tard, éditez-le directement depuis la plateforme Kameleoon. Vous n’avez pas besoin de redéployer votre application pour appliquer ces changements.

Récupérer le prompt dans votre application

Installez le SDK Python de Kameleoon, puis récupérez le prompt affecté au visiteur et suivez une conversion lorsque le visiteur interagit avec votre fonctionnalité basée sur un LLM. Le même principe s’applique à n’importe quel SDK Kameleoon côté serveur, y compris Node.js, Java et Go.
  1. Installez le SDK comme dépendance :
  2. Initialisez le client avec votre site code et vos identifiants :
  3. Récupérez le prompt affecté avant d’appeler votre LLM, et suivez une conversion lorsque le visiteur interagit avec la fonctionnalité basée sur un LLM :
    Appelez get_prompt_for_visitor() avec le visitor_code du visiteur avant d’envoyer une requête à votre LLM, et utilisez la valeur retournée comme prompt. Appelez track_llm_interaction() lorsque le visiteur interagit avec la fonctionnalité basée sur un LLM, par exemple en soumettant une question ou en recevant une réponse.
Utilisez get_visitor_code() pour attribuer un ID unique à chaque visiteur, et set_legal_consent() si votre application nécessite le consentement du visiteur avant tout suivi de données. Pour la référence complète d’initialisation et de configuration du client, consultez le guide du développeur du SDK Python.

Suivre et itérer

Ouvrez la page de résultats du feature flag pour comparer le taux de conversion de chaque variation de prompt par rapport à l’objectif attaché. Kameleoon suit les expositions et les conversions automatiquement dès que votre application appelle get_variation() et track_conversion(), vous n’avez donc besoin d’aucune instrumentation supplémentaire. Pour en savoir plus, consultez Consulter les résultats globaux de votre feature flag.

Étapes suivantes

  • Consultez la référence du SDK Python pour des options avancées telles que les custom data, l’expérimentation cross-device et les conditions de ciblage.
  • Attachez des critères de segmentation précis pour cibler l’expérience sur une audience spécifique.
  • Explorez les variables de feature pour variabiliser d’autres parties de votre fonctionnalité basée sur un LLM, comme les paramètres du modèle ou les paramètres de récupération.