albok-dev withdrew the judge sign-off on fleet-scale evidence and brokkr concurred: over 10,841 texts judged by both models, h2o flagged 242 adult at 0.5 against INC's 88, and no threshold reproduces INC's set. rollback-to-inc.sh ran 14:03:28, INC healthy 14:03:56, /decide/shared smoke 200 x3. compose.yaml is INC again; the h2o compose is kept as compose.h2o.yaml with switch-to-h2o.sh (GPU 1 free-memory gate, falls back to INC). It now carries Prime's inline-images-only setting: LIGHTNING_IMAGE_URLS=off on the front (verified live: an https image URL is refused before any fetch, inline images still answer) and vLLM --allowed-media-domains media.invalid as a backstop. rollback-to-inc.sh no longer leaves timestamped compose copies behind.
76 lines
3.7 KiB
YAML
76 lines
3.7 KiB
YAML
# STAGED, NOT LIVE (since the 2026-10-12 1403 rollback): the h2o-lightning-4b decision seat, which switch-to-h2o.sh
|
|
# copies over compose.yaml. It served 1311-1403 on 2026-10-12 (Prime via brokkr) and was rolled back when Nemi's judge
|
|
# flagged 242 texts adult against INC's 88 at fleet scale. Address intern-decision.fv.internal:8033 (brokkr rule 8).
|
|
# h2o-lightning-4b @ b43f759b. Stock vLLM 0.30.0 + the vendor's UNMODIFIED shim + services/h2o-decision-front (copied to
|
|
# conf/front): 32,000-token REFUSE-not-trim admission, the seat's bearer token (the same INTERN_DECISION_API_TOKEN),
|
|
# /decide + /decide/shared translated onto /v1/systemone, /health model {name, revision}.
|
|
# Rollback to Intern-Decision-4B: compose.inc.yaml (the previous compose, same .env): see the stack README.
|
|
# GPU 1 is shared (meromero-rp, gen-small): KV is pinned in BYTES (4.48 GiB = 135,070 tokens, the benched size);
|
|
# util only gates the boot check. Gate on scripts/oneoff/fv-ml1-gpucheck.sh before any (re)create.
|
|
# Images: INLINE ONLY (Prime 2026-10-12). LIGHTNING_IMAGE_URLS=off makes the shim refuse every image URL; vLLM's
|
|
# --allowed-media-domains media.invalid (a reserved name that never resolves) is the backstop if the shim ever changes.
|
|
name: intern-decision
|
|
services:
|
|
vllm:
|
|
image: vllm/vllm-openai:v0.30.0
|
|
container_name: intern-decision-vllm
|
|
restart: unless-stopped
|
|
ports:
|
|
- "127.0.0.1:18299:8000"
|
|
environment:
|
|
VLLM_USE_FLASHINFER_SAMPLER: "0"
|
|
volumes:
|
|
- /tank/aimodels/h2o-lightning-4b-b43f759b:/model:ro
|
|
- vllm-cache:/root/.cache/vllm
|
|
command: ["--model", "/model", "--served-model-name", "h2oai/h2o-lightning-4b",
|
|
"--max-model-len", "40960", "--max-num-seqs", "16",
|
|
"--gpu-memory-utilization", "0.1506", "--kv-cache-memory", "4810363371",
|
|
"--limit-mm-per-prompt", "{\"image\": 4, \"video\": 0}",
|
|
"--mm-processor-kwargs", "{\"max_pixels\": 1605632}",
|
|
"--allowed-media-domains", "media.invalid"]
|
|
deploy:
|
|
resources:
|
|
reservations:
|
|
devices:
|
|
- driver: nvidia
|
|
device_ids: ["${GPU_ID:-1}"]
|
|
capabilities: [gpu]
|
|
front:
|
|
image: python:3.12-slim
|
|
container_name: intern-decision
|
|
restart: unless-stopped
|
|
network_mode: host
|
|
depends_on: [vllm]
|
|
environment:
|
|
FRONT_TOKEN: ${INTERN_DECISION_API_TOKEN:?set INTERN_DECISION_API_TOKEN}
|
|
SHIM_VLLM: http://127.0.0.1:18299
|
|
SHIM_PORT: "18291"
|
|
SHIM_NOUL_FLOOR: "0.801"
|
|
LIGHTNING_IMAGE_URLS: "off" # Prime 2026-10-12: inline images only, the seat never fetches an image URL
|
|
FRONT_SHIM: http://127.0.0.1:18291
|
|
FRONT_VLLM: http://127.0.0.1:18299
|
|
FRONT_BIND: 0.0.0.0
|
|
FRONT_PORT: ${PORT:-8033}
|
|
FRONT_CAP: "32000"
|
|
FRONT_SHIM_FILE: /model/h2o_lightning_shim.py
|
|
FRONT_SERVE_CONFIG: /model/serve_config.json
|
|
FRONT_MODEL_REVISION: b43f759b6385d21182f87c3829931ec3d4dfa98a
|
|
volumes:
|
|
- /tank/aimodels/h2o-lightning-4b-b43f759b:/model:ro
|
|
- /opt/docker/conf/intern-decision/front:/front:ro
|
|
command: ["bash", "/front/run.sh"]
|
|
healthcheck:
|
|
test: ["CMD", "python3", "-c", "import urllib.request; urllib.request.urlopen('http://127.0.0.1:8033/health', timeout=5)"]
|
|
interval: 30s
|
|
timeout: 10s
|
|
retries: 3
|
|
start_period: 300s
|
|
labels:
|
|
- homepage.group=AI - Eval & Retrieval
|
|
- homepage.name=Decision seat (h2o-lightning-4b)
|
|
- homepage.icon=mdi-scale-balance
|
|
- homepage.description=Typed decisions, 32k refusing (h2o-lightning-4b on vLLM, fv-ml1 GPU1; /decide/shared kept)
|
|
- homepage.href=http://${HOST_IP:-10.251.50.54}:${PORT:-8033}/health
|
|
volumes:
|
|
vllm-cache:
|