docmind-ai-llm
Enrichment pendingDocMind AI is a powerful, open-source Streamlit application leveraging LlamaIndex, LangGraph, and local Large Language Models (LLMs) via Ollama, LMStudio, llama.cpp, or vLLM for advanced document anal
GraphCanon updated today · GitHub synced today
Verify the decision
Maintenance and security
Full trust report- Maintenance
- Very active (0d since push)
- As of today
- Provenance
- Not a fork · Personal account
- As of today
- Security (OSV)
- No lockfile
- As of today
Public GitHub metadata and optional OSV scans. Signals, not a guarantee. Trust methodology.
Install
pip install docmind-ai-llm PyPISimilar tools
Same-category neighbours. No typed graph edges are catalogued for this tool yet.
Evidence and technical details
Sourced facts, taxonomy, compatibility claims, README excerpt, and machine-readable endpoints.
Overview
DocMind AI is a powerful, open-source Streamlit application leveraging LlamaIndex, LangGraph, and local Large Language Models (LLMs) via Ollama, LMStudio, llama.cpp, or vLLM for advanced document analysis. Analyze, summarize, and extract insights from a wide array of file formats, securely and privately, all offline.
Capability facts
- Deploy
- Self-host
Source: dockerfile:Dockerfile · Jul 15, 2026
- Docker
- Dockerfile present
Source: dockerfile:Dockerfile · Jul 15, 2026
- Languages
- python
Source: github.language+pyproject.toml · Jul 15, 2026
Categories
Compatibility
Sourced claims from the README excerpt - not unsourced marketing copy.
Source: README excerpt (regex_v1, Jul 15, 2026)
- **LangGraph (>=1.0.10,<2.0.0)**: Four-worker supervisor orchestration (graph-native `StateGSource link
Source: README excerpt (regex_v1, Jul 15, 2026)
uv run python tools/models/pull.py \Source link
Tags
README
Installation
-
Clone the repository:
git clone https://github.com/BjornMelin/docmind-ai-llm.git cd docmind-ai-llm -
Install dependencies:
uv sync --frozenInstall the optional observability extra for LlamaIndex OpenTelemetry instrumentation:
uv sync --frozen --extra observabilitySearchable-PDF export is POSIX-only (Linux, macOS, or WSL2; native Windows is unsupported) and requires the OCRmyPDF and Tesseract executables:
uv sync --frozen --extra searchable-pdfPrefetch the default retrieval and parser artifacts, then verify the parser manifests:
uv run python tools/models/pull.py \ --all \ --cache_dir ./models_cache \ --parser-defaults \ --parser-cache-dir ./cache/models uv run python scripts/parser_health.py --checkRegenerate the schema 3 parser benchmark artifact after the code is frozen:
uv run python scripts/benchmark_parsing.py \ --generate-minimal-fixtures \ --repeat 3 \ --output docs/benchmarks/parser-runtime-validation.jsonThe checked-in schema 3 artifact is bound to its clean source commit and runtime identity. The validation record, current baseline, and measurement limits live in
docs/developers/parser-runtime-validation.md.Start loopback-only Qdrant and run the system gate when you need end-to-end validation:
./scripts/start_qdrant_local.sh DOCMIND_RUN_SYSTEM=1 \ DOCMIND_QDRANT_SYSTEM_URL=http://127.0.0.1:6333 \ uv run pytest tests/system/test_e2e_offline.py -qKey Dependencies Included:
- LlamaIndex Core (>=0.14.21,<0.15.0): Ingestion, retrieval, selectors, and query engines, with selected LLM, Hugging Face, Qdrant, and DuckDB adapters
- LangGraph (>=1.0.10,<2.0.0): Four-worker supervisor orchestration (graph-native
StateGraph, no external supervisor wrapper) - Streamlit (>=1.52.2,<2.0.0): Web interface framework
- Ollama (0.6.2): Local LLM integration
- Qdrant Client (>=1.15.1,<2.0.0): Vector database operations
- Docling (>=2.111,<3): Multi-format document conversion.
- pypdfium2 (>=5.7,<6): PDF inspection and page rasterization.
- RapidOCR (>=3.8,<4): CPU-safe local OCR using the locked wheel's hash-verified packaged models.
- FastEmbed (>=0.5.1): Direct CPU sparse query encoding
- Loguru (>=0.7.3,<1.0.0): Structured logging
- Pydantic (2.13.4): Data validation and settings.
-
Install spaCy language model:
spaCy is bundled for optional NLP enrichment (sentence segmentation + entity extraction during ingestion). Install a language model if you plan to use enrichment:
# Install the small English model (recommended, ~15MB) uv run python -m spacy download en_core_web_sm # Optional: Install larger models for better accuracy # Medium model (~50MB): uv run python -m spacy download en_core_web_md # Large model (~560MB): uv run python -m spacy download en_core_web_lgNote: spaCy models are downloaded and cached locally. The app does not auto-download models; install them explicitly for offline use.
Optional configuration (defaults shown):
# Enable/disable enrichment DOCMIND_SPACY__ENABLED=true # Pipeline name or path (blank fallback when missing) DOCMIND_SPACY__MODEL=en_core_web_sm # cpu|cuda|apple|auto (auto prefers CUDA, then Apple, else CPU) DOCMIND_SPACY__DEVICE=auto DOCMIND_SPACY__GPU_ID=0Cross-platform acceleration:
- NVIDIA CUDA (validated on Linux x86_64):
uv sync --frozen --no-group cpu --extra gpuand setDOCMIND_SPACY__DEVICE=auto|cuda; WSL2 is best effort - Apple Silicon (best effort, macOS arm64 with CPython 3.12):
uv sync --frozen --extra appleand setDOCMIND_SPACY__DEVICE=auto|apple
See
docs/specs/spec-015-nlp-enrichment-spacy.mdand - NVIDIA CUDA (validated on Linux x86_64):
For agents
This page has a .md twin and JSON over the API.