Passer à la navigation

Surcharges

Adaptez chaque conversation grâce à un contexte personnalisé pour chaque utilisateur.

Bien que les surcharges restent prises en charge pour remplacer entièrement les prompts système ou les premiers messages, nous recommandons d’utiliser les variables dynamiques comme méthode privilégiée pour personnaliser les réponses de votre agent et injecter des données en temps réel. Les variables dynamiques offrent une meilleure maintenabilité et une approche plus structurée de la personnalisation.

Les surcharges permettent à votre assistant d’adapter son comportement à chaque interaction utilisateur. Vous pouvez transmettre des données et paramètres personnalisés au début de chaque conversation afin que l’assistant personnalise ses réponses et ses connaissances avec un contexte en temps réel. Les surcharges remplacent entièrement les valeurs par défaut de l’agent définies dans le Dashboard de l’agent.

Vue d’ensemble

Les surcharges vous permettent de modifier en temps réel le comportement de votre agent IA sans créer plusieurs agents. Vous pouvez ainsi personnaliser les réponses avec des données propres à chaque utilisateur.

Les surcharges peuvent être activées pour les champs suivants dans les paramètres de sécurité de l’agent :

  • Prompt système
  • Premier message
  • Langue
  • ID de voix
  • LLM (grand modèle de langage)
  • Outils
  • Base de connaissances
  • Mode texte uniquement
  • Stabilité
  • Vitesse
  • Amélioration de la similarité
  • Mots-clés ASR
  • Procédures

La surcharge Procédures n’utilise pas conversation_config_override. À la place, le client transmet procedure_ids et start_procedure_ids au niveau supérieur des données client d’initialisation de la conversation. Consultez Choisir des procédures par conversation.

Lorsque les surcharges sont activées pour un champ, fournir une surcharge reste facultatif. Si vous n’en fournissez pas, l’agent utilisera les valeurs par défaut définies dans le Dashboard de l’agent. Pour la plupart des champs, une erreur est renvoyée si vous fournissez une surcharge alors que les surcharges ne sont pas activées pour ce champ.

Les mots-clés ASR utilisent une interdiction souple : si le bouton de sécurité est désactivé et que le client envoie tout de même asr.keywords, la conversation se poursuit et les mots-clés sont ignorés (sans erreur). Activez la surcharge Mots-clés ASR dans les paramètres de sécurité lorsque vous souhaitez appliquer un renforcement des mots-clés pour chaque conversation. Jusqu’à 50 mots-clés sont pris en charge par conversation.

Voici quelques exemples où les surcharges peuvent être utiles :

  • Saluer les utilisateurs par leur nom
  • Inclure des informations propres au compte dans les réponses
  • Adapter la langue ou le ton de l’agent selon les préférences de l’utilisateur
  • Transmettre des données en temps réel, telles que les soldes de compte ou l’état des commandes
  • Améliorer la transcription des noms ou termes propres à chaque appel, par exemple les noms d’entreprises dans un CRM, via les mots-clés ASR

Les surcharges sont particulièrement utiles pour les applications nécessitant des interactions personnalisées ou traitant des données utilisateur sensibles qui ne doivent pas être stockées dans la configuration de base de l’agent.

Guide

Prérequis

Ce guide vous montre comment surcharger le prompt système, le premier message, le LLM, les outils, la base de connaissances, les paramètres TTS et les mots-clés ASR par défaut de l’agent.

1

Activer les surcharges

Pour des raisons de sécurité, les surcharges sont désactivées par défaut. Activez les champs que vous souhaitez autoriser à surcharger, tels que first_message, prompt.prompt, prompt.tool_ids, prompt.knowledge_base, language ou asr.keywords.

Accédez aux paramètres de votre agent et sélectionnez l’onglet Sécurité. Activez First message, System prompt, Tools, Knowledge base, ASR keywords et toutes les autres surcharges dont vous avez besoin, telles que LLM.

Activer les surcharges

2

Surcharger la conversation

Dans votre code, à l’endroit où la conversation démarre, transmettez les surcharges comme paramètre. Les surcharges des outils et de la base de connaissances remplacent les tableaux par défaut pour cette conversation. Les surcharges de mots-clés ASR remplacent la liste de mots-clés par défaut de l’agent pour cette conversation, avec un maximum de 50 mots-clés.

Charge utile d'initialisation de la conversation
{
"conversation_config_override": {
"agent": {
"prompt": {
"tool_ids": ["tool_7101k5zvyjhmfg983brhmhkd98n6"],
"knowledge_base": [
{
"type": "file",
"name": "Unladen Swallow Facts",
"id": "5xM3yVvZQKV0EfqQpLrJ",
"usage_mode": "auto"
}
]
}
},
"asr": {
"keywords": ["Acme Corp", "Contoso", "Globex"]
}
}
}

Assurez-vous d’avoir installé la dernière version du SDK.

from elevenlabs.conversational_ai.conversation import Conversation, ConversationInitiationData
...
conversation_override = {
"agent": {
"prompt": {
"prompt": f"The customer's bank account balance is {customer_balance}. They are based in {customer_location}.", # Optional: override the system prompt.
"llm": "gpt-4o", # Optional: override the LLM model.
"tool_ids": [
"tool_7101k5zvyjhmfg983brhmhkd98n6"
], # Optional: replace the tools available to the agent.
"knowledge_base": [
{
"type": "file",
"name": "Unladen Swallow Facts",
"id": "5xM3yVvZQKV0EfqQpLrJ",
"usage_mode": "auto",
}
], # Optional: replace the knowledge base available to the agent.
},
"first_message": f"Hi {customer_name}, how can I help you today?", # Optional: override the first_message.
"language": "en" # Optional: override the language.
},
"tts": {
"voice_id": "custom_voice_id", # Optional: override the voice.
"stability": 0.7, # Optional: override stability (0.0 to 1.0).
"speed": 1.1, # Optional: override speed (0.7 to 1.2).
"similarity_boost": 0.9 # Optional: override similarity boost (0.0 to 1.0).
},
"conversation": {
"text_only": True # Optional: enable text-only mode (no audio).
},
"asr": {
"keywords": ["Acme Corp", "Contoso"] # Optional: boost ASR for per-call terms (max 50). Requires Security → ASR keywords.
}
}
config = ConversationInitiationData(
conversation_config_override=conversation_override
)
conversation = Conversation(
...
config=config,
...
)
conversation.start_session()

Lorsque vous utilisez des surcharges, omettez les champs que vous ne souhaitez pas surcharger plutôt que de leur attribuer des chaînes vides ou des valeurs nulles. Incluez uniquement les champs que vous souhaitez spécifiquement personnaliser.

Pour trouver la chaîne du modèle LLM appropriée, consultez le Guide de l’API des agents, qui répertorie tous les modèles LLM pris en charge et leurs identifiants de chaîne exacts.