MindSearch : moteur de recherche IA open source pour déployer votre propre moteur de recherche Perplexity !
Introduction générale
MindSearch est un moteur de recherche IA open-source lancé par le laboratoire d'intelligence artificielle de Shanghai (SAL), qui vise à simuler le processus de pensée humaine pour la collecte et l'intégration d'informations complexes. L'outil combine les technologies avancées de la modélisation du langage à grande échelle (LLM) et des moteurs de recherche. Grâce à une structure d'intelligence multiple, il permet de collecter et d'intégrer de manière autonome des informations sur des centaines de pages web et de fournir des réponses complètes en peu de temps. Les utilisateurs peuvent déployer leurs propres moteurs de recherche à l'aide de LLM à source fermée (par exemple, GPT, Claude) ou de LLM à source ouverte (par exemple, les modèles de la série InternLM2.5).
La logique de base est qu'une structure multi-intelligente est utilisée pour simuler les processus de pensée humains, y compris deux composants clés : le WebPlanner (couche) et WebSearcher (exécuteur).
- WebPlanner décompose la question de l'utilisateur et construit un graphe acyclique dirigé (DAG) pour guider la recherche ;
- WebSearcher récupère et filtre les informations utiles d'Internet vers WebPlanner ;
- WebPlanner finit par donner sa conclusion.

Liste des fonctions
- Cadre de l'organe multi-intelligenceLa recherche de l'excellence : recueillir et intégrer des informations complexes en faisant appel à des intelligences multiples qui travaillent de concert.
- Prise en charge de plusieurs LLMCompatible avec les modèles de grandes langues à source fermée et à source ouverte, les utilisateurs peuvent choisir le modèle approprié en fonction de leurs besoins.
- Plusieurs interfaces frontalesLes services de l'entreprise : Fournir React, Gradio, Streamlit et d'autres interfaces frontales pour la commodité de l'utilisateur.
- Exploration des connaissances approfondies: Fournit des réponses exhaustives et approfondies en naviguant à travers des centaines de pages web.
- Une solution transparenteLes réponses doivent être complètes, c'est-à-dire qu'elles doivent contenir des pistes de réflexion et des termes de recherche afin d'accroître la crédibilité et la facilité d'utilisation des réponses.
Principes techniques
1) WebPlanner : le centre de planification intelligent
WebPlanner est le cerveau intelligent de MindSearch, qui construit des tâches de recherche dans un graphe acyclique dirigé (DAG). Après avoir reçu le problème de l'utilisateur, grâce à la capacité de génération de code de modèle linguistique, il utilise des fonctions de code atomique prédéfinies pour désassembler le problème en nœuds de sous-problèmes et définir le cadre de résolution du problème. Au cours du processus de recherche, sur la base des informations fournies par WebSearcher, le graphe est étendu et affiné de manière flexible, et la stratégie est ajustée de manière dynamique pour permettre au système d'extraire des informations avec précision. Par exemple, face à la question "l'état actuel et les défis de l'application de l'IA dans le diagnostic des images médicales", le système démontera les types d'images médicales, les exemples d'application d'algorithmes d'IA, la confidentialité des données et la précision de l'interprétation, etc.
2,WebSearcher : le pointeur d'exploration de l'information
WebSearcher est le pionnier de l'extraction d'informations. Il adopte une stratégie qui va du grossier au fin, en optimisant d'abord les mots-clés pour améliorer la précision, en agrégeant un contenu de recherche massif pour éliminer la redondance, en triant avec précision les pages clés, puis en résumant et en affinant en profondeur. À l'aide de modèles linguistiques, nous comprenons et intégrons les informations fragmentées et les transformons en modules de connaissances logiques et cohérents. Si l'on prend l'exemple des "percées technologiques dans le domaine des batteries pour véhicules à énergie nouvelle", il est possible de filtrer rapidement des informations clés telles que l'amélioration de la densité énergétique des batteries et l'accélération de la vitesse de chargement à partir de rapports d'instituts de recherche scientifique, d'actualités industrielles, de sites web officiels d'entreprises, etc. et de les présenter de manière organisée.

