Spaces:
Sleeping
Sleeping
Download backend/python-service/inference/resolve_credentials.py from bardd/mike-backend: direct link, hf CLI and curl.
- Browser
- Download file 1.17 kB
-
https://huggingface.co/spaces/bardd/mike-backend/resolve/main/backend/python-service/inference/resolve_credentials.py
- Command line
-
hf download hf://spaces/bardd/mike-backend/backend/python-service/inference/resolve_credentials.py
-
curl -L -o resolve_credentials.py https://huggingface.co/spaces/bardd/mike-backend/resolve/main/backend/python-service/inference/resolve_credentials.py
1.17 kB
| from __future__ import annotations | |
| import os | |
| from fastapi import HTTPException | |
| from inference.config import get_inference_manifest | |
| # Legacy Python service env vars remain supported for credential fallback. | |
| _LEGACY_API_KEY_ENVS = ( | |
| "TABULAR_AGENT_API_KEY", | |
| "GOOGLE_API_KEY", | |
| "GEMINI_API_KEY", | |
| "WORD_REVIEW_API_KEY", | |
| ) | |
| def resolve_api_key(provider: str = "google-genai") -> str | None: | |
| manifest = get_inference_manifest() | |
| providers = manifest.get("providers") or {} | |
| provider_entry = providers.get(provider) or {} | |
| api_key_env = provider_entry.get("apiKeyEnv") | |
| if isinstance(api_key_env, str) and api_key_env.strip(): | |
| value = os.environ.get(api_key_env, "").strip() | |
| if value: | |
| return value | |
| for env_name in _LEGACY_API_KEY_ENVS: | |
| value = os.environ.get(env_name, "").strip() | |
| if value: | |
| return value | |
| return None | |
| def assert_api_key(provider: str = "proxy-openai") -> str: | |
| key = resolve_api_key(provider) | |
| if not key: | |
| raise HTTPException( | |
| status_code=500, | |
| detail="TabularAgent API key is not configured.", | |
| ) | |
| return key | |