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, chaque playbook é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 d'un SMS d'accompagnement d'appel à partir de la route intent d'accueil par défaut dans le flux de démarrage par défaut, mais vous pouvez activer l'option de SMS d'accompagnement d'appel dans les flux standards.
  • Les playbooks ne sont pas compatibles avec l'entrée DTMF des systèmes téléphoniques.

Langues acceptées

Consultez la colonne Playbooks dans la documentation de référence sur les langues. Les langues marquées pour les playbooks ont été testées pour leur qualité avec les modèles gemini-2.0-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 la prise en charge de votre langue dans les instructions du playbook. Par exemple : "Répondez toujours en français".
  • Définissez vos exemples dans la langue cible.

Modèles acceptés

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 Paramètres de l'agent -> IA générative -> Playbook, sélectionnez le modèle par nom d'affichage 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).
  • Remplacez la sélection du modèle au niveau de la requête.

    • Dans le simulateur de la console Conversational Agents, sélectionnez le modèle par nom d'affichage 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 (consultez DetectIntentRequest).
Nom du modèle Spécifications du modèle Étape de lancement
gemini-2.5-flash Gemini 2.5 flash GA
gemini-2.5-flash-lite Gemini 2.5 flash lite GA
gemini-2.0-flash-001 Gemini 2.0 flash GA
gemini-2.0-flash-lite-001 Gemini 2.0 flash lite GA

Régions acceptées

Les playbooks sont disponibles dans les régions suivantes régions :

  • 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
  • Paramètres: permettent de stocker des informations sur une conversation, telles que les entrées utilisateur, les informations sur le système utilisateur, les résultats des actions, etc.

Prompt LLM

Pour chaque tour de conversation, Dialogflow CX utilise les données de votre playbook au moment de la conception et les données de conversation au moment de l'exécution pour créer un prompt LLM dans les limites de jetons. Le contenu de ce prompt est résumé comme suit, où les en-têtes sont destinés à illustrer et ne font pas nécessairement partie du prompt.

# 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âche ou playbook de routine.

Playbooks de tâche

Les playbooks de tâche 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 , qui communiquent chacune par le biais de paramètres d'entrée et de sortie.

L'exemple suivant montre un 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. L'appelé traite ces informations, exécute sa fonction désignée et renvoie des 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'exemple suivant 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 au démarrage et écrire les paramètres de session juste avant de quitter.
  2. Le playbook de routine A quitte et passe au playbook de routine B.
  3. Le playbook de routine B peut lire les paramètres de session au démarrage et écrire les paramètres de session juste avant de quitter.
  4. Le playbook de routine B quitte 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 de gestion des paramètres suivant :

  • 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 quitte, 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âche Playbook de routine
Latence Chaque fois qu'un playbook de tâche appelle un autre playbook de tâche, un appel LLM est effectué. Pour une longue chaîne de playbooks de tâche dans un seul tour de conversation, cela peut augmenter la latence. Chaque playbook de routine d'une série de transitions se produit dans un seul tour de conversation. Il n'y a donc qu'un seul appel LLM et une latence améliorée.
Régénération des paramètres Lorsqu'un playbook de tâche appelle un autre playbook de tâche, les valeurs des paramètres doivent être régénérées. S'il existe une longue chaîne de playbooks de tâche, 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âche ne s'interfacent pas bien avec les paramètres de session et nécessitent plutôt la définition de paramètres d'entrée et de retour. Les playbooks de routine s'interfacent bien avec les paramètres de session.
Réutilisabilité Étant donné que chaque playbook de tâche a une relation parent/enfant fixe, les tâches sont étroitement couplé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 du playbook dans le volet 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 les données du playbook.

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

Lors de la création d'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.