mangubee commited on
Commit
91f84b2
·
1 Parent(s): ac73681

Fix: Read LLM provider config at runtime for UI updates

Browse files
Files changed (1) hide show
  1. src/agent/llm_client.py +5 -5
src/agent/llm_client.py CHANGED
@@ -45,9 +45,7 @@ GROQ_MODEL = "qwen/qwen3-32b" # Free tier: 60 req/min, fast inference
45
  TEMPERATURE = 0 # Deterministic for factoid answers
46
  MAX_TOKENS = 4096
47
 
48
- # LLM Provider Selection
49
- LLM_PROVIDER = os.getenv("LLM_PROVIDER", "gemini").lower() # "gemini", "huggingface", "groq", or "claude"
50
- ENABLE_LLM_FALLBACK = os.getenv("ENABLE_LLM_FALLBACK", "false").lower() == "true"
51
 
52
  # ============================================================================
53
  # Logging Setup
@@ -172,7 +170,9 @@ def _call_with_fallback(function_name: str, *args, **kwargs) -> Any:
172
  Raises:
173
  Exception: If selected provider fails and fallback disabled, or all providers fail
174
  """
175
- primary_provider = LLM_PROVIDER
 
 
176
 
177
  # Define fallback order (excluding primary provider)
178
  all_providers = ["gemini", "huggingface", "groq", "claude"]
@@ -187,7 +187,7 @@ def _call_with_fallback(function_name: str, *args, **kwargs) -> Any:
187
  logger.warning(f"[{function_name}] Primary provider {primary_provider} failed: {primary_error}")
188
 
189
  # If fallback disabled, raise immediately
190
- if not ENABLE_LLM_FALLBACK:
191
  logger.error(f"[{function_name}] Fallback disabled. Failing fast.")
192
  raise Exception(
193
  f"{function_name} failed with {primary_provider}: {primary_error}. "
 
45
  TEMPERATURE = 0 # Deterministic for factoid answers
46
  MAX_TOKENS = 4096
47
 
48
+ # LLM Provider Selection (removed - now read at runtime for UI flexibility)
 
 
49
 
50
  # ============================================================================
51
  # Logging Setup
 
170
  Raises:
171
  Exception: If selected provider fails and fallback disabled, or all providers fail
172
  """
173
+ # Read config at runtime for UI flexibility
174
+ primary_provider = os.getenv("LLM_PROVIDER", "gemini").lower()
175
+ enable_fallback = os.getenv("ENABLE_LLM_FALLBACK", "false").lower() == "true"
176
 
177
  # Define fallback order (excluding primary provider)
178
  all_providers = ["gemini", "huggingface", "groq", "claude"]
 
187
  logger.warning(f"[{function_name}] Primary provider {primary_provider} failed: {primary_error}")
188
 
189
  # If fallback disabled, raise immediately
190
+ if not enable_fallback:
191
  logger.error(f"[{function_name}] Fallback disabled. Failing fast.")
192
  raise Exception(
193
  f"{function_name} failed with {primary_provider}: {primary_error}. "