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
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:14b11.5 GB VRAM - Fase 2 ✅ — pgvector Docker
10.100.1.24:5433, DBgeonet_project_search, 1.784 chunks dari 1.031 files - Fase 3 ✅ —
POST /api/v1/ai/chatlive di geonet-console, RAG end-to-end verified - Bug selama deploy:
config/api.phptertimparoutes/api.phpsaat 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 chatapp/Http/Controllers/Api/V1/AiChatController.php— REST handlerconfig/pgvector.php— readsPGVECTOR_*env varsconfig/ollama.php— updated default ke10.100.1.14:11434+qwen2.5-coder:14b
Indexer (Ollama/indexer/)
indexer.py— crawl monorepo, chunk 80 baris, embed nomic-embed-text, insert pgvectorrequirements.txt—psycopg[binary],requests,python-dotenv.env.example—OLLAMA_BASE_URL,PGVECTOR_*,REPO_ROOT,CHUNK_SIZE=80- Jalankan ulang:
python indexer.pydari folderOllama/indexer/dengan.envaktif
Lanjut dari sini
- UI chat di Super Apps PWA — React component,
POST /api/v1/ai/chat, streaming optional - User memory — endpoint simpan/load dari tabel
user_memorydi pgvector - Re-index otomatis — cron harian atau webhook git post-receive
- Permission guard — tambah
ai.chatke 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/*.phpke folder berbeda — file bisa tertimpa