Sanitized mirror from private repository - 2026-04-06 10:21:40 UTC
This commit is contained in:
113
docs/services/individual/anythingllm.md
Normal file
113
docs/services/individual/anythingllm.md
Normal file
@@ -0,0 +1,113 @@
|
||||
# AnythingLLM
|
||||
|
||||
**Local RAG Document Assistant**
|
||||
|
||||
## Service Overview
|
||||
|
||||
| Property | Value |
|
||||
|----------|-------|
|
||||
| **Service Name** | anythingllm |
|
||||
| **Host** | atlantis |
|
||||
| **Category** | AI |
|
||||
| **Docker Image** | `mintplexlabs/anythingllm:latest` |
|
||||
| **Compose File** | `hosts/synology/atlantis/anythingllm/docker-compose.yml` |
|
||||
| **Port** | 3101 |
|
||||
| **URL** | `http://192.168.0.200:3101` |
|
||||
|
||||
## Purpose
|
||||
|
||||
AnythingLLM is a self-hosted, local-first document assistant powered by RAG (Retrieval-Augmented Generation). It indexes documents into a vector database, then uses a local LLM to answer questions with context from those documents.
|
||||
|
||||
Primary use cases:
|
||||
- Semantic search across all Paperless-NGX documents (355 docs as of 2026-03-15)
|
||||
- Natural language Q&A over document library ("find my 2024 property tax assessment")
|
||||
- Document summarization ("summarize my medical records")
|
||||
|
||||
## Architecture
|
||||
|
||||
```
|
||||
AnythingLLM (atlantis:3101)
|
||||
├── Embedder: built-in all-MiniLM-L6-v2 (CPU, runs locally)
|
||||
├── Vector DB: built-in LanceDB (no external service)
|
||||
├── LLM: Olares qwen3-coder:latest (30B, RTX 5090)
|
||||
│ └── Endpoint: https://a5be22681.vishinator.olares.com/v1
|
||||
└── Documents: Paperless-NGX archive (mounted read-only)
|
||||
```
|
||||
|
||||
## Configuration
|
||||
|
||||
Configuration is done through the web UI on first launch at `http://192.168.0.200:3101`.
|
||||
|
||||
### LLM Provider Setup
|
||||
|
||||
| Setting | Value |
|
||||
|---------|-------|
|
||||
| **Provider** | Generic OpenAI |
|
||||
| **Base URL** | `https://a5be22681.vishinator.olares.com/v1` |
|
||||
| **Model** | `qwen3-coder:latest` |
|
||||
| **Token Limit** | 65536 |
|
||||
| **API Key** | (leave blank or any string — Olares auth is bypassed for this endpoint) |
|
||||
|
||||
### Embedding Setup
|
||||
|
||||
| Setting | Value |
|
||||
|---------|-------|
|
||||
| **Provider** | AnythingLLM (built-in) |
|
||||
| **Model** | all-MiniLM-L6-v2 |
|
||||
|
||||
No external embedding service needed. Runs on CPU inside the container.
|
||||
|
||||
### Vector Database
|
||||
|
||||
| Setting | Value |
|
||||
|---------|-------|
|
||||
| **Provider** | LanceDB (built-in) |
|
||||
|
||||
No external vector DB service needed. Data stored in the container volume.
|
||||
|
||||
## Volumes
|
||||
|
||||
| Container Path | Host Path | Purpose |
|
||||
|----------------|-----------|---------|
|
||||
| `/app/server/storage` | `/volume2/metadata/docker/anythingllm/storage` | Config, vector DB, user data |
|
||||
| `/documents/paperless-archive` | `/volume1/archive/paperless/backup_2026-03-15/media/documents/archive` | OCR'd Paperless PDFs (read-only) |
|
||||
| `/documents/paperless-originals` | `/volume1/archive/paperless/backup_2026-03-15/media/documents/originals` | Original Paperless uploads (read-only) |
|
||||
|
||||
## Document Import
|
||||
|
||||
After initial setup via the UI:
|
||||
|
||||
1. Create a workspace (e.g., "Documents")
|
||||
2. Open the workspace, click the upload/document icon
|
||||
3. Browse to `/documents/paperless-archive` — these are OCR'd PDFs with searchable text
|
||||
4. Select all files and embed them into the workspace
|
||||
5. AnythingLLM will chunk, embed, and index all documents
|
||||
|
||||
The archive directory contains 339 OCR'd PDFs; originals has 355 files (includes non-PDF formats that Tika processed).
|
||||
|
||||
## Paperless-NGX Backup
|
||||
|
||||
The documents served to AnythingLLM come from a Paperless-NGX backup taken 2026-03-15:
|
||||
|
||||
| Property | Value |
|
||||
|----------|-------|
|
||||
| **Source** | calypso `/volume1/docker/paperlessngx/` |
|
||||
| **Destination** | atlantis `/volume1/archive/paperless/backup_2026-03-15/` |
|
||||
| **Size** | 1.6 GB |
|
||||
| **Documents** | 355 total (339 with OCR archive) |
|
||||
| **Previous backup** | `/volume1/archive/paperless/paperless_backup_2025-12-03.tar.gz` |
|
||||
|
||||
## Dependencies
|
||||
|
||||
- **Olares** must be running with qwen3-coder loaded (the only model on that box)
|
||||
- Olares endpoint must be accessible from atlantis LAN (192.168.0.145)
|
||||
- No dependency on atlantis Ollama (stopped — not needed)
|
||||
|
||||
## Troubleshooting
|
||||
|
||||
| Issue | Cause | Fix |
|
||||
|-------|-------|-----|
|
||||
| LLM responses fail | Olares qwen3-coder not running | Check: `ssh olares "sudo kubectl get pods -n ollamaserver-shared"` and scale up if needed |
|
||||
| Slow embedding | Expected on CPU (Ryzen V1780B) | Initial 355-doc ingestion may take a while; subsequent queries are fast |
|
||||
| Empty search results | Documents not yet embedded | Check workspace → documents tab, ensure files are uploaded and embedded |
|
||||
| 502 from Olares endpoint | Model loading / pod restarting | Wait 2-3 min, check Olares pod status |
|
||||
Reference in New Issue
Block a user