Skip to content

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

DocMind

A fully local RAG (Retrieval Augmented Generation) CLI application built in Go. Ingest markdown files, create embeddings, store them in Milvus, and chat with your documents using Ollama.

Prerequisites

Setup

1. Start Milvus

docker compose up -d

Wait for Milvus to be healthy:

docker compose ps

2. Pull Ollama Models

ollama pull nomic-embed-text
ollama pull llama3.2

3. Build

go build -o docmind .

Usage

Ingest Documents

./docmind ingest ./docs

This will:

  • Scan the directory for .md files
  • Split them into heading-aware chunks
  • Generate embeddings via Ollama
  • Store everything in Milvus

Chat

./docmind chat

Type your questions and get answers grounded in your ingested documents. Type quit to exit.

Configuration

All settings can be overridden with environment variables:

Variable Default Description
OLLAMA_URL http://localhost:11434 Ollama API URL
MILVUS_ADDR localhost:19530 Milvus gRPC address
EMBED_MODEL nomic-embed-text Ollama embedding model
CHAT_MODEL llama3.2 Ollama chat model
CHUNK_SIZE 512 Max chunk size in characters
TOP_K 5 Number of results to retrieve

Architecture

Ingest: .md files -> Chunker -> Ollama Embedder -> Milvus
Chat:   Question -> Embed -> Milvus Search -> Build Prompt -> Ollama LLM -> Stream Response

About

Rag based CLI for your documentation.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages