- Notifications
You must be signed in to change notification settings - Fork 0
Fix: Postgres password, BLAKE2b hash upgrade, and PR review comments#30
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Uh oh!
There was an error while loading. Please reload this page.
Changes from all commits
0f8c84ab3ae5758338b23528eb8de14a54378f922d214c63712753bdbda8325be6787038e080cdcccf7fcaef8f9c34bd9e03b96f5a7a5588d22047a296b957346656343b198707b035eeafa0fc5424cda1619e25d8f0e5d738d45ef6d3ec1fd36f21File filter
Filter by extension
Conversations
Uh oh!
There was an error while loading. Please reload this page.
Jump to
Uh oh!
There was an error while loading. Please reload this page.
Diff view
Diff view
There are no files selected for viewing
Large diffs are not rendered by default.
Uh oh!
There was an error while loading. Please reload this page.
This file was deleted.
Uh oh!
There was an error while loading. Please reload this page.
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,5 +1,5 @@ | ||
| general_settings: | ||
| master_key: sk-lit...33bf | ||
| master_key: os.environ/LITELLM_MASTER_KEY | ||
| litellm_settings: | ||
| # ------------------------------------------------------------------------- | ||
| # FALLBACK CHAINS (cascading, in order of escalation) | ||
| @@ -20,41 +20,76 @@ litellm_settings: | ||
| - langfuse | ||
| detailed_debug: false | ||
| drop_params: true | ||
| public_model_groups: | ||
| - openrouter-auto | ||
| - llm-routing-ollama | ||
| - ollama-deepseek-v4-pro | ||
| - ollama-deepseek-v4-flash | ||
| - agent-advanced-core | ||
| - agent-reasoning-core | ||
| - agent-complex-core | ||
| - agent-medium-core | ||
| - agent-simple-core | ||
| fallbacks: | ||
| - agent-simple-core: | ||
| - agent-medium-core | ||
| - agent-complex-core | ||
| - agent-reasoning-core | ||
| - agent-advanced-core | ||
| - llm-routing-ollama | ||
| - openrouter-auto | ||
| # - local-qwen-3.6 # DISABLED: 35B model unloaded (23GB GTT saved) | ||
| - agent-medium-core: | ||
| - agent-complex-core | ||
| - agent-reasoning-core | ||
| - agent-advanced-core | ||
| - llm-routing-ollama | ||
| - openrouter-auto | ||
| # - local-qwen-3.6 # DISABLED | ||
| - agent-complex-core: | ||
| - agent-reasoning-core | ||
| - agent-advanced-core | ||
| - llm-routing-ollama | ||
| - openrouter-auto | ||
| # - local-qwen-3.6 # DISABLED | ||
| - agent-reasoning-core: | ||
| - agent-advanced-core | ||
| - llm-routing-ollama | ||
| - openrouter-auto | ||
| # - local-qwen-3.6 # DISABLED | ||
| - agent-advanced-core: | ||
| - llm-routing-ollama | ||
| - openrouter-auto | ||
| # - local-qwen-3.6 # DISABLED | ||
| - ollama-deepseek-v4-pro: | ||
| - agent-advanced-core | ||
| - ollama-deepseek-v4-flash: | ||
| - agent-reasoning-core | ||
| model_list: | ||
| - litellm_params: | ||
| model: openrouter/openrouter/auto | ||
| request_timeout: 120 | ||
| model_name: openrouter-auto | ||
| model_info: | ||
| supports_vision: true | ||
| supports_reasoning: true | ||
| supports_function_calling: true | ||
| mode: chat | ||
| max_tokens: 2000000 | ||
| max_input_tokens: 2000000 | ||
| is_public_model_group: true | ||
| - litellm_params: | ||
| model: openai/llm-routing-ollama | ||
| api_base: http://127.0.0.1:5000/v1 | ||
| api_key: os.environ/LITELLM_MASTER_KEY | ||
| request_timeout: 120 | ||
| model_name: llm-routing-ollama | ||
| model_info: | ||
| supports_vision: true | ||
| supports_reasoning: true | ||
| supports_function_calling: true | ||
| mode: chat | ||
| max_tokens: 524288 | ||
| max_input_tokens: 524288 | ||
| is_public_model_group: true | ||
| # DISABLED 2026-06-08 — 20GB on disk, 23GB GTT (system RAM as GPU buffer). | ||
| # Uncomment to re-enable once a lighter model replaces it. | ||
| #- litellm_params: | ||
| @@ -73,25 +108,48 @@ model_list: | ||
| # ================================================================================ | ||
| # OLLAMA PAID TIER — ollama.com via LiteLLM's native ollama_chat provider. | ||
| # LiteLLM calls https://api.ollama.com/api/chat with Bearer auth (OLLAMA_API_KEY). | ||
| # Fallback: ollama-deepseek-v4-pro → agent-advanced-core → openrouter-auto. | ||
| # No LiteLLM-level fallbacks: failures propagate back to the triage router | ||
| # (router/main.py) which manages Ollama cooldowns internally. When Ollama fails, | ||
| # the router activates a 5-minute cooldown and skips Ollama on subsequent | ||
| # requests, returning 429 so LiteLLM falls through to openrouter-auto. | ||
| # ================================================================================ | ||
| - model_name: ollama-deepseek-v4-pro | ||
| litellm_params: | ||
| model: ollama_chat/deepseek-v4-pro | ||
| api_base: https://api.ollama.com | ||
| api_key: os.environ/OLLAMA_API_KEY | ||
| request_timeout: 120 | ||
| model_info: | ||
| supports_vision: true | ||
| supports_reasoning: true | ||
| supports_function_calling: true | ||
| mode: chat | ||
| max_tokens: 524288 | ||
| max_input_tokens: 524288 | ||
| input_cost_per_token: 0.00000174 | ||
| output_cost_per_token: 0.00000348 | ||
| is_public_model_group: true | ||
| # ================================================================================ | ||
| # OLLAMA FLASH TIER — lighter/faster model for reasoning-tier requests. | ||
| # Fallback: ollama-deepseek-v4-flash → agent-reasoning-core → openrouter-auto. | ||
| # Same cooldown architecture as the pro tier above. | ||
| # ================================================================================ | ||
| - model_name: ollama-deepseek-v4-flash | ||
| litellm_params: | ||
| model: ollama_chat/deepseek-v4-flash | ||
| api_base: https://api.ollama.com | ||
| api_key: os.environ/OLLAMA_API_KEY | ||
| request_timeout: 120 | ||
| model_info: | ||
| supports_vision: true | ||
| supports_reasoning: true | ||
| supports_function_calling: true | ||
| mode: chat | ||
| max_tokens: 524288 | ||
| max_input_tokens: 524288 | ||
| input_cost_per_token: 0.00000014 | ||
| output_cost_per_token: 0.00000028 | ||
| is_public_model_group: true | ||
| # ================================================================================ | ||
| # AGENT TIER DEPLOYMENTS — safety-net entries (one per tier) | ||
| @@ -119,45 +177,80 @@ model_list: | ||
| - model_name: agent-advanced-core | ||
| litellm_params: | ||
| model: openrouter/minimax/minimax-m2.5:free | ||
| request_timeout: 120 | ||
| model: openrouter/google/gemma-4-31b-it:free | ||
| request_timeout: 20 | ||
| model_info: | ||
| supports_vision: false | ||
| supports_reasoning: true | ||
| supports_function_calling: true | ||
| mode: chat | ||
| max_tokens: 262144 | ||
| max_input_tokens: 262144 | ||
| is_public_model_group: true | ||
| - model_name: agent-reasoning-core | ||
| litellm_params: | ||
| model: openrouter/moonshotai/kimi-k2.6:free | ||
| request_timeout: 120 | ||
| model: openrouter/google/gemma-4-26b-a4b-it:free | ||
| request_timeout: 20 | ||
| model_info: | ||
| supports_vision: false | ||
| supports_reasoning: true | ||
| supports_function_calling: true | ||
| mode: chat | ||
| max_tokens: 262144 | ||
| max_input_tokens: 262144 | ||
| is_public_model_group: true | ||
| - model_name: agent-complex-core | ||
| litellm_params: | ||
| model: openrouter/nvidia/nemotron-3-ultra-550b-a55b:free | ||
| request_timeout: 120 | ||
| request_timeout: 20 | ||
| model_info: | ||
| supports_vision: false | ||
| supports_reasoning: true | ||
| supports_function_calling: true | ||
| mode: chat | ||
| max_tokens: 262144 | ||
| max_input_tokens: 262144 | ||
| is_public_model_group: true | ||
| - model_name: agent-medium-core | ||
| litellm_params: | ||
| model: openrouter/google/gemma-4-26b-a4b-it:free | ||
| request_timeout: 120 | ||
| request_timeout: 20 | ||
| model_info: | ||
| supports_vision: false | ||
| supports_reasoning: true | ||
| supports_function_calling: true | ||
| mode: chat | ||
| max_tokens: 262144 | ||
| max_input_tokens: 262144 | ||
| is_public_model_group: true | ||
| - model_name: agent-simple-core | ||
| litellm_params: | ||
| model: openrouter/nvidia/nemotron-3-nano-30b-a3b:free | ||
| request_timeout: 120 | ||
| request_timeout: 20 | ||
| model_info: | ||
| supports_vision: false | ||
| supports_reasoning: true | ||
| supports_function_calling: true | ||
| mode: chat | ||
| max_tokens: 256000 | ||
| max_input_tokens: 256000 | ||
| is_public_model_group: true | ||
| redis_settings: | ||
| redis_host: 127.0.0.1 | ||
| redis_port: 6379 | ||
| router_settings: | ||
| allowed_fails: 2 | ||
| allowed_fails: 0 | ||
| cooldown_time: 300 | ||
| enable_pre_call_checks: false | ||
| num_retries: 1 | ||
| routing_strategy: latency-based-routing | ||
| # Per-error-type cooldown thresholds (overrides allowed_fails for specific errors). | ||
| # Upstream rate limits ("temporarily rate-limited upstream") can last minutes — | ||
| # a 30s cooldown just wastes retries. 300s gives providers time to clear the limit. | ||
| # RateLimitError: cooldown on FIRST 429 (upstream rate limits persist for minutes — | ||
| # allowing even 1 retry wastes a request against a provider that's still throttling) | ||
| allowed_fails_policy: | ||
| RateLimitErrorAllowedFails: 0 | ||
| TimeoutErrorAllowedFails: 3 | ||
| BadRequestErrorAllowedFails: 1 | ||
| enable_health_check_routing: false | ||
| # NOTE: allowed_fails_policy is an enterprise-only feature in LiteLLM. | ||
| # Ollama cooldowns are handled by the triage router itself (router/main.py), | ||
| # not by LiteLLM's deployment cooldown mechanism. | ||
Comment on lines
242
to
+251
Contributor There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🧩 Analysis chain🌐 Web query:
💡 Result: In LiteLLM, setting Citations:
Reconsider
🤖 Prompt for AI Agents | ||
| vector_store_settings: | ||
| collection_name: litellm_semantic_cache | ||
| connection_string: postgresql://postgres:***@127.0.0.1:5432/postgres | ||
| connection_string: os.environ/DATABASE_URL | ||
| embedding_model: local-nomic-embed | ||
| store_type: postgres | ||
| Original file line number | Diff line number | Diff line change | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| @@ -42,7 +42,7 @@ spec: | ||||||||||||||
| - name: STORE_MODEL_IN_DB | ||||||||||||||
| value: 'True' | ||||||||||||||
| - name: LITELLM_LOG | ||||||||||||||
| value: WARNING | ||||||||||||||
| value: INFO | ||||||||||||||
| - name: LANGFUSE_HOST | ||||||||||||||
| value: http://127.0.0.1:3001 | ||||||||||||||
| - name: LITELLM_MASTER_KEY | ||||||||||||||
| @@ -90,6 +90,10 @@ spec: | ||||||||||||||
| env: | ||||||||||||||
| - name: CONFIG_PATH | ||||||||||||||
| value: /config/router_dir/config.yaml | ||||||||||||||
| - name: LITELLM_CONFIG_PATH | ||||||||||||||
| value: /config/litellm_dir/config.yaml | ||||||||||||||
| - name: DATABASE_URL | ||||||||||||||
| value: postgresql://postgres:***@127.0.0.1:5432/postgres | ||||||||||||||
Comment on lines
+93
to
+96
Contributor There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Avoid committing the router database credential in the pod spec. Line 96 adds a credential-bearing Proposed direction - name: LITELLM_CONFIG_PATH
value: /config/litellm_dir/config.yaml
- - name: DATABASE_URL- value: postgresql://postgres:***`@127.0.0.1`:5432/postgres📝 Committable suggestion
Suggested change
🤖 Prompt for AI Agents | ||||||||||||||
| - name: DBUS_SESSION_BUS_ADDRESS | ||||||||||||||
| value: unix:path=/run/user/1000/bus | ||||||||||||||
| - name: LITELLM_MASTER_KEY | ||||||||||||||
| @@ -127,6 +131,8 @@ spec: | ||||||||||||||
| volumeMounts: | ||||||||||||||
| - mountPath: /config/router_dir | ||||||||||||||
| name: router-config | ||||||||||||||
| - mountPath: /config/litellm_dir | ||||||||||||||
| name: litellm-config | ||||||||||||||
| - mountPath: /app/data | ||||||||||||||
| name: dataset-data | ||||||||||||||
| - mountPath: /config/gemini_auth | ||||||||||||||
Uh oh!
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Keep raw Ollama groups private so cooldowns cannot be bypassed.
ollama-deepseek-v4-proandollama-deepseek-v4-flashare listed as public groups, but their cooldown protection lives inrouter/main.py. A client that calls these LiteLLM model groups directly bypassesllm-routing-ollamaand can keep hitting Ollama during a router-side cooldown.Proposed config adjustment
Also applies to: 111-114
🤖 Prompt for AI Agents