BesluitBron 1.4.4-23 État Se connecter

Déroulement d'un appel

Dernière modification le .

Une requête d'un utilisateur entraîne un ou plusieurs appels d'outils. Cette page décrit ce qui se passe au cours d'un tel appel, depuis la réception à l'adresse MCP jusqu'à la réponse à l'assistant.

Les étapes

flowchart TD
    A["Assistant IA<br/>tools/call search_documents"] --> E["Adresse MCP<br/>quelle adresse,<br/>quelle boîte à outils"]
    E --> S["McpConnectorSurface<br/>exécutez cet outil"]
    S --> X["ToolExecutor<br/>lancer le chronométrage,<br/>noter la provenance"]
    X --> Q["Moteur de recherche<br/>même si les importations,<br/>vérifiez le nom de la source,<br/>limiter la taille"]
    Q --> C{"La réponse est-elle indiquée ?<br/>déjà dans la mémoire tampon ?"}
    C -->|oui| HIT["UpstreamCache<br/>réponse connue"]
    C -->|non| P["Plateforme de sources<br/>recherche dans la langue<br/>de la plateforme"]
    P --> W["UpstreamCache<br/>notez la réponse"]
    HIT --> PREC["Moteur de recherche<br/>définir la précision de la recherche"]
    W --> PREC
    PREC --> L["Registre des demandes<br/>outils, prix, résultats,<br/>taille, origine"]
    L --> R["Assistant IA<br/>résultat au format JSON"]

Ce qui est exigé à chaque étape

  • Les données saisies sont nettoyées avant d'atteindre la plateforme. Les caractères génériques et les constructions de langage de recherche que la source pourrait exécuter sont supprimés. Un nom de source spécifié est vérifié par rapport à la liste des sources existantes. Une source inconnue génère une erreur et non un résultat vide, car un résultat vide serait interprété comme signifiant « il n'y a rien » ;
  • Le volume est limité. Un outil ne renvoie jamais un nombre illimité de résultats, car la réponse risquerait alors de saturer la mémoire de l'assistant sans pour autant apporter une meilleure réponse à la question. Ce qui se trouve en dehors de la fenêtre est indiqué dans le champ « more_to_find » (Réponses non pertinentes) de Zoekprecisie ;
  • La précision est déterminée par un dispositif commun et n'est pas redéfinie pour chaque outil ;
  • L'appel est consigné dans le journal avant l'envoi de la réponse. Ainsi, même un appel qui se solde par une erreur figure dans le journal.
  • La session reste associée au connecteur sur lequel elle a été ouverte. Un client qui ouvre une session sur un connecteur puis en contacte un autre reçoit un message de refus indiquant à quel connecteur la session appartient. Sans cette règle, le client recevrait les ressources du premier connecteur sous l'adresse du second. Le service conserve cette association pendant trente minutes après la dernière requête de la session ; passé ce délai, la session n'est plus reconnue, même par le protocole de transport lui-même. Ce délai est documenté à l'adresse BesluitBron:Mcp:SessionBindingRetentionMinutes. À partir de la version 1.3.7.

Ce que l'assistant reçoit en retour

Une réponse JSON concise contenant les résultats, leurs caractéristiques à la source et les champs de précision. Si l'outil propose une suite, un lien y renvoie : la fenêtre suivante, le texte intégral d'un document ou le document de séance correspondant.

L'assistant transforme cette réponse en texte continu. Ce texte ne correspond pas à la réponse du registre. C'est cette différence qui explique pourquoi chaque résultat porte un identifiant. Voir Bronvermelding.