Skip to main content
Voir en Markdown

Le composant de discussion IA

ai-chat est le seul type de sa catégorie. Il dessine un panneau de discussion raccordé à un agent déclaré par l'application, et accepte le sac de props partagé ainsi que les modules visibility et responsive.

Propriété Description
agent Nom d'un agent de app.agents[].
placeholder Texte indicatif du champ de saisie.
chatHeight Hauteur du conteneur, en pixels.
showHistory Charge la conversation précédente à l'arrivée.
allowAttachments Autorise un lecteur à joindre un fichier à un message.

agent nomme une entrée de app.agents[] ; ce que l'agent sait faire — son modèle, ses outils, sa mémoire, ses règles d'approbation — se configure là-bas, pas ici.

app.yaml
- type: ai-chat
  agent: support-assistant
  chatHeight: 480
  placeholder: 'Ask a question…'
  allowAttachments: true

Il se dégrade honnêtement là où l'IA ne peut pas tourner

Une application peut déclarer un agent sur un déploiement où aucun fournisseur d'IA n'est configuré. Le rendu ne dessine alors pas un composeur cassé : il retire l'îlot et affiche une ligne role="status" indiquant que l'assistant n'est pas disponible ici.

C'est un composant qui dit la vérité sur lui-même, et c'est correct jusque-là — mais il ne peut pas céder la place à un composant différent. L'alternative à un composeur n'est pas un composeur désactivé ; c'est le plus souvent un déclencheur de recherche, c'est-à-dire un autre contrôle, avec un autre libellé, un autre raccourci clavier et un autre point d'entrée.

Le module visibility est ce qui exprime cela. runtime: ai n'affiche le composant que là où l'IA est à la fois déclarée par l'application et capable de tourner sur ce déploiement, et unlessRuntime: ai affiche son alternative partout ailleurs :

app.yaml
- type: ai-chat
  agent: assistant
  visibility: { runtime: ai }
- type: command-palette
  visibility: { unlessRuntime: ai }

Nommer la même capacité dans les deux moitiés sur un seul composant est refusé au décodage de la configuration : soit l'IA tourne ici, soit elle ne tourne pas, si bien que le composant ne s'afficherait sur aucune instance — l'inverse de ce que son auteur a écrit, et invisible à l'exécution.

Pages connexes

Dernière mise à jour 23 septembre 2026

Cette documentation a été rédigée avec de l'IA : des erreurs ou du contenu obsolète sont donc possibles. Sovrium est en bêta. Les contributions et corrections sont les bienvenues.

Construit avec Sovrium