GeoNetAgent, LDAPWeb, server-audit, server-connection
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

2.3 KiB

AI Session Summary

session: 2026-07-06-ai-onprem-fase3
project: Ollama/
version: 0.4.0
status: fase1+2+3-selesai
next: UI chat Super Apps PWA + user memory
agent: Cascade

TL;DR

  • Fase 1 — Ollama v0.31.1 GPU aktif di PC-Multimedia 10.100.1.14, qwen2.5-coder:14b 11.5 GB VRAM
  • Fase 2 — pgvector Docker 10.100.1.24:5433, DB geonet_project_search, 1.784 chunks dari 1.031 files
  • Fase 3 POST /api/v1/ai/chat live di geonet-console, RAG end-to-end verified
  • Bug selama deploy: config/api.php tertimpa routes/api.php saat scp glob → sudah fix + rebuild image

Infrastruktur aktif

Node Alamat Fungsi
PC-Multimedia 10.100.1.14:11434 Ollama GPU, qwen2.5-coder:14b + nomic-embed-text
pgvector Docker 10.100.1.24:5433 DB geonet_project_search, user geonet_ai
geonet-console 10.100.1.24 Docker Laravel 11, endpoint /api/v1/ai/chat
VM .26 10.100.1.26:11434 Fallback CPU, qwen2.5:7b

Files baru di geonet-console (sesi ini)

  • app/Services/AiChatService.php — embed → pgvector → Ollama chat
  • app/Http/Controllers/Api/V1/AiChatController.php — REST handler
  • config/pgvector.php — reads PGVECTOR_* env vars
  • config/ollama.php — updated default ke 10.100.1.14:11434 + qwen2.5-coder:14b

Indexer (Ollama/indexer/)

  • indexer.py — crawl monorepo, chunk 80 baris, embed nomic-embed-text, insert pgvector
  • requirements.txtpsycopg[binary], requests, python-dotenv
  • .env.exampleOLLAMA_BASE_URL, PGVECTOR_*, REPO_ROOT, CHUNK_SIZE=80
  • Jalankan ulang: python indexer.py dari folder Ollama/indexer/ dengan .env aktif

Lanjut dari sini

  1. UI chat di Super Apps PWA — React component, POST /api/v1/ai/chat, streaming optional
  2. User memory — endpoint simpan/load dari tabel user_memory di pgvector
  3. Re-index otomatis — cron harian atau webhook git post-receive
  4. Permission guard — tambah ai.chat ke LDAP group permissions

Jangan

  • Expose port 11434 ke internet / reverse proxy publik
  • Jalankan Ollama di 10.100.1.24
  • Simpan secret/password di repo — hanya .env.example
  • Gunakan scp glob config/*.php routes/*.php ke folder berbeda — file bisa tertimpa