Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/chatdocdev/cdoc
CDoc lets you chat with your documents using local LLMs, combining Ollama, ChromaDB, and LangChain for offline, secure, and efficient information extraction. Perfect for researchers, developers, and professionals seeking quick insights from their documents.
https://github.com/chatdocdev/cdoc
chormadb fastapi langchain llama3 llm ollma python rag streamlit
Last synced: 4 months ago
JSON representation
CDoc lets you chat with your documents using local LLMs, combining Ollama, ChromaDB, and LangChain for offline, secure, and efficient information extraction. Perfect for researchers, developers, and professionals seeking quick insights from their documents.
- Host: GitHub
- URL: https://github.com/chatdocdev/cdoc
- Owner: ChatDocDev
- Created: 2024-07-28T09:38:30.000Z (6 months ago)
- Default Branch: main
- Last Pushed: 2024-08-26T08:06:39.000Z (5 months ago)
- Last Synced: 2024-10-10T18:04:17.823Z (4 months ago)
- Topics: chormadb, fastapi, langchain, llama3, llm, ollma, python, rag, streamlit
- Language: Python
- Homepage:
- Size: 157 KB
- Stars: 4
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# CDoc: Chat with Your Document
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).## Installation
**Prerequisites:**
* Python >=3.9 (https://www.python.org/downloads/)
* pip (usually comes pre-installed with Python)
* Ollama (https://ollama.com/)**Installation Steps:**
1. **Clone the repository:**
```
git clone https://github.com/ChatDocDev/CDoc
```
2. **Navigate to the project directory:**```
cd CDoc
```3. Open project directory in VSCode
```
code .
```
or any other code editor4. Install dependencies from requirements.txt
```
pip install -r requirements.txt
```5. Pull the required models from Ollama
- Download & install [Ollama](https://ollama.com/) 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 get `Ollama is running`
7. BACKEND
go to `backend` directory
```
cd backend
```create `db` folder for storing Chromadb files
```
mkdir 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
```
8. FRONTENDOpen new terminal and go to frontend folder
```
cd frontend
```Run frontend.py
```
streamlit run frontend.py
```