DeepSeek-RAG-Chatbot : un chatbot DeepSeek RAG fonctionnant localement

Introduction générale

Le DeepSeek-RAG-Chatbot est un système basé sur la technologie DeepSeek R1 est un projet de chatbot open source, hébergé sur GitHub, créé par le développeur SaiAkhil066. Il combine la technologie Retrieval Augmented Generation (RAG) pour aider les utilisateurs à télécharger des documents (par exemple, des fichiers PDF, DOCX ou TXT), par le biais du runtime local, afin d'obtenir une recherche efficace de documents et des questions-réponses intelligentes. Le projet utilise la recherche hybride (BM25 + FAISS), la réorganisation neuronale et le graphe de connaissances. Le projet utilise des fonctionnalités avancées telles que la recherche hybride (BM25 + FAISS), la réorganisation neuronale et le graphe de connaissances (GraphRAG) pour garantir l'extraction d'informations contextuelles précises et pertinentes à partir des documents. Il convient aux scénarios qui nécessitent une protection de la vie privée ou une utilisation hors ligne, tels que la gestion des connaissances personnelles et le traitement des documents d'entreprise. Le projet prend en charge les interfaces Docker et Streamlit, ce qui facilite l'installation et permet aux utilisateurs de démarrer facilement.

DeepSeek-RAG-Chatbot:本地运行的 DeepSeek RAG 聊天机器人

 

Liste des fonctions

  • Téléchargement et traitement des documentsPrise en charge du téléchargement de fichiers au format PDF, DOCX, TXT, etc., de la division automatique des documents et de la génération d'incrustations vectorielles.
  • Mécanisme de recherche hybride: en liaison avec l'Agence européenne pour la sécurité et la santé au travail BM25 et FAISS pour retrouver rapidement le contenu pertinent des documents.
  • Soutien aux graphes de connaissances (GraphRAG)Les documents : Construire un graphe de connaissances des documents pour comprendre les relations entre les entités et améliorer la précision contextuelle des réponses.
  • réorganisation neuronaleLes résultats de la recherche sont réorganisés à l'aide d'un modèle de codage croisé afin de garantir que les informations les plus pertinentes s'affichent en premier.
  • Extension des requêtes (HyDE): Générer des réponses hypothétiques pour étendre les requêtes des utilisateurs et améliorer le rappel de la recherche.
  • Modèles locaux: à travers Ollama adjuvant DeepSeek R1 et d'autres modèles sont déployés localement pour garantir la confidentialité des données.
  • Flux de réponses en temps réelLa sortie en continu est fournie pour que les utilisateurs puissent voir instantanément les résultats générés.
  • Support DockerLes services d'assistance à la clientèle : Simplifiez l'installation et l'exploitation grâce au déploiement conteneurisé de Docker.
  • Interface StreamlitInterface graphique intuitive pour faciliter le téléchargement de fichiers et le dialogue interactif.

 

Utiliser l'aide

Processus d'installation

DeepSeek-RAG-Chatbot fonctionne en local et nécessite une certaine configuration de l'environnement. Vous trouverez ci-dessous les étapes détaillées de l'installation :

conditions préalables

  • système d'exploitationWindows, macOS ou Linux.
  • exigences en matière de matérielLes logiciels d'aide à l'utilisation de l'Internet : Au moins 8 Go de mémoire vive (16 Go recommandés) et une carte graphique CUDA si vous utilisez l'accélération GPU.
  • dépendance logiciellePython 3.8+, Git, Docker (optionnel).

Étape 1 : Cloner le projet

  1. Ouvrez un terminal et exécutez la commande suivante pour cloner votre dépôt GitHub :
git clone https://github.com/SaiAkhil066/DeepSeek-RAG-Chatbot.git
  1. Accédez au catalogue de projets :
cd DeepSeek-RAG-Chatbot

Étape 2 : Configuration de l'environnement Python

  1. Créer un environnement virtuel :
python -m venv venv
  1. Activer l'environnement virtuel :
  • Fenêtres :venv\Scripts\activate
  • macOS/Linux :source venv/bin/activate
  1. Mise à jour de pip et installation des dépendances :
pip install --upgrade pip
pip install -r requirements.txt

