Some checks failed
Build and Deploy Docs / build-and-deploy (push) Has been cancelled
- Видалено всі паролі та API ключі з документів - Замінено на посилання на Vault - Закрито NodePort для Memory Service (тільки internal) - Створено SECURITY-ROTATION-PLAN.md - Створено ARCHITECTURE-150-NODES.md (план для 150 нод) - Оновлено config.py (видалено hardcoded Cohere key)
396 lines
14 KiB
Markdown
396 lines
14 KiB
Markdown
# 🧠 Agent Memory Module — Status Report
|
||
|
||
**Дата:** 2026-01-10
|
||
**Версія документа:** 3.1.0
|
||
**Останнє оновлення:** 19:30 CET
|
||
|
||
---
|
||
|
||
## 📊 Загальний статус
|
||
|
||
| Компонент | NODE1 | NODE2 | NODE3 |
|
||
|-----------|:-----:|:-----:|:-----:|
|
||
| **PostgreSQL** | ✅ K8s (CloudNativePG) | ✅ Docker | ✅ Docker |
|
||
| **Memory Service** | ✅ K8s (port 30800) | ✅ Docker (port 8001) | ✅ K8s (port 8000) |
|
||
| **ComfyUI** | ❌ | ✅ macOS App (port 8000) | ✅ Running (port 8188) |
|
||
| **Qdrant** | ✅ K8s | ✅ Docker | ✅ Docker |
|
||
| **Neo4j** | ✅ K8s | ✅ Docker | ✅ Docker |
|
||
| **Ollama** | ✅ v0.13.5 | ✅ v0.12.11 | ✅ v0.13.5 |
|
||
| **Cohere API** | ✅ Configured | ✅ Configured | ✅ Configured |
|
||
| **NVIDIA GPU** | ✅ RTX 4000 SFF Ada | ❌ (Apple M4) | ✅ RTX 3090 |
|
||
| **CUDA** | ✅ 13.1 | N/A | ✅ 13.0 |
|
||
|
||
---
|
||
|
||
## 🖥️ NODE1 — Production Server (Hetzner)
|
||
|
||
**IP:** `144.76.224.179`
|
||
**OS:** Ubuntu 24.04.3 LTS
|
||
**Role:** K8s Master (K3s), Primary Database Host
|
||
|
||
### Hardware
|
||
```
|
||
GPU: NVIDIA RTX 4000 SFF Ada Generation (20GB VRAM)
|
||
Driver: 590.48.01
|
||
CUDA: 13.1
|
||
```
|
||
|
||
### Memory System Components
|
||
|
||
#### ✅ PostgreSQL (CloudNativePG)
|
||
```
|
||
Status: Running (1/1)
|
||
Pod: daarion-postgres-1
|
||
Namespace: daarion
|
||
Storage: PVC-backed
|
||
Port: 5432 (internal)
|
||
```
|
||
|
||
**Таблиці (Agent Memory Schema):**
|
||
| Таблиця | Призначення |
|
||
|---------|-------------|
|
||
| `organizations` | Мультитенантність |
|
||
| `workspaces` | Проєкти в організації |
|
||
| `users` | Користувачі системи |
|
||
| `agents` | AI агенти |
|
||
| `conversation_threads` | Контекст розмов (Short-term) |
|
||
| `conversation_events` | Сирий лог повідомлень (Short-term) |
|
||
| `thread_summaries` | Підсумки тредів (Mid-term) |
|
||
| `long_term_memory_items` | Факти, преференції (Long-term) |
|
||
| `memory_feedback` | Корекції користувачів |
|
||
|
||
#### ✅ Qdrant (Vector Database)
|
||
```
|
||
Status: Running (1/1)
|
||
Pod: qdrant-5d45444569-hfbzg
|
||
Namespace: qdrant
|
||
Port: 6333 (internal), 30333 (NodePort)
|
||
Collection: memories (1024-dim, Cosine)
|
||
```
|
||
|
||
#### ✅ Neo4j (Graph Database)
|
||
```
|
||
Status: Running (1/1)
|
||
Pod: neo4j-76f9cbbd87-nphr5
|
||
Namespace: neo4j
|
||
HTTP: 7474 (internal), 30474 (NodePort)
|
||
Bolt: 7687 (internal), 30687 (NodePort)
|
||
Auth: neo4j/*** (Vault: neo4j/credentials)
|
||
Plugins: APOC
|
||
```
|
||
|
||
#### ✅ External Secrets (Vault Integration)
|
||
```
|
||
postgres-credentials: SecretSynced ✅
|
||
memory-service-secrets: SecretSynced ✅
|
||
```
|
||
|
||
#### ✅ Memory Service (FastAPI)
|
||
```
|
||
Pod: memory-service-76684fdd77-*
|
||
Namespace: daarion
|
||
Status: Running (1/1) ✅
|
||
Port: 8000 (internal), 30800 (NodePort)
|
||
PostgreSQL: daarion-postgres-rw.daarion:5432
|
||
Qdrant: qdrant.qdrant:6333
|
||
Cohere API: Configured ✅
|
||
```
|
||
|
||
#### ✅ Ollama
|
||
```
|
||
Version: 0.13.5
|
||
Service: systemd (enabled, running)
|
||
API: http://127.0.0.1:11434
|
||
GPU: NVIDIA RTX 4000 SFF Ada (CUDA 13.1)
|
||
```
|
||
|
||
---
|
||
|
||
## 💻 NODE2 — MacBook M4 (Development)
|
||
|
||
**Type:** Apple MacBook Pro M4
|
||
**OS:** macOS Darwin 25.2.0
|
||
**Role:** Development, Local Testing
|
||
|
||
### Memory System Components
|
||
|
||
#### ✅ PostgreSQL (Docker)
|
||
```
|
||
Container: dagi-postgres
|
||
Status: Running (healthy) ✅
|
||
Port: 5432
|
||
Database: daarion_main
|
||
Schema: Agent Memory Schema (9 tables)
|
||
```
|
||
|
||
#### ✅ Qdrant (Docker)
|
||
```
|
||
Container: qdrant-vector-db
|
||
Status: Running ✅
|
||
Ports: 6333-6335
|
||
Image: qdrant/qdrant:latest
|
||
```
|
||
|
||
#### ✅ Neo4j (Docker)
|
||
```
|
||
Container: neo4j-daarion
|
||
Status: Running ✅
|
||
HTTP: 7474
|
||
Bolt: 7687
|
||
Auth: neo4j/*** (Vault: neo4j/credentials)
|
||
Image: neo4j:5.15-community
|
||
Plugins: APOC
|
||
```
|
||
|
||
#### ✅ Ollama
|
||
```
|
||
Version: 0.12.11
|
||
Location: /opt/homebrew/bin/ollama
|
||
```
|
||
|
||
**Завантажені моделі:**
|
||
| Model | Size | Modified |
|
||
|-------|------|----------|
|
||
| deepseek-r1:70b | 42 GB | 7 weeks ago |
|
||
| qwen2.5-coder:32b | 19 GB | 7 weeks ago |
|
||
| deepseek-coder:33b | 18 GB | 7 weeks ago |
|
||
| gemma2:27b | 15 GB | 7 weeks ago |
|
||
| gpt-oss:latest | 13 GB | 7 weeks ago |
|
||
| llava:13b | 8.0 GB | 6 weeks ago |
|
||
| mistral-nemo:12b | 7.1 GB | 7 weeks ago |
|
||
| phi3:latest | 2.2 GB | 7 weeks ago |
|
||
| starcoder2:3b | 1.7 GB | 7 weeks ago |
|
||
|
||
#### ✅ Memory Service (FastAPI)
|
||
```
|
||
Container: memory-service
|
||
Status: Running ✅
|
||
Port: 8001
|
||
PostgreSQL: localhost:5432
|
||
Qdrant: localhost:6333
|
||
Cohere API: Configured ✅
|
||
```
|
||
|
||
#### ✅ ComfyUI
|
||
```
|
||
Type: macOS Desktop App
|
||
Status: Running ✅
|
||
Port: 8000
|
||
Location: /Applications/ComfyUI.app
|
||
User Directory: /Users/apple/Documents/ComfyUI
|
||
```
|
||
|
||
---
|
||
|
||
## 🎮 NODE3 — AI/ML Workstation
|
||
|
||
**IP:** `80.77.35.151:33147`
|
||
**OS:** Linux (Ubuntu)
|
||
**Role:** GPU Compute, ML Inference, GitLab Host
|
||
|
||
### Hardware
|
||
```
|
||
GPU: NVIDIA GeForce RTX 3090 (24GB VRAM)
|
||
Driver: 580.95.05
|
||
CUDA: 13.0
|
||
```
|
||
|
||
### Memory System Components
|
||
|
||
#### ✅ PostgreSQL (Docker)
|
||
```
|
||
Container: postgres-daarion
|
||
Image: postgres:16-alpine
|
||
Status: Running ✅
|
||
Port: 5432
|
||
Database: daarion_main
|
||
Auth: postgres/*** (Vault: postgres/credentials)
|
||
Schema: Agent Memory Schema (9 tables)
|
||
```
|
||
|
||
#### ✅ Qdrant (Docker)
|
||
```
|
||
Container: qdrant-daarion
|
||
Image: qdrant/qdrant:v1.7.4
|
||
Status: Running ✅
|
||
Ports: 6333, 6334
|
||
Collection: memories (1024-dim, Cosine)
|
||
```
|
||
|
||
#### ✅ Neo4j (Docker)
|
||
```
|
||
Container: neo4j-daarion
|
||
Image: neo4j:5.15-community
|
||
Status: Running ✅
|
||
HTTP: 7474
|
||
Bolt: 7687
|
||
Auth: neo4j/*** (Vault: neo4j/credentials)
|
||
Plugins: APOC
|
||
```
|
||
|
||
#### ✅ Ollama
|
||
```
|
||
Version: 0.13.5
|
||
Location: /usr/local/bin/ollama
|
||
GPU: RTX 3090 (CUDA enabled)
|
||
```
|
||
|
||
**Завантажені моделі:**
|
||
| Model | Size | Modified |
|
||
|-------|------|----------|
|
||
| qwen3:32b | 20 GB | 25 hours ago |
|
||
| llama3:latest | 4.7 GB | 2 days ago |
|
||
|
||
#### ✅ Memory Service (FastAPI)
|
||
```
|
||
Pod: memory-service-node3-*
|
||
Namespace: daarion
|
||
Status: Running (1/1) ✅
|
||
Port: 8000 (hostNetwork)
|
||
PostgreSQL: localhost:5432
|
||
Qdrant: localhost:6333
|
||
Cohere API: Configured ✅
|
||
Node: llm80-che-1-1 (K3s worker)
|
||
```
|
||
|
||
#### ✅ ComfyUI
|
||
```
|
||
Location: /home/zevs/ComfyUI
|
||
Status: Running ✅
|
||
Port: 8188
|
||
Version: 0.8.2
|
||
Frontend: 1.36.13
|
||
GPU: RTX 3090 (CUDA enabled)
|
||
Python: 3.12.3
|
||
PyTorch: 2.5.1+cu121
|
||
URL: http://80.77.35.151:8188 (via SSH tunnel)
|
||
```
|
||
|
||
---
|
||
|
||
## 🔗 Архітектура Memory Module
|
||
|
||
```
|
||
┌─────────────────────────────────────────────────────────────────┐
|
||
│ AGENT MEMORY SYSTEM │
|
||
├─────────────────────────────────────────────────────────────────┤
|
||
│ │
|
||
│ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │
|
||
│ │ SHORT-TERM │ │ MID-TERM │ │ LONG-TERM │ │
|
||
│ │ │ │ │ │ │ │
|
||
│ │ conversation │ │ thread │ │ memory │ │
|
||
│ │ _events │───▶│ _summaries │───▶│ _items │ │
|
||
│ │ │ │ │ │ │ │
|
||
│ │ (raw log) │ │ (rolling │ │ (distilled │ │
|
||
│ │ │ │ summaries) │ │ facts) │ │
|
||
│ └──────────────┘ └──────────────┘ └──────────────┘ │
|
||
│ │ │ │ │
|
||
│ └───────────────────┼───────────────────┘ │
|
||
│ │ │
|
||
│ ▼ │
|
||
│ ┌─────────────────────────────────────────────────────────┐ │
|
||
│ │ PostgreSQL │ │
|
||
│ │ NODE1 (K8s) + NODE3 (Docker) │ │
|
||
│ └─────────────────────────────────────────────────────────┘ │
|
||
│ │ │
|
||
│ ▼ │
|
||
│ ┌─────────────────────────────────────────────────────────┐ │
|
||
│ │ Qdrant │ │
|
||
│ │ NODE1 (K8s) + NODE2 (Docker) + NODE3 (Docker) │ │
|
||
│ │ Semantic Search (1024-dim) │ │
|
||
│ │ Cohere embed-multilingual-v3.0 │ │
|
||
│ └─────────────────────────────────────────────────────────┘ │
|
||
│ │ │
|
||
│ ▼ │
|
||
│ ┌─────────────────────────────────────────────────────────┐ │
|
||
│ │ Neo4j │ │
|
||
│ │ NODE1 (K8s) + NODE2 (Docker) + NODE3 (Docker) │ │
|
||
│ │ Knowledge Graph + Relationships │ │
|
||
│ └─────────────────────────────────────────────────────────┘ │
|
||
│ │
|
||
├─────────────────────────────────────────────────────────────────┤
|
||
│ INFERENCE LAYER │
|
||
│ │
|
||
│ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │
|
||
│ │ NODE1 │ │ NODE2 │ │ NODE3 │ │
|
||
│ │ Ollama │ │ Ollama │ │ Ollama │ │
|
||
│ │ (RTX 4000) │ │ (M4) │ │ (RTX 3090) │ │
|
||
│ │ │ │ │ │ │ │
|
||
│ │ 20GB VRAM │ │ 9 models │ │ 24GB VRAM │ │
|
||
│ │ CUDA 13.1 │ │ (42GB max) │ │ CUDA 13.0 │ │
|
||
│ └──────────────┘ └──────────────┘ └──────────────┘ │
|
||
│ │
|
||
└─────────────────────────────────────────────────────────────────┘
|
||
```
|
||
|
||
---
|
||
|
||
## 📋 TODO / Recommendations
|
||
|
||
### ✅ Виконано (2026-01-10)
|
||
- [x] **NODE1** — Встановлено Neo4j в K8s
|
||
- [x] **NODE1** — NVIDIA драйвери та CUDA 13.1
|
||
- [x] **NODE2** — Виправлено Neo4j контейнер
|
||
- [x] **NODE2** — Перезапущено Qdrant
|
||
- [x] **NODE2** — Застосовано Agent Memory Schema
|
||
- [x] **NODE3** — Встановлено Qdrant
|
||
- [x] **NODE3** — Встановлено Neo4j
|
||
- [x] **NODE3** — Застосовано Agent Memory Schema
|
||
- [x] **NODE3** — Встановлено ComfyUI (v0.8.2, PyTorch+CUDA)
|
||
- [x] **NODE1** — Запущено Memory Service в K8s (port 30800)
|
||
- [x] **NODE2** — Запущено Memory Service в Docker (port 8001)
|
||
- [x] **NODE3** — Запущено Memory Service в Docker (port 8001)
|
||
- [x] **NODE3** — Мігровано Memory Service з Docker в K8s ✅
|
||
- [x] **NODE3** — Додано до K3s кластера як worker (llm80-che-1-1)
|
||
- [x] **Всі ноди** — Налаштовано Cohere API для embeddings
|
||
- [x] **NODE2** — Перевірено ComfyUI (macOS App, port 8000)
|
||
|
||
### Рекомендовані
|
||
- [ ] **NODE1** — Завантажити базову модель в Ollama (e.g., `llama3:8b`)
|
||
- [ ] Налаштувати реплікацію PostgreSQL NODE1 ↔ NODE3
|
||
- [ ] Створити systemd service для ComfyUI на NODE3
|
||
|
||
### Опціональні
|
||
- [ ] Налаштувати Neo4j кластер між нодами
|
||
- [ ] Встановити pgvector для PostgreSQL
|
||
- [ ] Налаштувати backup для всіх баз даних
|
||
|
||
---
|
||
|
||
## 🔐 Credentials Reference
|
||
|
||
| Service | Location | Auth |
|
||
|---------|----------|------|
|
||
| PostgreSQL NODE1 | K8s (daarion ns) | Via Vault → External Secrets |
|
||
| PostgreSQL NODE2 | Docker :5432 | postgres (local) |
|
||
| PostgreSQL NODE3 | Docker :5432 | postgres/*** (Vault) |
|
||
| Memory Service NODE1 | K8s :30800 | JWT/mTLS (TODO) |
|
||
| Memory Service NODE2 | Docker :8001 | JWT/mTLS (TODO) |
|
||
| Memory Service NODE3 | K8s :8000 | JWT/mTLS (TODO) |
|
||
| ComfyUI NODE2 | macOS App :8000 | No auth |
|
||
| ComfyUI NODE3 | :8188 | No auth (SSH tunnel) |
|
||
| Qdrant NODE1 | K8s (qdrant ns) | API key (Vault) |
|
||
| Qdrant NODE2 | Docker :6333 | API key (Vault) |
|
||
| Qdrant NODE3 | Docker :6333 | API key (Vault) |
|
||
| Neo4j NODE1 | K8s :30474/:30687 | neo4j/*** (Vault) |
|
||
| Neo4j NODE2 | Docker :7474/:7687 | neo4j/*** (Vault) |
|
||
| Neo4j NODE3 | Docker :7474/:7687 | neo4j/*** (Vault) |
|
||
| Ollama NODE1 | localhost:11434 | No auth |
|
||
| Ollama NODE2 | localhost:11434 | No auth |
|
||
| Ollama NODE3 | localhost:11434 | SSH tunnel required |
|
||
| Cohere API | Memory Service | *** (Vault: cohere/api_key) |
|
||
|
||
---
|
||
|
||
## 📁 Related Files
|
||
|
||
- `infrastructure/database/agent-memory-schema.sql` — PostgreSQL schema
|
||
- `infrastructure/kubernetes/apps/qdrant/deployment.yaml` — Qdrant K8s config
|
||
- `infrastructure/kubernetes/neo4j/` — Neo4j K8s config
|
||
- `services/memory-service/` — FastAPI Memory Service (not deployed yet)
|
||
- `INFRASTRUCTURE.md` — Main infrastructure documentation
|
||
|
||
---
|
||
|
||
*Документ оновлено: 2026-01-10 17:30 CET*
|