Xoul, Agent IA : Optimisation de la recherche Web — De 20s à 8s

DEV - 26/02
Comment nous avons optimisé la recherche Web d'un agent IA local en trouvant le véritable goulot d'étranglement. Une histoire de faux pas,...

Comment nous avons optimisé la recherche Web d'un agent IA local en trouvant le véritable goulot d'étranglement. Une histoire de faux pas, d’expériences ratées et finalement de découverte de la véritable cause.

" Rétrospectivement, c'est un simple détail, mais j'ai eu un problème avec mon pipeline de recherche sur le Web. Utiliser les résultats bruts de la recherche signifiait transmettre des milliers de jetons à l'entrée suivante, j'ai donc d'abord implémenté un très petit modèle pour résumer les données. Cependant, comme Ollama utilise par défaut une exécution séquentielle, le processus a pris 3 fois plus de temps. Cela semble évident maintenant, mais c'était un goulot d'étranglement majeur avant de l'analyser ! Je l'ai également optimisé en désactivant le rendu non textuel (images, CSS, etc.). "

Arrière-plan

Xoul est un agent d'IA local qui répond aux requêtes des utilisateurs en effectuant des recherches sur le Web. Le pipeline est le suivant : rechercher → visiter les URL → extraire le texte → générer une réponse LLM. Une question simple comme « Combien de pages fait [titre du livre] ? » soit échouait complètement, soit prenait plus de 20 secondes.

Problème : récupération d'URL unique = taux d'échec élevé

Symptômes

La visite d'une seule URL de résultat de recherche signifiait que si ce site était lent ou lourd en JS, la recherche entière échouait.

Correctif : récupération parallèle de 3 URL

En utilisantconcurrent.f...
[Courte citation de 8% de l'article original]

Loading...