diff --git a/docs/MEMORY-MODULE-STATUS.md b/docs/MEMORY-MODULE-STATUS.md index 91298f87..97f58dd2 100644 --- a/docs/MEMORY-MODULE-STATUS.md +++ b/docs/MEMORY-MODULE-STATUS.md @@ -1,20 +1,21 @@ # 🧠 Agent Memory Module β€” Status Report **Π”Π°Ρ‚Π°:** 2026-01-10 -**ВСрсія Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°:** 1.0.0 +**ВСрсія Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°:** 2.0.0 +**ΠžΡΡ‚Π°Π½Π½Ρ” оновлСння:** 17:30 CET --- ## πŸ“Š Π—Π°Π³Π°Π»ΡŒΠ½ΠΈΠΉ статус | ΠšΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ | NODE1 | NODE2 | NODE3 | -|-----------|-------|-------|-------| +|-----------|:-----:|:-----:|:-----:| | **PostgreSQL** | βœ… K8s (CloudNativePG) | ❌ | βœ… Docker | -| **Qdrant** | βœ… K8s | βœ… Docker (unhealthy) | ❌ | -| **Neo4j** | ❌ | ⚠️ Docker (restarting) | ❌ | -| **Ollama** | βœ… v0.13.5 (fresh) | βœ… v0.12.11 | βœ… v0.13.5 | -| **NVIDIA GPU** | ❌ (CPU only) | ❌ (Apple M4) | βœ… RTX 3090 | -| **LTS-2 (CUDA)** | ⚠️ Driver 590.48.01 | N/A | βœ… CUDA 13.0 | +| **Qdrant** | βœ… K8s | βœ… Docker | βœ… Docker | +| **Neo4j** | βœ… K8s | βœ… Docker | βœ… Docker | +| **Ollama** | βœ… v0.13.5 | βœ… v0.12.11 | βœ… v0.13.5 | +| **NVIDIA GPU** | βœ… RTX 4000 SFF Ada | ❌ (Apple M4) | βœ… RTX 3090 | +| **CUDA** | βœ… 13.1 | N/A | βœ… 13.0 | --- @@ -24,6 +25,13 @@ **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) @@ -32,6 +40,7 @@ Status: Running (1/1) Pod: daarion-postgres-1 Namespace: daarion Storage: PVC-backed +Port: 5432 (internal) ``` **Π’Π°Π±Π»ΠΈΡ†Ρ– (Agent Memory Schema):** @@ -53,10 +62,19 @@ Status: Running (1/1) Pod: qdrant-5d45444569-hfbzg Namespace: qdrant Port: 6333 (internal), 30333 (NodePort) +Collection: memories (1024-dim, Cosine) ``` -**ΠšΠΎΠ»Π΅ΠΊΡ†Ρ–Ρ—:** -- `memories` β€” 1024-dimensional vectors (Cohere embed-multilingual-v3.0) +#### βœ… 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/DaarionNeo4j2026! +Plugins: APOC +``` #### βœ… External Secrets (Vault Integration) ``` @@ -69,13 +87,7 @@ memory-service-secrets: SecretSynced βœ… Version: 0.13.5 Service: systemd (enabled, running) API: http://127.0.0.1:11434 -Models: (none downloaded yet) -GPU: NVIDIA Driver 590.48.01 (DKMS installed) -``` - -#### ❌ Neo4j -``` -Status: NOT INSTALLED +GPU: NVIDIA RTX 4000 SFF Ada (CUDA 13.1) ``` --- @@ -94,20 +106,23 @@ Status: NOT INSTALLED Note: Can use NODE1's PostgreSQL via SSH tunnel ``` -#### ⚠️ Qdrant (Docker) +#### βœ… Qdrant (Docker) ``` Container: qdrant-vector-db -Status: Up 5 hours (unhealthy) +Status: Running βœ… Ports: 6333-6335 +Image: qdrant/qdrant:latest ``` -#### ⚠️ Neo4j (Docker) +#### βœ… Neo4j (Docker) ``` -Containers: - - dagi-neo4j: Restarting (exit code 1) - - dagi-neo4j-exporter: Restarting (exit code 0) +Container: neo4j-daarion +Status: Running βœ… +HTTP: 7474 +Bolt: 7687 +Auth: neo4j/DaarionNeo4j2026! Image: neo4j:5.15-community -Status: NEEDS ATTENTION +Plugins: APOC ``` #### βœ… Ollama @@ -148,21 +163,33 @@ CUDA: 13.0 #### βœ… PostgreSQL (Docker) ``` -Container: dagi-postgres -Image: postgres (23e88eb049fd) -Status: Up 3 hours +Container: postgres-daarion +Image: postgres:16-alpine +Status: Running βœ… Port: 5432 +Database: daarion_main +Auth: postgres/DaarionPostgres2026! +Schema: Agent Memory Schema (9 tables) ``` -#### ❌ Qdrant +#### βœ… Qdrant (Docker) ``` -Status: NOT INSTALLED -Note: Can deploy via Docker or K3s +Container: qdrant-daarion +Image: qdrant/qdrant:v1.7.4 +Status: Running βœ… +Ports: 6333, 6334 +Collection: memories (1024-dim, Cosine) ``` -#### ❌ Neo4j +#### βœ… Neo4j (Docker) ``` -Status: NOT INSTALLED +Container: neo4j-daarion +Image: neo4j:5.15-community +Status: Running βœ… +HTTP: 7474 +Bolt: 7687 +Auth: neo4j/DaarionNeo4j2026! +Plugins: APOC ``` #### βœ… Ollama @@ -178,16 +205,6 @@ GPU: RTX 3090 (CUDA enabled) | qwen3:32b | 20 GB | 25 hours ago | | llama3:latest | 4.7 GB | 2 days ago | -#### βœ… LTS-2 / CUDA -``` -NVIDIA-SMI: 580.95.05 -Driver Version: 580.95.05 -CUDA Version: 13.0 -GPU Memory: 24576 MiB -Temperature: 56Β°C -Power: 126W / 390W -``` - --- ## πŸ”— АрхітСктура Memory Module @@ -211,16 +228,24 @@ Power: 126W / 390W β”‚ β”‚ β”‚ β”‚ β–Ό β”‚ β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚ -β”‚ β”‚ PostgreSQL (NODE1) β”‚ β”‚ -β”‚ β”‚ CloudNativePG + pgvector β”‚ β”‚ +β”‚ β”‚ PostgreSQL β”‚ β”‚ +β”‚ β”‚ NODE1 (K8s) + NODE3 (Docker) β”‚ β”‚ β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚ β”‚ β”‚ β”‚ β”‚ β–Ό β”‚ β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚ -β”‚ β”‚ Qdrant (NODE1) β”‚ β”‚ +β”‚ β”‚ 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 β”‚ @@ -228,10 +253,10 @@ Power: 126W / 390W β”‚ β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚ β”‚ β”‚ NODE1 β”‚ β”‚ NODE2 β”‚ β”‚ NODE3 β”‚ β”‚ β”‚ β”‚ Ollama β”‚ β”‚ Ollama β”‚ β”‚ Ollama β”‚ β”‚ -β”‚ β”‚ (CPU) β”‚ β”‚ (M4) β”‚ β”‚ (RTX 3090) β”‚ β”‚ +β”‚ β”‚ (RTX 4000) β”‚ β”‚ (M4) β”‚ β”‚ (RTX 3090) β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ β”‚ -β”‚ β”‚ API-only β”‚ β”‚ 9 models β”‚ β”‚ 2 models β”‚ β”‚ -β”‚ β”‚ inference β”‚ β”‚ (42GB max) β”‚ β”‚ (20GB max) β”‚ β”‚ +β”‚ β”‚ 20GB VRAM β”‚ β”‚ 9 models β”‚ β”‚ 24GB VRAM β”‚ β”‚ +β”‚ β”‚ CUDA 13.1 β”‚ β”‚ (42GB max) β”‚ β”‚ CUDA 13.0 β”‚ β”‚ β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚ β”‚ β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ @@ -241,31 +266,44 @@ Power: 126W / 390W ## πŸ“‹ TODO / Recommendations -### ΠšΡ€ΠΈΡ‚ΠΈΡ‡Π½Ρ– -- [ ] **NODE2 Neo4j** β€” Π’ΠΈΠΏΡ€Π°Π²ΠΈΡ‚ΠΈ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ (постійний restart) -- [ ] **NODE2 Qdrant** β€” ΠŸΠ΅Ρ€Π΅Π²Ρ–Ρ€ΠΈΡ‚ΠΈ healthcheck +### βœ… Π’ΠΈΠΊΠΎΠ½Π°Π½ΠΎ (2026-01-10) +- [x] **NODE1** β€” ВстановлСно Neo4j Π² K8s +- [x] **NODE1** β€” NVIDIA Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ΠΈ Ρ‚Π° CUDA 13.1 +- [x] **NODE2** β€” Π’ΠΈΠΏΡ€Π°Π²Π»Π΅Π½ΠΎ Neo4j ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ +- [x] **NODE2** β€” ΠŸΠ΅Ρ€Π΅Π·Π°ΠΏΡƒΡ‰Π΅Π½ΠΎ Qdrant +- [x] **NODE3** β€” ВстановлСно Qdrant +- [x] **NODE3** β€” ВстановлСно Neo4j +- [x] **NODE3** β€” Застосовано Agent Memory Schema ### Π Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΠΎΠ²Π°Π½Ρ– - [ ] **NODE1** β€” Π—Π°Π²Π°Π½Ρ‚Π°ΠΆΠΈΡ‚ΠΈ Π±Π°Π·ΠΎΠ²Ρƒ модСль Π² Ollama (e.g., `llama3:8b`) -- [ ] **NODE3** β€” Встановити Qdrant для локального сСмантичного ΠΏΠΎΡˆΡƒΠΊΡƒ -- [ ] **NODE1** β€” Встановити Neo4j для Π³Ρ€Π°Ρ„ΠΎΠ²ΠΎΠ³ΠΎ збСрігання Π·Π²'язків - -### ΠžΠΏΡ†Ρ–ΠΎΠ½Π°Π»ΡŒΠ½Ρ– - [ ] ΠΠ°Π»Π°ΡˆΡ‚ΡƒΠ²Π°Ρ‚ΠΈ Ρ€Π΅ΠΏΠ»Ρ–ΠΊΠ°Ρ†Ρ–ΡŽ PostgreSQL NODE1 ↔ NODE3 - [ ] Π ΠΎΠ·Π³ΠΎΡ€Π½ΡƒΡ‚ΠΈ Memory Service (FastAPI) Π² K8s - [ ] Π†Π½Ρ‚Π΅Π³Ρ€ΡƒΠ²Π°Ρ‚ΠΈ Cohere API для Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΡ‡Π½ΠΎΠ³ΠΎ Π΅ΠΌΠ±Π΅Π΄ΠΈΠ½Π³Ρƒ +### ΠžΠΏΡ†Ρ–ΠΎΠ½Π°Π»ΡŒΠ½Ρ– +- [ ] ΠΠ°Π»Π°ΡˆΡ‚ΡƒΠ²Π°Ρ‚ΠΈ Neo4j кластСр ΠΌΡ–ΠΆ Π½ΠΎΠ΄Π°ΠΌΠΈ +- [ ] Встановити pgvector для PostgreSQL +- [ ] ΠΠ°Π»Π°ΡˆΡ‚ΡƒΠ²Π°Ρ‚ΠΈ backup для всіх Π±Π°Π· Π΄Π°Π½ΠΈΡ… + --- ## πŸ” Credentials Reference -| Service | Location | Access | -|---------|----------|--------| -| PostgreSQL | NODE1 K8s | Via Vault β†’ External Secrets | -| Qdrant | NODE1 K8s | Internal ClusterIP | -| Ollama NODE1 | localhost:11434 | UFW port 11434 | +| Service | Location | Auth | +|---------|----------|------| +| PostgreSQL NODE1 | K8s (daarion ns) | Via Vault β†’ External Secrets | +| PostgreSQL NODE3 | Docker | postgres/DaarionPostgres2026! | +| Qdrant NODE1 | K8s (qdrant ns) | No auth (internal) | +| Qdrant NODE2 | Docker :6333 | No auth | +| Qdrant NODE3 | Docker :6333 | No auth | +| Neo4j NODE1 | K8s :30474/:30687 | neo4j/DaarionNeo4j2026! | +| Neo4j NODE2 | Docker :7474/:7687 | neo4j/DaarionNeo4j2026! | +| Neo4j NODE3 | Docker :7474/:7687 | neo4j/DaarionNeo4j2026! | +| Ollama NODE1 | localhost:11434 | No auth | +| Ollama NODE2 | localhost:11434 | No auth | | Ollama NODE3 | localhost:11434 | SSH tunnel required | -| Cohere API | Memory Service | `nOdOXnuepLku2ipJWpe6acWgAsJCsDhMO0RnaEJB` | +| Cohere API | Memory Service | nOdOXnuepLku2ipJWpe6acWgAsJCsDhMO0RnaEJB | --- @@ -273,9 +311,10 @@ Power: 126W / 390W - `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:10 CET* +*Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ ΠΎΠ½ΠΎΠ²Π»Π΅Π½ΠΎ: 2026-01-10 17:30 CET*