Local LLM chatbot for documents, runnable offline
Top 93.3% on sourcepulse
This project provides an offline, privacy-focused solution for interacting with local documents via a chat interface. It targets users who want to avoid cloud dependencies and leverage local Large Language Models (LLMs) for document analysis and querying.
How It Works
The system utilizes a Retrieval Augmented Generation (RAG) pipeline. Documents are processed, chunked, and embedded using nomic-embed-text
via Ollama. These embeddings are stored in a persistent Chroma vector database for efficient retrieval. User queries are also embedded, and relevant document chunks are fetched from the database to provide context to the local LLM (e.g., llama3:8b
) for response generation.
Quick Start & Requirements
pip install -r requirements.txt
.ollama pull nomic-embed-text
and ollama pull llama3:8b
.ollama serve
.python -m streamlit run local_llama_v3.py
.Highlighted Details
nomic-embed-text
for embeddings.Maintenance & Community
The project acknowledges the Ollama team, Haystack, and The-Bloke. No specific community links or roadmap details are provided in the README.
Licensing & Compatibility
Licensed under the Apache 2.0 License. This license is permissive and generally compatible with commercial use and closed-source linking.
Limitations & Caveats
The project relies on external tools like Ollama and Streamlit, which have their own system requirements. Performance will be dependent on the user's local hardware and the chosen LLM.
1 year ago
1 week