Este projeto implementa um sistema de consulta de documentos movido a IA usando os modelos de idiomas Langchain, Chromadb e Openai. Ele permite que os usuários criem um banco de dados pesquisável a partir de documentos do Markdown e consulte -o usando a linguagem natural.

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
Siga estas etapas para configurar rapidamente e usar o mecanismo de consulta Vectordb-Llm baseado em RAG:
Crie um banco de dados a partir de seus documentos de Markdown:
python create_database.py --data_folder data/go-docs --chroma_db_path chroma_go_docs/
Este comando processará os arquivos de marcação no diretório Data/ Go-Docs e criará um banco de dados vetorial na pasta Chroma_GO_DOCS/.
Consulte o banco de dados com uma pergunta de linguagem natural:
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
Veja a resposta gerada pela IA:
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.
Para obter instruções de uso mais detalhadas, consulte as seções a seguir:
Crie o banco de dados
python create_database.py --data_folder path/to/your/markdown/files --chroma_db_path path/to/save/database
Consulte o banco de dados
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 criação de banco de dadosquery_data.py : script de consulta de banco de dadosestimate_cost.py : módulo de estimativa de custoget_token_count.py : utilitário de contagem de tokendata/ : Diretório de documentos de Markdownchroma/ : Storage do banco de dados Chromadb (Gitignored) text-embedding-3-small para incorporar e gpt-3.5-turbo para respostas por padrãodata/ ou especifique um caminho personalizadochroma/ (Gitignored) Este projeto está licenciado nos termos da licença do MIT. Para mais informações, consulte o arquivo de licença.
Para perguntas ou questões, abra um problema no repositório do GitHub.