EasySearch - RAG Local
EasySearch (LocalRAG Easy Search) est une application Retrieval Augmented Generation (RAG) locale qui permet aux utilisateurs d'interroger leurs documents utilisant traitement du langage naturel. L'application utilise une architecture entièrement locale, assurant confidentialité et protection des données en traitant toutes opérations sur site sans envoyer données à services externes. Le système exploite LangChain pour orchestration RAG, Qdrant pour stockage vectoriel, Redis pour historique de conversation et Ollama pour inférence LLM locale. L'application prend en charge plusieurs formats de documents (PDF, DOCX, TXT, MD) et fournit interface de chat intuitive basée sur Streamlit pour question-réponse basée sur documents.
Aperçu
EasySearch (LocalRAG Easy Search) est une application Retrieval Augmented Generation (RAG) locale qui permet aux utilisateurs d'interroger leurs documents utilisant traitement du langage naturel. L'application utilise une architecture entièrement locale, assurant confidentialité et protection des données en traitant toutes opérations sur site sans envoyer données à services externes. Le système exploite LangChain pour orchestration RAG, Qdrant pour stockage vectoriel, Redis pour historique de conversation et Ollama pour inférence LLM locale. L'application prend en charge plusieurs formats de documents (PDF, DOCX, TXT, MD) et fournit interface de chat intuitive basée sur Streamlit pour question-réponse basée sur documents.
Fonctionnalités clés
Application RAG locale avec traitement entièrement sur site
Support multi-formats de documents (PDF, DOCX, TXT, MD)
Question-réponse langage naturel basée sur contenu de documents
Base de données vectorielle Qdrant pour recherche sémantique
Historique de conversation basé sur Redis pour réponses contextuelles
Inférence LLM locale Ollama (Llama3/Llama3.2)
Interface de chat Streamlit pour interaction intuitive
Architecture préservant confidentialité sans appels API externes
Déploiement Docker Compose avec architecture microservices
Indexation automatique de documents et génération d'embeddings
Réponses basées uniquement sur documents (pas d'hallucination)
Gestion d'historique de chat basée sur sessions
pages.portfolio.projects.easysearch_local_rag.features.12
Principales fonctionnalités
Développement d'application RAG entièrement locale assurant confidentialité des données
Implémentation d'orchestration RAG basée sur LangChain avec stockage vectoriel Qdrant
Création de pipeline de traitement de documents multi-formats
Intégration d'Ollama pour inférence LLM locale sans dépendances externes
Construction d'historique de conversation basé sur Redis pour réponses contextuelles
Conception d'architecture microservices Docker Compose pour déploiement facile
Défis et solutions
Configuration LLM Local
Configuration d'Ollama pour inférence LLM locale facile avec modèles pré-configurés
Gestion de Stockage Vectoriel
Implémentation de base de données vectorielle Qdrant avec embeddings HuggingFace pour recherche sémantique efficace
Contexte de Conversation
Développement d'historique de chat basé sur Redis avec gestion de sessions pour maintien de contexte
Traitement de Documents
Intégration de chargeurs de documents LangChain pour support multi-formats (PDF, DOCX, TXT, MD)
Qualité de Réponse
Assurance de réponses basées sur documents utilisant prompts système et filtrage de contexte
Complexité de Déploiement
Orchestration de plusieurs services utilisant Docker Compose pour déploiement et gestion faciles
Technologies
RAG Framework
Vector Database
LLM
Frontend
Storage
Document Processing
Deployment
Environment
Informations du projet
- Statut
- Completed
- Année
- 2024
- Architecture
- Architecture Microservices avec Traitement Local - Streamlit, Qdrant, Redis, Ollama
- Category
- Data Science