Curiosité : construction d'un outil de recherche IA de type Perplexity à l'aide de LangGraph
Introduction générale
Curiosity est un projet conçu pour explorer et expérimenter, principalement à l'aide du logiciel LangGraph et FastHTML, dans le but de construire un système de gestion de l'information qui soit à la pointe de la technologie. Perplexité AI du produit de recherche. Au cœur du projet se trouve un simple ReAct à l'aide de l'agent Tavily Curiosity prend en charge une variété de grands modèles de langage (LLM), notamment gpt-4o-mini d'OpenAI, llama3-groq-8b-8192-tool-use-preview de Groq, et le modèle Ollama Le projet se concentre non seulement sur la mise en œuvre technique, mais consacre également beaucoup de temps à la conception de la partie frontale afin de garantir une expérience visuelle et interactive de haute qualité.

Liste des fonctions
- Utilisation de LangGraph et de la pile technologique FastHTML
- Recherche Tavily intégrée Génération de textes améliorés
- Prise en charge de plusieurs LLM, y compris gpt-4o-mini, llama3-groq et llama3.1
- Fournit des capacités de commutation flexibles en arrière-plan
- Le front-end est construit avec FastHTML et prend en charge le streaming WebSockets.
Utiliser l'aide
Étapes de l'installation
- Entrepôt de clonage :
git clone https://github.com/jank/curiosity
- Assurez-vous que vous disposez de la dernière version de l'interpréteur Python3.
- Configurer l'environnement virtuel et installer les dépendances :
python3 -m venv venv source venv/bin/activate pip install -r requirements.txt
- établir
.env
et définir les variables suivantes :OPENAI_API_KEY=<your_openai_api_key> GROQ_API_KEY=<your_groq_api_key> TAVILY_API_KEY=<your_tavily_api_key> LANGCHAIN_TRACING_V2=true LANGCHAIN_ENDPOINT="https://api.smith.langchain.com" LANGSMITH_API_KEY=<your_langsmith_api_key> LANGCHAIN_PROJECT="Curiosity"
- Exécuter le projet :
python curiosity.py
Lignes directrices pour l'utilisation
- Lancement de projets: Run
python curiosity.py
Ensuite, le projet démarrera et s'exécutera sur le serveur local. - Sélectionner le LLMSélectionnez le LLM approprié (par exemple, gpt-4o-mini, llama3-groq, ou llama3.1) en fonction de vos besoins.
- Recherche avec TavilyL'agent ReAct : Saisissez une requête dans un dialogue et l'agent ReAct enrichit la génération de texte avec la recherche Tavily.
- Interaction frontaleL'interface du projet est construite en utilisant FastHTML et prend en charge le flux WebSockets pour assurer une réponse en temps réel.
problèmes courants
- Comment changer de LLM ?: en
.env
pour configurer la clé API appropriée et sélectionner le LLM souhaité lors du démarrage du projet. - Questions relatives aux WebSocketsSi vous rencontrez des problèmes de fermeture des WebSockets sans raison apparente, il est recommandé de vérifier votre connexion réseau et la configuration de votre serveur.
© 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...