Les dépendances comprennent streamlit,langchain,faiss-gpu(s'il y a un GPU), etc.

Étape 3 : Installation et configuration d'Ollama

  1. Téléchargez et installez Ollama (visitez ollama.com pour obtenir le paquet d'installation).
  2. Tirer le modèle DeepSeek R1 (paramètres par défaut 7B, d'autres versions telles que 1.5B ou 32B sont disponibles selon les besoins) :
ollama pull deepseek-r1:7b
ollama pull nomic-embed-text
  1. Assurez-vous que le service Ollama est en cours d'exécution et que l'adresse d'écoute par défaut est localhost:11434.

Étape 4 : (Facultatif) Déploiement Docker

Si vous ne souhaitez pas configurer votre environnement manuellement, vous pouvez utiliser Docker :

  1. Installer Docker (voir docker.com).
  2. Exécutez-le dans le répertoire racine du projet :
docker-compose up
  1. Docker extrait automatiquement les services Ollama et chatbot, les exécute, puis accède à l'espace de travail de http://localhost:8501.

Étape 5 : Lancer l'application

  1. Exécuter Streamlit dans un environnement virtuel :

streamlit run app.py

  1. Le navigateur ouvrira automatiquement le http://localhost:8501pour accéder à l'écran de discussion.

Fonctions de fonctionnement

Fonction 1 : Téléchargement de documents

  1. Accéder à l'interfaceUne fois lancée, l'interface Streamlit comporte une barre latérale "Charger des documents" sur le côté gauche de l'écran.
  2. Sélectionner un fichierCliquez sur le bouton "Parcourir les fichiers" pour sélectionner un fichier PDF, DOCX ou TXT local.
  3. Traitement des documentsLe temps de traitement varie en fonction de la taille du fichier et est généralement compris entre quelques secondes et quelques minutes.
  • attirer l'attention sur qqch.Le message de confirmation "Traitement du fichier terminé" s'affiche dans la barre latérale.

Fonction 2 : Questionnement et recherche

  1. Problèmes de saisiePour ce faire, vous pouvez poser une question dans la boîte de dialogue en chinois ou en anglais, par exemple : "Quel est le but de GraphRAG tel qu'il est mentionné dans la documentation ? dans la documentation.
  2. processus de récupération: :
  • Le système utilise BM25 et FAISS pour récupérer des fragments de documents pertinents.
  • GraphRAG analyse les relations d'entité entre les fragments.
  • La réorganisation neuronale optimise l'ordre des résultats.
  • HyDE élargit la requête pour couvrir un contenu plus pertinent.
  1. Générer des réponsesDeepSeek R1 génère des réponses basées sur les résultats de la recherche, et les réponses sont produites dans un format de flux et affichées étape par étape sur l'interface.
  • exemple typiqueSi vous demandez "Qu'est-ce que la recherche hybride ? la réponse peut être "La recherche hybride combine BM25 et FAISS, BM25 est responsable de la correspondance des mots clés et FAISS localise rapidement le contenu grâce à la similarité des vecteurs".

Fonction 3 : Application du graphe de connaissances

  1. Activer GraphRAGActivé par défaut, aucune action supplémentaire n'est requise.
  2. Poser des questions complexesPar exemple, "Quelle est la relation de coopération entre l'entreprise A et l'entreprise B ?". .
  3. Vitrine des résultatsLe système ne renvoie pas seulement du texte, mais fournit également des réponses relationnelles basées sur le graphe de connaissances, par exemple "L'entreprise A et l'entreprise B ont signé un accord de coopération technique en 2023".

Fonction 4 : Ajustement des modèles et des paramètres

  1. Modèle de remplacement: en .env Modifier dans le fichier MODEL paramètre, par exemple à deepseek-r1:1.5b.
  2. optimiser les performancesSi le matériel le permet, installez le faiss-gpu Si l'accélération GPU est activée, les vitesses de recherche peuvent être multipliées par trois.

Conseils et astuces

  • Prise en charge de plusieurs documentsLes fichiers peuvent être téléchargés simultanément et le système intégrera le contenu pour répondre aux questions.
  • clarté des questionsLes questions sont posées de manière aussi précise que possible et évitent les affirmations vagues afin d'améliorer la précision de vos réponses.
  • Vérifier les journauxSi vous rencontrez une erreur, vous pouvez consulter les journaux du terminal pour résoudre le problème, par exemple si le modèle n'est pas téléchargé ou si le port est occupé.

mise en garde

  • Vie privéeL'utilisation locale ne nécessite pas de connexion internet et les données ne sont pas téléchargées dans le nuage.
  • occupation des ressourcesLes grands modèles et les calculs vectoriels à haute dimension nécessitent beaucoup de mémoire, il est donc recommandé de fermer les programmes non pertinents.
  • Mise à jour du modèleFonctionnement régulier ollama pull Obtenir la dernière version du modèle DeepSeek.

Une fois les étapes ci-dessus terminées, les utilisateurs peuvent interagir avec DeepSeek-RAG-Chatbot par le biais de leur navigateur et profiter d'une expérience efficace d'interrogation de documents.

© déclaration de droits d'auteur
AiPPT

Articles connexes

Pas de commentaires

Vous devez être connecté pour participer aux commentaires !
S'inscrire maintenant
aucun
Pas de commentaires...