Ce projet met en œuvre un système de requête de document alimenté en AI utilisant les modèles de langage de Langchain, ChromAdB et OpenAI. Il permet aux utilisateurs de créer une base de données consultable à partir des documents Markdown et de l'interroger en utilisant le langage naturel.

requirements.txt python -m venv .venv
source .venv/bin/activate # On Windows, use `.venvScriptsactivate`
pip install -r requirements.txt
.env : OPENAI_API_KEY=your_api_key_here
Suivez ces étapes pour configurer rapidement et utiliser le moteur de requête VectordB-LLM basé sur RAG:
Créez une base de données à partir de vos documents Markdown:
python create_database.py --data_folder data/go-docs --chroma_db_path chroma_go_docs/
Cette commande traitera les fichiers Markdown dans le répertoire Data / Go-Docs et créera une base de données vectorielle dans le dossier CHROMA_GO_DOCS /.
Interrogez la base de données avec une question de langue naturelle:
python query_data.py --query_text "Explain goroutines in go in a sentence" --chroma_db_path chroma_go_docs/ --prompt_model gpt-3.5-turbo
Voir la réponse générée par l'AI:
Goroutines are lightweight, concurrent functions or methods in Go that run independently, managed by the Go runtime, allowing for efficient parallel execution and easy implementation of concurrent programming patterns.
Pour des instructions d'utilisation plus détaillées, reportez-vous aux sections suivantes:
Créer la base de données
python create_database.py --data_folder path/to/your/markdown/files --chroma_db_path path/to/save/database
Interroger la base de données
python query_data.py --query_text "Your question here" --chroma_db_path path/to/database --prompt_model gpt-3.5-turbo
create_database.py : script de création de base de donnéesquery_data.py : script de requête de la base de donnéesestimate_cost.py : Module d'estimation des coûtsget_token_count.py : utilitaire de comptage de jetonsdata/ : Directeur de documents de Markdownchroma/ : Stockage de la base de données ChromAdB (Gitignored) text-embedding-3-small pour les intégres et gpt-3.5-turbo pour les réponses par défautdata/ ou spécifiez un chemin personnaliséchroma/ (Gitignored) Ce projet est concédé sous licence de la licence du MIT. Pour plus d'informations, veuillez vous référer au fichier de licence.
Pour des questions ou des problèmes, veuillez ouvrir un problème sur le référentiel GitHub.