Guides

Un playbook est le composant de base des agents génératifs. Un agent génératif comporte généralement de nombreux playbooks, chacun étant défini pour gérer des tâches spécifiques. Les données du playbook sont fournies au LLM, qui dispose ainsi des informations nécessaires pour répondre aux questions et exécuter les tâches. Chaque playbook peut fournir des informations, envoyer des requêtes à des services externes ou déférer la gestion des conversations à un flux ou à un autre playbook afin de gérer des sous-tâches.

Limites

Les limites suivantes s'appliquent :

  • Les agents qui utilisent des playbooks ne sont pas compatibles avec l'envoi de SMS Call Companion depuis la route "Intent d'accueil par défaut" du flux de démarrage par défaut. Toutefois, vous pouvez activer l'option d'envoi de SMS Call Companion dans les flux standards.
  • Les playbooks ne sont pas compatibles avec la saisie DTMF à partir de systèmes téléphoniques.

Langues acceptées

Consultez la colonne Playbooks dans la documentation de référence sur les langues. La qualité des playbooks dans les langues indiquées a été testée avec les modèles gemini-2.5-flash.

Lorsque vous utilisez des langues autres que l'anglais :

  • Dans la plupart des cas, utilisez l'anglais pour les instructions du playbook. Pour certaines langues et certains cas d'utilisation, vous pouvez obtenir des réponses légèrement meilleures si vous fournissez également des instructions dans la langue cible.
  • Déclarez les langues que vous prenez en charge dans les instructions du playbook. Par exemple : "Réponds toujours en français".
  • Définissez vos exemples dans la langue cible.

Compatibilité des modèles

Vous pouvez sélectionner le modèle LLM utilisé dans le playbook aux emplacements suivants :

  • Sélectionnez le modèle LLM au niveau de l'agent.

    • Dans la console Conversational Agents, accédez à Paramètres de l'agent > IA générative > Playbook, puis sélectionnez le modèle par nom à afficher dans le menu déroulant de tous les modèles disponibles.
    • Spécifiez le nom du modèle dans le champ GenerativeSettings.llm_model_settings.model si vous utilisez l'API pour mettre à jour le paramètre de l'agent (consultez GenerativeSettings).
  • Remplacer la sélection de modèle au niveau de la requête.

    • Dans le simulateur de la console Conversational Agents, sélectionnez le modèle par nom à afficher dans le menu déroulant lorsque vous testez un playbook.
    • Spécifiez le nom du modèle dans le champ DetectIntentRequest.query_params.llm_model_settings.model si vous testez l'agent via l'API (voir DetectIntentRequest).
Nom du modèle Spécifications du modèle Étape de lancement
gemini-2.5-flash Gemini 2.5 Flash DG
gemini-2.5-flash-lite Gemini 2.5 Flash-Lite DG

Régions prises en charge

Les playbooks sont disponibles dans les régions suivantes :

  • global
  • asia-south1
  • asia-southeast1
  • asia-southeast2
  • asia-northeast1
  • australia-southeast1
  • eu (multirégional)
  • europe-west1
  • europe-west2
  • europe-west3
  • europe-west4
  • europe-west6
  • northamerica-northeast1
  • us (multirégional)
  • us-central1
  • us-east1
  • us-west1

Données du playbook

Un playbook est composé des données suivantes :

  • Nom du playbook : nom concis en langage naturel qui aide les développeurs et le LLM à comprendre les tâches gérées par le playbook
  • Objectifs : description générale de ce que le playbook doit accomplir
  • Instructions : définit les étapes du processus à suivre pour atteindre l'objectif.
  • Exemples : exemples de conversations qui constituent des prompts few-shot efficaces pour le LLM
  • Les paramètres servent à stocker des informations sur une conversation, comme les entrées utilisateur, les informations sur le système de l'utilisateur, les résultats des actions, etc.

Prompt LLM

Pour chaque tour de conversation, Dialogflow CX utilise les données de votre playbook de conception et les données de conversation d'exécution pour créer une requête LLM dans les limites de jetons. Le contenu de cette requête est résumé comme suit, où les en-têtes sont illustratifs et ne font pas nécessairement partie de la requête.

# INTERNAL_SYSTEM_PROMPT
<you cannot see or edit this>

# INTERNAL_SYSTEM_EXAMPLES
<you cannot see or edit this>

# AVAILABLE_TOOLS_TO_CURRENT_PLAYBOOK
<tool names and schemas, for example...>

## Tool: my_datastore
   description: blah
   input: blah
   output: blah

## Tool: some_other_custom_tool
   description: blah
   input: blah
   output: blah

# PLAYBOOK
<verbatim Goal and Instructions that you provide in the console>

# PLAYBOOK_EXAMPLES
<as many Examples for the current Playbook as can fit in the prompt>

## Example 1

## Example 2
..
..
..
## Example N (up to the input token limit)

# CURRENT_CONVERSATION
<the conversation up to this point w/ some caveats...>

* Caveat 1: If there was a transition from Playbook A -> Playbook B, the
  Conversation that happened in Playbook A is summarized and provided as context
* Caveat 2: If there was a transition from Flow A -> Playbook A, the
  Conversation that happened prior to the entry of Playbook A is summarized and
  provided to the Playbook

Types de playbooks

Lorsque vous créez un playbook, vous sélectionnez le type de playbook souhaité : playbook de tâches ou playbook de routine.

