Ce projet est une implémentation basée sur JavaScript utilisant l'architecture innovante de génération augmentée de récupération (RAG) via LangChainJS. Ce système combine efficacement un récupérateur de documents et un générateur de réponses pour traiter des requêtes complexes avec une grande précision. Le composant « Retriever » agit comme un outil de recherche de précision au sein d'un corpus documentaire, extrayant les informations les plus pertinentes en fonction des requêtes des utilisateurs. Après la récupération, le « Générateur » synthétise ces informations en réponses cohérentes et contextuellement pertinentes. Cette approche à deux composants est idéale pour les tâches qui nécessitent une synthèse et une compréhension approfondies du contenu, telles que la génération de résumés détaillés ou la réponse à des questions à multiples facettes provenant d'un large éventail de sources documentaires. Cette application gère facilement de nombreux documents et requêtes complexes, ce qui en fait un outil précieux pour les chercheurs, les créateurs de contenu et les analystes de données.
Le projet utilise Ollama avec LangChainJS, alors assurez-vous qu'Ollama est installé. Après l'installation, exécutez
$ ollama pull gemma:2b-instruct-q5_0
$ ollama pull nomic-embed-text
en PowerShell.
Le projet utilise également ChromaDB comme base de données pour le stockage vectoriel, alors téléchargez et installez Docker depuis https://www.docker.com/ et exécutez
$ docker pull chromadb/chroma
$ docker run -p 8000:8000 chromadb/chroma
dans PowerShell pour extraire une image chromaDB et lancer un conteneur chromaDB. Les intégrations seront créées et stockées dans le conteneur chromaDB créé dans Docker.
Clonez le référentiel en utilisant git clone
.
Après le clonage, accédez au répertoire racine et exécutez npm install
dans le terminal pour installer les packages.
Une fois les packages installés avec succès, exécutez npm start
dans le terminal. Vous obtiendrez une erreur la première fois, puis exécutez à nouveau npm start
pour que le code fonctionne.
Les contributions au projet sont les bienvenues ! Veuillez créer des demandes d'extraction ou soumettre des problèmes pour suggérer des modifications au référentiel ou signaler des bogues.
Ce projet est sous licence MIT - voir le fichier LICENSE pour plus de détails.