Caractéristiques fonctionnelles
1、Extraction de connaissances approfondies
MindSearch fouille dans un large éventail de pages web pour présenter aux utilisateurs des connaissances approfondies. Qu'il s'agisse d'explorer les mystères des civilisations anciennes ou de suivre les développements technologiques de pointe, il peut trier la vaste quantité de ressources en ligne. Par exemple, si vous effectuez une recherche sur "les progrès de la recherche sur la matière noire cosmique", il ne se contente pas de fournir des concepts de base, mais résume également les dernières données d'observation, les modèles théoriques et les étapes importantes des équipes de recherche mondiales, aidant ainsi les utilisateurs à construire un système de connaissances systématique.
2、Transparence du chemin de recherche
Contrairement aux moteurs de recherche traditionnels, MindSearch montre aux utilisateurs le cheminement de la pensée, les mots-clés de recherche et le processus d'intégration de l'information. Lorsque les utilisateurs demandent "interprétation des dispositions légales", ils peuvent non seulement obtenir la réponse, mais aussi connaître le processus de sélection et d'intégration des informations provenant de bases de données juridiques, de forums professionnels et d'études de cas, ce qui renforce la confiance et facilite l'étude et la recherche approfondies par les utilisateurs afin d'améliorer leurs connaissances en la matière.
3、Adaptation multi-interface
MindSearch propose des interfaces pour React, Gradio, Streamlit et le débogage local en tenant compte des différents besoins des utilisateurs. Les développeurs peuvent utiliser Réagir L'interface Gradio l'intègre dans les applications web, tandis que les utilisateurs ordinaires peuvent l'interroger commodément via l'interface Gradio ou Streamlit sans programmation complexe ni configuration d'environnement, ce qui réduit le seuil d'utilisation et améliore l'expérience de l'utilisateur.
4) Mécanisme de construction de cartes dynamiques
La fonction de construction du graphique dynamique peut générer des nœuds de sous-questions en fonction des requêtes de l'utilisateur et s'étendre en temps réel sur la base des résultats de la recherche. Face à des sujets brûlants tels que "l'impact des médias sociaux sur la santé mentale des adolescents", le graphe de recherche peut être mis à jour en temps utile pour prendre en compte les nouvelles recherches et les nouveaux événements, et ajuster la direction de manière flexible afin de garantir que les informations les plus pertinentes et les plus récentes sont fournies.
scénario d'application
1、Une bonne aide pour la recherche académique
Dans le domaine universitaire, MindSearch réduit considérablement le temps de collecte des informations pour les chercheurs. Par exemple, si les historiens étudient les échanges culturels au cours d'une période historique spécifique, MindSearch peut intégrer des documents anciens, des rapports archéologiques, des articles universitaires et d'autres ressources pour trier le réseau de communication et les événements importants, ce qui permet aux chercheurs de localiser rapidement les informations clés, de clarifier l'orientation de la recherche et d'améliorer l'efficacité de la recherche.
2) Inspiration créative Inspirator
Pour les créateurs, MindSearch est une source d'inspiration. Lorsque les rédacteurs créent des textes touristiques, ils peuvent rechercher des éléments tels que les spécialités culinaires, les attractions de niche et les coutumes populaires de la destination, puis les intégrer et les traiter pour en faire des textes fascinants. Lorsqu'ils créent des scénarios de science-fiction, les scénaristes de cinéma et de télévision peuvent obtenir de nouveaux concepts de science-fiction, des scénarios futurs et d'autres éléments d'inspiration pour enrichir leur contenu créatif.
3. la boussole de la prise de décision des entreprises
Dans le domaine commercial, les entreprises peuvent utiliser MindSearch pour suivre les tendances du marché, analyser la dynamique des concurrents et mieux comprendre la demande des consommateurs. Par exemple, lorsqu'une entreprise de restauration élabore une nouvelle stratégie de produit, elle peut rechercher des informations sur les ingrédients les plus populaires, les plats les plus populaires des concurrents et les préférences gustatives des consommateurs, puis lancer un nouveau produit qui répond à la demande du marché et améliore sa compétitivité sur le marché après une étude approfondie.
Utiliser l'aide
1,Installation dépendante
Tout d'abord, assurez-vous qu'un environnement Python est installé sur votre système (Python 3.8 et plus est recommandé). Ensuite, allez dans le répertoire racine de votre projet MindSearch en ligne de commande et exécutez la commande suivante pour installer les dépendances nécessaires :
pip install -r requirements.txt
Cette étape télécharge et installe automatiquement les différentes bibliothèques et modules Python nécessaires au fonctionnement de MindSearch, le préparant ainsi à un lancement et une utilisation ultérieurs.
2,Lancer l'API MindSearch
Une fois l'installation des dépendances terminée, vous pouvez démarrer MindSearch API. Utilisez la commande suivante pour démarrer le serveur FastAPI :
python -m mindsearch.app --lang en --model_format internlm_server --search_engine DuckDuckGoSearch
Vous pouvez ici ajuster les paramètres en fonction de vos besoins réels :
- `--lang` : utilisé pour spécifier la langue du modèle, par exemple, `en` signifie anglais, `cn` signifie chinois. Veuillez choisir en fonction de la langue d'entrée prévue et de la langue du résultat de la recherche.
- `--model_format` : spécifie le format du modèle, par exemple `internlm_server` signifie utiliser le modèle InternLM2.5 - 7b - chat local server ; si vous voulez utiliser un autre modèle, par exemple GPT4, vous devez le changer en `gpt4`, et aussi vous assurer que vous avez correctement configuré les permissions d'accès et d'utilisation pour le modèle correspondant. .
- `--search_engine` : utilisé pour sélectionner le moteur de recherche, MindSearch supporte une variété de moteurs de recherche, tels que
`DuckDuckGoSearch` (moteur de recherche DuckDuckGo), `BingSearch` (moteur de recherche Bing), `BraveSearch` (moteur de recherche Brave), `GoogleSearch` (moteur de recherche Google Serper), `TencentSearch (moteur de recherche de Tencent), etc. Si vous choisissez un moteur de recherche web autre que DuckDuckGo et Tencent, vous devez définir la clé API correspondante dans la variable d'environnement `WEB_SEARCH_API_KEY` ; si vous utilisez le moteur de recherche Tencent, vous devez également définir `TENCENT_SEARCH_SECRET_ID` et `TENCENT _SEARCH_SECRET_KEY`.
3,Lancer le front-end de MindSearch
MindSearch propose une variété d'interfaces frontales aux utilisateurs. Voici comment les différentes interfaces frontales sont lancées :
3.1 React
1) Tout d'abord, vous devez configurer le proxy API de Vite, en spécifiant l'URL du backend. en supposant que le serveur backend tourne localement sur le port `8002` de `127.0.0.1` (veuillez le modifier en fonction de la situation réelle), exécutez la commande suivante :
HOST="127.0.0.1"
PORT=8002
sed -i -r "s/target:\s*\"\"/target: \"${HOST}:${PORT}\"/" frontend/React/vite.config.ts
2) Assurez-vous que Node.js et npm sont installés sur votre système. pour les systèmes Ubuntu, vous pouvez utiliser la commande suivante pour l'installer :
sudo apt install nodejs npm
Pour Windows, vous devez télécharger et installer la version de Node.js correspondant à votre système à partir du [site officiel de Node.js] (https://nodejs.org/zh-cn/download/prebuilt-installer).
3) Allez dans le répertoire `frontend/React` et exécutez les commandes suivantes pour installer les dépendances du projet et démarrer le frontend React :
cd frontend/React
npm install
npm start
3.2 Gradio
Démarrez l'interface Gradio en exécutant la commande suivante sur la ligne de commande :
python frontend/mindsearch_gradio.py
3.3 Éclairé par la lumière du jour
Utilisez la commande suivante pour démarrer le front-end Streamlit :
streamlit run frontend/mindsearch_streamlit.py
3,débogage local
Si vous souhaitez déboguer localement, vous pouvez utiliser la commande suivante :
python mindsearch/terminal.py
Grâce au débogage local, vous pouvez plus facilement vérifier et optimiser le fonctionnement de MindSearch dans votre environnement local, et consulter des informations de journal détaillées afin de trouver et de résoudre les problèmes éventuels à temps.
remarques finales
MindSearch, avec sa technologie unique, ses riches fonctionnalités et ses multiples scénarios d'application, a créé une vague d'innovation dans le domaine de la recherche d'informations. Il améliore l'efficacité et la qualité de l'accès des utilisateurs à l'information, crée une plateforme innovante pour les développeurs et promeut le développement de la technologie des moteurs de recherche IA. MindSearch a un grand potentiel et une grande valeur dans les domaines académique, créatif et commercial. Nous sommes convaincus que MindSearch continuera d'évoluer à l'avenir, nous aidant à explorer plus efficacement l'univers de la connaissance et à profiter d'une nouvelle expérience de recherche intelligente d'informations.
© déclaration de droits d'auteur
Article copyright Cercle de partage de l'IA Tous, prière de ne pas reproduire sans autorisation.
Articles connexes
Pas de commentaires...