CDoc empowers you to have a conversation with your documents using local large language models (LLMs) and the power of Ollama, ChromaDB, and LangChain.
Key Features:
- Chat with Documents: Ask questions and get answers directly from your documents.
- Local LLM Support: Leverage the capabilities of local LLMs for offline document interaction.
- ChromaDB Support: Store and manage document metadata efficiently with ChromaDB.
- LangChain Integration: Streamline information extraction from documents through LangChain.
Target Users:
- Researchers and students seeking an efficient way to interact with research papers.
- Developers and programmers looking to analyze code documentation.
- Professionals wanting to extract key information from contracts and legal documents (Optional with OpenAI API).
Prerequisites:
- Python >=3.9 (https://www.python.org/downloads/)
- pip (usually comes pre-installed with Python)
- Ollama (https://ollama.com/)
Installation Steps:
-
Clone the repository:
git clone https://github.com/ChatDocDev/CDoc
-
Navigate to the project directory:
cd CDoc
-
Open project directory in VSCode
code .
or any other code editor
-
Install dependencies from requirements.txt
pip install -r requirements.txt
-
Pull the required models from Ollama
-
Download & install Ollama if not installed
-
Open terminal & run these command to pull the required models into local machine
For
llama3
ollama pull llama3:latest
For
nomic-embed-text
ollama pull nomic-embed-text:latest
-
Insure both models are downloaded
ollama ls
-
Serve Ollama
ollama serve
goto
localhost:11434
& you should getOllama is running
-
-
BACKEND
go to
backend
directorycd backend
create
db
folder for storing Chromadb filesmkdir db
Start Chromadb server:
chroma run --path db --port 8001
Open new terminal and go into backend folder(hint:
cd backend
) & Run backend server:python backend.py
-
FRONTEND
Open new terminal and go to frontend folder
cd frontend
Run frontend.py
streamlit run frontend.py