mirror of
https://github.com/trailofbits/buttercup
synced 2026-06-21 14:11:39 +00:00
ec7031c5ef
* fix(common): use budgeted LITELLM_API_KEY for the LLM client create_llm() authenticated with BUTTERCUP_LITELLM_KEY, which litellm_config.yaml defines as general_settings.master_key. LiteLLM master keys bypass all budget/rate enforcement, so LITELLM_MAX_BUDGET had no effect — an e2e run with --budget 1 spent ~$4.77 unthrottled with every /chat/completions returning 200. The budgeted virtual key (llm-user, created with max_budget= $LITELLM_MAX_BUDGET by litellm-user-keys-setup) is already plumbed: seed-gen/patcher entrypoints export LITELLM_API_KEY from the mounted key file. create_llm() just never read it. Prefer LITELLM_API_KEY when set; fall back to BUTTERCUP_LITELLM_KEY so environments without a provisioned budgeted key are unaffected. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> * chore(compose): document LITELLM_MAX_BUDGET in env.template (complements #550) Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
28 lines
953 B
Plaintext
28 lines
953 B
Plaintext
# docker compose .env template
|
|
|
|
# LiteLLM variables
|
|
BUTTERCUP_LITELLM_KEY=sk-1234
|
|
# Max spend (USD) enforced on the generated llm-user LiteLLM key. Once the
|
|
# cumulative spend on that key exceeds this value, LiteLLM rejects further
|
|
# requests. Picked up by compose interpolation in compose.yaml; defaults to 100
|
|
# if unset. Kept low here to cap spend during local development.
|
|
LITELLM_MAX_BUDGET=15
|
|
# You only need to change variables for APIs you will use, but you need all these variables set
|
|
ANTHROPIC_API_KEY=<INSERT_KEY>
|
|
AZURE_API_BASE=<INSERT_HOST>
|
|
AZURE_API_KEY=<INSERT_KEY>
|
|
OPENAI_API_KEY=<INSERT_KEY>
|
|
GEMINI_API_KEY=<INSERT_KEY>
|
|
|
|
# (optional) LangFuse variables
|
|
LANGFUSE_HOST=<INSERT_HOST>
|
|
LANGFUSE_PUBLIC_KEY=<INSERT_KEY>
|
|
LANGFUSE_SECRET_KEY=<INSERT_KEY>
|
|
|
|
# Scantron/Competition-API GitHub PAT
|
|
# SCANTRON_GITHUB_PAT=<INSERT_PAT>
|
|
|
|
# (optional) SigNoz variables
|
|
# OTEL_EXPORTER_OTLP_ENDPOINT=<INSERT_ENDPOINT>
|
|
# OTEL_EXPORTER_OTLP_PROTOCOL=grpc
|