Rechercher dans la base de connaissances node
Recherche sémantique dans l'une de tes bases de connaissances Anymize, trouve les chunks de texte les plus pertinents pour ta question. Astuce : passe les résultats comme contexte dans le prompt utilisateur d'un agent IA pour construire des réponses RAG. Découvrez sa configuration, les entrées et sorties, le test et la résolution des erreurs.
7 min de lectureMis à jour le
Fonction du node
Recherche sémantique dans l'une de tes bases de connaissances Anymize, trouve les chunks de texte les plus pertinents pour ta question. Astuce : passe les résultats comme contexte dans le prompt utilisateur d'un agent IA pour construire des réponses RAG.
Utilisez Rechercher dans la base de connaissances comme étape clairement définie dans un workflow anymize.
- Traite 1 entrée.
- Fournit 1 sortie aux étapes suivantes.
- S'exécute comme une étape normale du workflow.
Configurer le node
- 01Ouvrez un workflow et ajoutez Rechercher dans la base de connaissances depuis le catalogue.
- 02Renseignez les champs requis et associez les valeurs des étapes précédentes.
- 03Testez le node avec un petit jeu de données et vérifiez sa sortie.
- 04Reliez la sortie réussie et activez le workflow après un test complet.
Actions et modes
Rechercher dans la base de connaissances remplit une fonction précise. Ses paramètres apparaissent lorsque vous sélectionnez le node.
Paramètres
| Champ | Signification | Zone |
|---|---|---|
| Bases de connaissances | Choisis une ou plusieurs bases de connaissances, le bloc cherche dans toutes celles sélectionnées en parallèle et fusionne les meilleurs chunks. | Standard |
| Requête de recherche | Ce qui doit être recherché. Les templates comme {{ $json.message }} sont résolus à l'exécution. | Standard |
| Nombre de résultats | Combien d'extraits de texte pertinents sont renvoyés. 5 est une bonne valeur par défaut ; prends 1 si tu ne veux que le meilleur résultat. | Standard |
| Exécuter une fois par élément | Désactivé (par défaut) : le node s'exécute une fois pour tout l'input. Activé : s'il reçoit plusieurs éléments (par ex. de « Séparer la liste »), il s'exécute une fois PAR élément, et {{ $json }} correspond alors à cet élément. C'est ainsi que tu traites une liste de fichiers entrée par entrée. | Standard |
| Si un élément échoue | « Ignorer » écrit un champ `error` pour l'élément en échec et poursuit avec les autres, au lieu de perdre toute l'exécution à cause d'un seul fichier illisible. | Standard |
| Pause entre les éléments (millisecondes) | Attente avant chaque exécution sauf la première. 1000 = 1 seconde par élément. Utile si le service distant te limite. Maximum 300000 (5 minutes). | Standard |
Entrées et sorties
| Entrée | Signification | Type |
|---|---|---|
| query | Requête de recherche (question ou mot-clé). | text |
| Sortie | Signification | Type |
|---|---|---|
| results | Top N des chunks pertinents avec score + métadonnées. | json |
| top_chunk | Contenu du chunk le plus pertinent (le meilleur score) sur l'ensemble des KB sélectionnées. | text |
| top_chunks | Tous les contenus de chunks concaténés, directement utilisables dans le prompt d'un agent IA. | text |
| total | Nombre de chunks trouvés (somme sur toutes les KB sélectionnées). | number |
| stats | Statistiques de recherche (latences par KB, nombre de résultats). | json |
Ce node peut traiter les listes élément par élément. La gestion des erreurs et la pause se trouvent dans les paramètres avancés.
Exemple et test
Recherche RAG dans le contrat: commencez avec un petit jeu de données reconnaissable. Vérifiez la sortie et utilisez uniquement les champs présents.
Exemple de test
{
"query": "Wer hat den Schaden verursacht?"
}Accès et sécurité
Avant l'activation, vérifiez les données reçues par cette étape et le contenu de sa sortie.
Stockez les clés et identifiants dans le gestionnaire protégé. Ne les insérez jamais dans les champs, données de test ou descriptions.
Résoudre les erreurs
- Aucune sortie: vérifiez la dernière exécution et les champs fournis par le node précédent.
- Variable vide: ouvrez la sortie précédente et utilisez un nom de champ réellement présent.
- Liste traitée une seule fois: activez l'exécution par élément.