Question rapide : quelle serait une structure « meilleure » pour notre cas d’utilisation ?
Nous avons un tas de journaux d’historique de chat exportés de canaux Slack qui contiennent beaucoup de savoir-faire, de problèmes mentionnés et de solutions, etc. Évidemment, ces chats contiennent beaucoup de « fluff » inutile qu’il serait non rentable de simplement déverser dans des sujets/messages et de faire utiliser par le bot IA.
Nous avons environ 10 fichiers, chacun d’environ 1 à 2 Mo. En termes d’utilisation de la persona IA, nous n’aurons qu’environ 30 personnes effectuant environ 10 conversations par jour (difficile d’estimer le volume de jetons ici).
À ce stade, je me demande quelle serait une approche 80/20 raisonnable pour utiliser ces journaux de chat tout en restant quelque peu économique. Cela se résume à 2 options :
Copier-coller les journaux dans des sujets/messages Discourse : Rapide et sale, aucun développement personnalisé requis, pourrait entraîner des coûts d’API importants.
Prétraiter les journaux de chat d’une manière ou d’une autre et les mettre dans un format ou une structure appropriée et les télécharger sur la persona.
Ou peut-être une forme hybride : Avec chaque demande de bot IA, évaluer et enregistrer la sortie sous forme de fichier texte, puis la télécharger sur la persona.
Quelle option recommandez-vous ? Ou peut-être quelque chose de complètement différent ?
Traiter les 10 fichiers en utilisant une persona « Créative » avec un LLM à grand contexte / grand output comme Sonnet 4 thinking. L’objectif de ce traitement serait de « nettoyer » les informations et de les préparer pour un RAG.
Ensuite, en utilisant notre fonction d’upload intégrée, téléverser les 10 fichiers traités vers une persona, afin que le RAG puisse parcourir le contenu.
Étant donné la quantité de données ici, je déconseille de surcharger un prompt système. En règle générale, un prompt système ne doit pas être trop long, car cela devient coûteux. 10k tokens sont gérables, 100k tokens ne le sont pas avec les LLM de pointe actuels. Chaque interaction vous coûtera trop cher et les LLM seront encore plus confus.
Juste pour clarifier, tous les fichiers téléchargés sont-ils injectés dans l’invite système ? Ou sont-ils d’abord traités par le ai_embeddings_model configuré, puis injectés ?
Je suis un peu confus quant à votre recommandation de limite de 10k tokens, surtout avec la partie ci-dessous :
Les fichiers dans Discourse AI Persona, upload support sont uniquement limités par votre taille de téléversement, ils peuvent être énormes, ils sont traités via l’intégration, nous injectons des morceaux dans l’invite par configuration.
Ce dont je parlais, c’était d’essayer de contraindre toutes les informations dans une seule invite système ici :
Donc, en gros, mes prochaines étapes devraient être d’exécuter quelques tests avec différents modèles d’intégration et de voir quelle taille de jeton j’injecte dans l’invite système, n’est-ce pas ?
Le modèle d’intégration contrôle la qualité, pas la quantité
vous pouvez regrouper toutes vos données dans un seul fichier, nous les diviserons en arrière-plan et récupérerons les morceaux les plus pertinents et les ajouterons à votre invite
l’expérimentation ici consisterait à améliorer les résultats, certains nettoyages peuvent mieux fonctionner que d’autres nettoyages, certains modèles d’intégration seront plus intelligents pour trouver des morceaux plus pertinents
Si vous avez d’autres ressources utiles, n’hésitez pas à les partager ici. Une fois que j’aurai progressé, j’essaierai de publier mon expérience ici sur meta.
[[métadonnées sur les chats]]
une longue histoire sur les chats
[[métadonnées sur les chiens]]
une longue histoire sur les chiens
Maintenant, si nous voulons les enrichir avec des numéros de version ou des numéros de modèle spécifiques, dois-je simplement utiliser le même format ou la même structure que les humains utiliseraient en les tapant ?
Par exemple :
[[métadonnées sur les chats v1.0]]
une longue histoire sur les chats
[[métadonnées sur les chiens]]
une longue histoire sur les chiens
[[métadonnées sur les chats xxl v2.1]]
une longue histoire sur les chats
[[métadonnées sur les chiens v 1.1beta]]
une longue histoire sur les chiens
De plus, lorsque les numéros de version sont manquants dans les métadonnées (voir métadonnées sur les chiens), ce bloc serait-il utilisé dans une réponse pour toutes les requêtes liées aux chiens, quelle que soit la « version » du chien ?