# All local. No cloud keys. Copy to .env # Gemma 4 12B Unified omni (vision + embed). Lamp: set URLs to the GPU box. # Does not fit on the Lamp (6 GB). GPU util cap 0.85. # Route: auto | direct | hermes | studio RECEIPT_LLM_BACKEND=gemma RECEIPT_LLM_ROUTE=auto RECEIPT_LLM_BASE_URL=http://127.0.0.1:8080/v1 RECEIPT_LLM_MODEL=google/gemma-4-12B-it RECEIPT_LLM_ACCEPTS_IMAGES=true RECEIPT_LLM_MAX_TOKENS=8192 # Lamp: POST snapshots here (Receipt Studio on the GPU box) # RECEIPT_STUDIO_URL=http://192.168.1.10:7860 # RECEIPT_GPU_HOST=192.168.1.10 # Hermes custom_providers discovery (optional) # RECEIPT_HERMES_BASE_URL=http://127.0.0.1:8080/v1 # RECEIPT_HERMES_MODEL=google/gemma-4-12B-it RECEIPT_EMBED_BACKEND=omni RECEIPT_EMBED_BASE_URL=http://127.0.0.1:8080/v1 RECEIPT_EMBED_MODEL=google/gemma-4-12B-it RECEIPT_EMBED_DIM=3840 # Optional OCR assist (vision extract does not need it) RECEIPT_OCR_BACKEND=none # Lamp HAL camera RECEIPT_CAMERA_URL=http://127.0.0.1:5001 RECEIPT_SNAPSHOT_WIDTH=1280 RECEIPT_SNAPSHOT_QUALITY=85 # UI / inbox. One-click (app.launch / oneshot) forces SHARE_LAN=true for iPhone. # Manual `python -m app.cli ui` needs true or the phone cannot reach this PC. RECEIPT_UI_HOST=127.0.0.1 RECEIPT_UI_PORT=7860 RECEIPT_UI_SHARE_LAN=false RECEIPT_IDLE_SECONDS=30