Playbooks de tâches

Les playbooks de tâches sont le type de playbook d'origine. Ils servent à décomposer des tâches complexes en sous-tâches plus petites et réutilisables. Ils sont utilisés pour modéliser les étapes de conversation compositionnelles, où chaque étape communique par le biais de paramètres d'entrée et de sortie.

Voici un exemple de playbook de tâche (appelant) qui appelle un autre playbook de tâche (appelé) :

Un playbook de tâche appelant un autre playbook de tâche

  1. L'appelant démarre l'appelé.
  2. L'appelant fournit les paramètres d'entrée nécessaires à l'appelé.
  3. Le destinataire traite ces informations, exécute sa fonction désignée et renvoie les paramètres de sortie.
  4. L'appelant reçoit des paramètres de l'appelé.

Tout playbook de routine ou de tâche peut appeler un autre playbook de tâche, mais un playbook de tâche ne peut pas appeler un autre playbook de routine.

Playbooks de routine

Les playbooks de routine sont un nouveau type de playbook. Ils servent à modéliser des étapes de conversation séquentielles, qui sont chacune complètes et indépendantes. Ils peuvent appeler des playbooks de tâche pour décomposer de grosses tâches en sous-tâches plus petites, et ils peuvent passer à d'autres playbooks ou flux de routine.

L'image ci-dessous montre un playbook de routine (A) qui passe à un autre playbook de routine (B), puis à un flux (C) :

Un playbook de routine appelant un autre playbook de routine

  1. Le playbook de routine A peut lire les paramètres de session lorsqu'il démarre et écrire les paramètres de session juste avant de se terminer.
  2. Le playbook de routine A se termine et passe au playbook de routine B.
  3. Le playbook de routine B peut lire les paramètres de session lorsqu'il démarre et écrire les paramètres de session juste avant de se terminer.
  4. Le playbook de routine B se termine et passe au flux C.
  5. Le flux C peut lire et écrire des paramètres de session.

Si un playbook de routine ne passe pas à un autre playbook ou flux de routine, la session revient au dernier flux actif ou se termine s'il n'y en a pas.

Les playbooks de routine présentent le comportement suivant en matière de gestion des paramètres :

  • Lorsqu'un playbook de routine est saisi, ses paramètres d'entrée se voient attribuer des valeurs équivalentes aux paramètres de session portant le même nom.
  • Lorsqu'un playbook de routine se termine, il génère des valeurs pour ses paramètres de sortie et les attribue aux paramètres de session portant le même nom.

Comparer les types de playbooks

Catégorie Playbook de tâches Playbook de routine
Latence Chaque fois qu'un playbook de tâches appelle un autre playbook de tâches, un appel LLM est effectué. Cela peut augmenter la latence pour une longue chaîne de playbooks de tâches en un seul tour de conversation. Chaque playbook de routine d'une série de transitions se produit au cours d'un seul tour de conversation. Il n'y a donc qu'un seul appel LLM et la latence est améliorée.
Régénération des paramètres Lorsqu'un playbook de tâches appelle un autre playbook de tâches, les valeurs des paramètres doivent être régénérées. Si une longue chaîne de playbooks de tâches existe, cette régénération peut entraîner une perte de contexte. Les playbooks de routine utilisent le stockage de session pour les paramètres, ce qui crée un contexte plus fiable.
Intégration des paramètres de session Les playbooks de tâches ne s'interfacent pas bien avec les paramètres de session. Ils nécessitent plutôt la définition de paramètres d'entrée et de retour. Les playbooks de routine fonctionnent bien avec les paramètres de session.
Réutilisabilité Étant donné que chaque playbook de tâches a une relation parent/enfant fixe, les tâches sont étroitement liées. Les playbooks de routine peuvent être définis indépendamment les uns des autres.

Playbook par défaut

Lorsque vous créez un agent génératif à l'aide de la console Conversational Agents, un playbook génératif par défaut est créé automatiquement.

Le playbook par défaut est le point de départ des conversations. Il présente donc des différences importantes par rapport aux autres playbooks :

  • Le playbook par défaut ne reçoit pas de résumé des tours de conversation précédents.
  • Le playbook par défaut ne peut pas définir ni recevoir de paramètres d'entrée.

Créer un playbook

Pour créer un playbook :

  1. Cliquez sur l'icône Playbook dans le panneau de navigation de gauche de la console.
  2. Cliquez sur le bouton Create (Créer).
  3. Sélectionnez le type de playbook Routine ou Tâche.
  4. Fournissez des données de playbook.

Utiliser la génération d'IA pour créer un playbook

Lorsque vous créez un playbook, un panneau d'IA générative s'ouvre. Vous pouvez l'utiliser pour générer des données de playbook.

Importer et exporter des playbooks

Une fois que vous avez créé des playbooks à l'aide de la console Conversational Agents, vous pouvez les exporter pour les utiliser dans un autre agent. Pour exporter un playbook :

  1. Accédez à la liste des playbooks.
  2. Cliquez sur le bouton d'exportation du playbook que vous souhaitez exporter.
  3. Sélectionnez les options d'exportation.
  4. Cliquez sur Exporter.

Pour importer un playbook que vous avez exporté précédemment :

  1. Accédez à la liste des playbooks.
  2. Cliquez sur Importer.
  3. Sélectionnez les options d'importation.
  4. Cliquez sur Importer.