Farfalle
Moteur de recherche open source alimenté par l'IA. (Clone de perplexité)
Exécutez des LLM locaux ( llama3 , gemma , mistral , phi3 ), des LLM personnalisés via LiteLLM ou utilisez des modèles cloud ( Groq/Llama3 , OpenAI/gpt4-o )
farfalle-expert-search.mp4
N'hésitez pas à me contacter sur Twitter ou à créer un problème si vous avez des questions.
Démo en direct
farfalle.dev (modèles Cloud uniquement)
Aperçu
- Pile technologique
- ??♂️ Pour commencer
- Déployer
?️ Feuille de route
Pile technologique
- Frontend : Next.js
- Back-end : FastAPI
- API de recherche : SearXNG, Tavily, Serper, Bing
- Journalisation : Logfire
- Limitation de débit : Redis
- Composants : shadcn/ui
Caractéristiques
- Recherchez avec plusieurs fournisseurs de recherche (Tavily, Searxng, Serper, Bing)
- Répondez aux questions avec des modèles cloud (OpenAI/gpt4-o, OpenAI/gpt3.5-turbo, Groq/Llama3)
- Répondez aux questions avec des modèles locaux (llama3, mistral, gemma, phi3)
- Répondez aux questions avec n'importe quel LLM personnalisé via LiteLLM
- Recherchez avec un agent qui planifie et exécute la recherche pour de meilleurs résultats
??♂️ Commencer localement
Conditions préalables
- Docker
- Ollama (si vous utilisez des modèles locaux)
- Téléchargez l'un des modèles pris en charge : llama3 , mistral , gemma , phi3.
- Démarrer le serveur
ollama serve
Obtenir des clés API
- Tavily (facultatif)
- Serper (facultatif)
- OpenAI (facultatif)
- Bing (facultatif)
- Groq (facultatif)
Démarrage rapide :
git clone https://github.com/rashadphz/farfalle.git
cd farfalle && cp .env-template .env
Modifiez .env avec vos clés API (Facultatif, non requis si vous utilisez Ollama)
Démarrez l'application :
docker-compose -f docker-compose.dev.yaml up -d
Attendez que l'application démarre, puis visitez http://localhost:3000.
Pour les instructions de configuration personnalisée, consultez custom-setup-instructions.md
Déployer
Back-end
Une fois le backend déployé, copiez l'URL du service Web dans votre presse-papiers. Cela devrait ressembler à quelque chose comme : https://some-service-name.onrender.com.
L'extrémité avant
Utilisez l'URL backend copiée dans la variable d'environnement NEXT_PUBLIC_API_URL
lors du déploiement avec Vercel.
Et c'est fini ! ?
Utilisez Farfalle comme moteur de recherche
Pour utiliser Farfalle comme moteur de recherche par défaut, procédez comme suit :
- Visitez les paramètres de votre navigateur
- Allez dans « Moteurs de recherche »
- Créez une nouvelle entrée de moteur de recherche à l'aide de cette URL : http://localhost:3000/?q=%s.
- Ajoutez le moteur de recherche.