|
30 | 30 | DEFAULT_FALLBACK_ENTROPY = 2.0 |
31 | 31 |
|
32 | 32 |
|
33 | | -def _get_api_key(provider: str, api_keys: Optional[dict[str, str]] = None) -> Optional[str]: |
34 | | - """Get API key for a specific provider. |
35 | | -
|
36 | | - Args: |
37 | | - provider: Provider name (e.g., 'qwen', 'anthropic') |
38 | | - api_keys: Optional dictionary of API keys |
39 | | -
|
40 | | - Returns: |
41 | | - Optional[str]: API key if found, None otherwise |
42 | | - """ |
43 | | - # Try to get from provided api_keys first |
44 | | - if api_keys and provider in api_keys: |
45 | | - return api_keys[provider] |
46 | | - |
47 | | - # Fallback to loading from environment/config |
48 | | - return load_api_key(provider) |
49 | | - |
50 | | - |
51 | 33 | def _call_llm_with_retry( |
52 | 34 | prompt: str, |
53 | 35 | provider: str, |
@@ -108,7 +90,7 @@ def _call_llm_with_retry( |
108 | 90 |
|
109 | 91 | # Try fallback provider |
110 | 92 | if api_keys: |
111 | | - fallback_api_key = _get_api_key(fallback_provider, api_keys) |
| 93 | + fallback_api_key = api_keys.get(fallback_provider) or load_api_key(fallback_provider) |
112 | 94 | if fallback_api_key: |
113 | 95 | # Resolve base URL for fallback provider |
114 | 96 | fallback_base_url = resolve_provider_base_url(fallback_provider, base_urls) |
@@ -363,7 +345,7 @@ def check_consensus( |
363 | 345 | primary_model = "qwen-max-2025-01-25" |
364 | 346 |
|
365 | 347 | # Get API key for primary provider |
366 | | - primary_api_key = _get_api_key(primary_provider, api_keys) |
| 348 | + primary_api_key = (api_keys.get(primary_provider) if api_keys else None) or load_api_key(primary_provider) |
367 | 349 |
|
368 | 350 | # If primary model is not available and we have available_models, try to use one of them |
369 | 351 | if not primary_api_key and available_models and not consensus_model: |
|
0 commit comments