À propos du projet

Open Deep Research est un assistant de recherche IA open source, léger, conçu pour effectuer des recherches approfondies et itératives sur n'importe quel sujet. Le projet vise à fournir l'implémentation la plus simple possible d'un agent de recherche approfondie — en maintenant le code sous 500 lignes — afin que les développeurs puissent facilement le comprendre, le modifier et l'enrichir. Le système fonctionne en prenant une requête utilisateur ainsi que des paramètres configurables de largeur et de profondeur. Il génère ensuite des requêtes de recherche ciblées à l'aide d'un grand modèle de langage, exécute ces requêtes via l'API Firecrawl pour la recherche web et l'extraction de contenu, puis traite les résultats afin d'en extraire les enseignements clés et de nouvelles pistes de recherche. Si le paramètre de profondeur est supérieur à zéro, l'agent explore récursivement plus loin à partir de ses découvertes, en s'appuyant sur les apprentissages précédents et en conservant le contexte des objectifs de recherche tout au long du processus. Le résultat final est un rapport Markdown complet enregistré sous report.md ou answer.md, contenant toutes les conclusions, sources et références organisées dans un format clair et lisible. Les fonctionnalités clés incluent la recherche itérative avec exploration récursive, la génération intelligente de requêtes via les LLM, des contrôles configurables de profondeur et de largeur, des questions de suivi intelligentes pour affiner les besoins de recherche, le traitement concurrent pour l'efficacité, et la prise en charge de plusieurs fournisseurs de modèles, notamment OpenAI o3-mini, DeepSeek R1 via Fireworks, ainsi que des endpoints personnalisés compatibles OpenAI comme OpenRouter ou Gemini. Le projet prend en charge le déploiement avec Node.js et Docker, avec des variables d'environnement pour les clés API et un réglage optionnel de la concurrence. Le dépôt est sous licence MIT et comprend une implémentation communautaire en Python. Il est créé par Duet et se veut une base minimale et extensible pour construire des agents de recherche approfondie.