Bring your own deployment
Use your provider account without giving this site your key.
Clone the same tested application into your Vercel account, store credentials as server-side environment variables, and keep billing and operational control inside your deployment.
Setup
Deployment checklist
- Clone into Vercel. Keep the repository root as the project root; the checked-in configuration serves
docsand deploys the Python functions. - Create a dedicated OpenAI project key. Put it only in Vercel as
OPENAI_API_KEY. - Install Upstash Redis from the Vercel Marketplace. Link it to the project so the REST URL and token are injected.
- Set the remaining variables. Start with live mode disabled, verify health, and then enable it deliberately.
- Redeploy and verify. Check
/api/health, run one allowlisted sample, and inspect the daily-budget telemetry.
Server-side configuration
Required environment variables
| Name | Example | Purpose |
|---|---|---|
OPENAI_API_KEY | Secret project key | Provider credential; never exposed to the browser. |
OPENAI_MODEL | gpt-5.4-mini-2026-03-17 | Pinned model behavior and pricing envelope. |
TRIAGE_DEMO_ACCESS_CODE | Strong private code | Required gate for every live request. |
TRIAGE_DAILY_LIMIT | 100 | Maximum globally claimed live requests per UTC day. |
TRIAGE_RATE_LIMIT | 8 | Per-instance, per-client requests per minute. |
TRIAGE_ALLOWED_ORIGIN | Canonical Vercel URL | Allowed browser origin; set after the first deployment. |
TRIAGE_LIVE_ENABLED | false then true | Emergency live-call kill switch. |
UPSTASH_REDIS_REST_URL | Marketplace injected | Shared counter endpoint. |
UPSTASH_REDIS_REST_TOKEN | Marketplace injected | Shared counter credential. |
Security boundary
Do not paste a key here
“Deploy your own” means the credential goes directly into your hosting account. This public site never asks for, receives, proxies, or stores a visitor's provider key.
Extension point
Add providers behind one contract
The Python service depends on a narrow provider interface. A later adapter can target another structured-output service while preserving the schema validator, sample policy, telemetry, spend guard, and regression cases.