feat: add source-grounded evolution and Ollama assistant
This commit is contained in:
@@ -188,6 +188,29 @@ GEOINTEL_POSTGIS_DATA_PATH=/mnt/user/appdata/geointel/postgres-data
|
||||
|
||||
`GEOINTEL_POSTGIS_DATA_PATH` contains the embedded PostGIS database files.
|
||||
|
||||
## Local Ollama assistant
|
||||
|
||||
The repository Compose file, DockerMan template and automatic deployment all
|
||||
map `host.docker.internal` to the Unraid host and enable the source-grounded
|
||||
assistant by default. Ollama must already listen on host port `11434`;
|
||||
GeoIntel does not install or expose Ollama itself.
|
||||
|
||||
```env
|
||||
OLLAMA_ENABLED=true
|
||||
OLLAMA_BASE_URL=http://host.docker.internal:11434
|
||||
OLLAMA_DEFAULT_MODEL=qwen3.5:9b
|
||||
OLLAMA_TIMEOUT_SECONDS=120
|
||||
OLLAMA_MAX_OUTPUT_TOKENS=700
|
||||
```
|
||||
|
||||
The model dropdown comes from Ollama `/api/tags`, so changing the installed
|
||||
models requires no frontend rebuild. Verify after deployment with:
|
||||
|
||||
```bash
|
||||
curl http://127.0.0.1:1202/api/v1/assistant/status
|
||||
curl http://127.0.0.1:1202/api/v1/assistant/models
|
||||
```
|
||||
|
||||
## Update from Gitea
|
||||
|
||||
```bash
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
<WebUI>http://[IP]:[PORT:80]/</WebUI>
|
||||
<TemplateURL>deploy/unraid/geointel-unraid-template.xml</TemplateURL>
|
||||
<Icon>http://192.168.10.150:1202/geointel-icon.png</Icon>
|
||||
<ExtraParams/>
|
||||
<ExtraParams>--add-host=host.docker.internal:host-gateway</ExtraParams>
|
||||
<PostArgs/>
|
||||
<CPUset/>
|
||||
<DateInstalled/>
|
||||
@@ -34,4 +34,8 @@
|
||||
<Config Name="Orthophoto WMS URL" Target="ORTHOPHOTO_WMS_URL" Default="https://geo.api.vlaanderen.be/OMWRGBMRVL/wms" Mode="" Description="Official Digitaal Vlaanderen most-recent winter orthophoto WMS endpoint." Type="Variable" Display="advanced" Required="true" Mask="false">https://geo.api.vlaanderen.be/OMWRGBMRVL/wms</Config>
|
||||
<Config Name="Orthophoto Resolution (m)" Target="ORTHOPHOTO_RESOLUTION_M" Default="1.0" Mode="" Description="Requested analysis sampling in metres per pixel. Keep at 1.0 for the active building model profile." Type="Variable" Display="advanced" Required="true" Mask="false">1.0</Config>
|
||||
<Config Name="Orthophoto Maximum Side (m)" Target="ORTHOPHOTO_MAX_SIDE_M" Default="1024" Mode="" Description="Safety limit for each selected rectangle side before external acquisition and local inference." Type="Variable" Display="advanced" Required="true" Mask="false">1024</Config>
|
||||
<Config Name="Local Ollama Assistant" Target="OLLAMA_ENABLED" Default="true" Mode="" Description="Enable the source-grounded GeoIntel assistant backed by Ollama on the Unraid host." Type="Variable" Display="always" Required="true" Mask="false">true</Config>
|
||||
<Config Name="Ollama Base URL" Target="OLLAMA_BASE_URL" Default="http://host.docker.internal:11434" Mode="" Description="Ollama API reachable from the container. The deployment maps host.docker.internal to the Unraid host gateway." Type="Variable" Display="always" Required="true" Mask="false">http://host.docker.internal:11434</Config>
|
||||
<Config Name="Default Ollama Model" Target="OLLAMA_DEFAULT_MODEL" Default="qwen3.5:9b" Mode="" Description="Preferred locally installed Ollama model. Users can select another installed model in GeoIntel." Type="Variable" Display="always" Required="true" Mask="false">qwen3.5:9b</Config>
|
||||
<Config Name="Ollama Timeout Seconds" Target="OLLAMA_TIMEOUT_SECONDS" Default="120" Mode="" Description="Maximum wait for one local assistant response." Type="Variable" Display="advanced" Required="true" Mask="false">120</Config>
|
||||
</Container>
|
||||
|
||||
@@ -48,3 +48,11 @@ YOLO_MAX_TILES=100
|
||||
YOLO_MAX_DETECTIONS=1000
|
||||
YOLO_DUPLICATE_IOU_THRESHOLD=0.5
|
||||
YOLO_BATCH_SIZE=1
|
||||
|
||||
# Local Ollama assistant. The all-in-one container reaches the Unraid host
|
||||
# through Docker's host-gateway mapping; no Ollama port is exposed by GeoIntel.
|
||||
OLLAMA_ENABLED=true
|
||||
OLLAMA_BASE_URL=http://host.docker.internal:11434
|
||||
OLLAMA_DEFAULT_MODEL=qwen3.5:9b
|
||||
OLLAMA_TIMEOUT_SECONDS=120
|
||||
OLLAMA_MAX_OUTPUT_TOKENS=700
|
||||
|
||||
@@ -40,6 +40,11 @@ YOLO_MAX_TILES="${YOLO_MAX_TILES:-100}"
|
||||
YOLO_MAX_DETECTIONS="${YOLO_MAX_DETECTIONS:-1000}"
|
||||
YOLO_DUPLICATE_IOU_THRESHOLD="${YOLO_DUPLICATE_IOU_THRESHOLD:-0.5}"
|
||||
YOLO_BATCH_SIZE="${YOLO_BATCH_SIZE:-1}"
|
||||
OLLAMA_ENABLED="${OLLAMA_ENABLED:-true}"
|
||||
OLLAMA_BASE_URL="${OLLAMA_BASE_URL:-http://host.docker.internal:11434}"
|
||||
OLLAMA_DEFAULT_MODEL="${OLLAMA_DEFAULT_MODEL:-qwen3.5:9b}"
|
||||
OLLAMA_TIMEOUT_SECONDS="${OLLAMA_TIMEOUT_SECONDS:-120}"
|
||||
OLLAMA_MAX_OUTPUT_TOKENS="${OLLAMA_MAX_OUTPUT_TOKENS:-700}"
|
||||
|
||||
install_dockerman_metadata() {
|
||||
if [ -d /boot/config/plugins/dockerMan ]; then
|
||||
@@ -82,6 +87,7 @@ docker run -d \
|
||||
--label net.unraid.docker.managed=dockerman \
|
||||
--label 'net.unraid.docker.webui=http://[IP]:[PORT:80]/' \
|
||||
--label net.unraid.docker.icon=/boot/config/plugins/dockerMan/images/geointel-icon.png \
|
||||
--add-host host.docker.internal:host-gateway \
|
||||
-p "${GEOINTEL_FRONTEND_PORT}:80" \
|
||||
-e GEOINTEL_POSTGRES_DB="$GEOINTEL_POSTGRES_DB" \
|
||||
-e GEOINTEL_POSTGRES_USER="$GEOINTEL_POSTGRES_USER" \
|
||||
@@ -109,6 +115,11 @@ docker run -d \
|
||||
-e YOLO_MAX_DETECTIONS="$YOLO_MAX_DETECTIONS" \
|
||||
-e YOLO_DUPLICATE_IOU_THRESHOLD="$YOLO_DUPLICATE_IOU_THRESHOLD" \
|
||||
-e YOLO_BATCH_SIZE="$YOLO_BATCH_SIZE" \
|
||||
-e OLLAMA_ENABLED="$OLLAMA_ENABLED" \
|
||||
-e OLLAMA_BASE_URL="$OLLAMA_BASE_URL" \
|
||||
-e OLLAMA_DEFAULT_MODEL="$OLLAMA_DEFAULT_MODEL" \
|
||||
-e OLLAMA_TIMEOUT_SECONDS="$OLLAMA_TIMEOUT_SECONDS" \
|
||||
-e OLLAMA_MAX_OUTPUT_TOKENS="$OLLAMA_MAX_OUTPUT_TOKENS" \
|
||||
-v "${GEOINTEL_POSTGIS_DATA_PATH}:/var/lib/postgresql/data" \
|
||||
-v "${GEOINTEL_STORAGE_PATH}:/app/storage" \
|
||||
-v "${GEOINTEL_MODELS_PATH}:/app/models" \
|
||||
|
||||
Reference in New Issue
Block a user