Remplacements

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

Bien que les remplacements soient toujours pris 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 remplacements 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 puisse personnaliser ses réponses et ses connaissances avec un contexte en temps réel. Les remplacements remplacent entièrement les valeurs par défaut de l’agent définies dans le Dashboard de l’agent.

Vue d’ensemble

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

Les remplacements peuvent être activés 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

Lorsqu’un remplacement est activé pour un champ, fournir un remplacement reste facultatif. S’il n’est pas fourni, l’agent utilisera les valeurs par défaut définies dans le Dashboard de l’agent. Pour la plupart des champs, une erreur est générée si un remplacement est fourni alors que les remplacements ne sont pas activés pour ce champ.

Les mots-clés ASR appliquent un refus souple : si l’option Sécurité est désactivée 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 le remplacement des mots-clés ASR dans les paramètres de sécurité pour appliquer le renforcement de mots-clés par conversation. Jusqu’à 50 mots-clés sont pris en charge par conversation.

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

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

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

Guide

Prérequis

Ce guide explique comment remplacer les valeurs par défaut du prompt système, du premier message, du LLM, des outils, de la base de connaissances, des paramètres TTS et des mots-clés ASR de l’agent.

1

Activer les remplacements

Pour des raisons de sécurité, les remplacements sont désactivés par défaut. Activez les champs pour lesquels vous souhaitez autoriser les remplacements, comme 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 Security. Activez First message, System prompt, Tools, Knowledge base, ASR keywords et tous les autres remplacements dont vous avez besoin, comme LLM.

Activer les remplacements

2

Remplacer la configuration de la conversation

Dans votre code, à l’endroit où la conversation démarre, transmettez les remplacements comme paramètre. Les remplacements d’outils et de base de connaissances remplacent les tableaux par défaut pour cette conversation. Les remplacements 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"]
}
}
}

Vérifiez que vous avez installé le dernier 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 remplacements, omettez les champs que vous ne souhaitez pas remplacer au lieu de les définir sur des chaînes vides ou des valeurs nulles. Incluez uniquement les champs que vous souhaitez spécifiquement personnaliser.

Pour trouver la chaîne correspondant au bon modèle LLM, consultez le Guide de l’API Agents, qui répertorie tous les modèles LLM pris en charge et leurs identifiants de chaîne exacts.