line 253-261, pass extra_headers fields from settings to litellm, exception handling to check if extra_headers is in dict format

This commit is contained in:
chandan84
2025-02-22 14:56:17 -05:00
parent 71451de156
commit 84983f3e9d

View File

@ -252,9 +252,12 @@ class LiteLLMAIHandler(BaseAiHandler):
#Added support for extra_headers while using litellm to call underlying model, via a api management gateway, would allow for passing custom headers for security and authorization
if get_settings().get("LITELLM.EXTRA_HEADERS", None):
litellm_extra_headers = json.loads(get_settings().litellm.extra_headers)
if not isinstance(litellm_extra_headers, dict):
raise ValueError("LITELLM.EXTRA_HEADERS must be a JSON object")
try:
litellm_extra_headers = json.loads(get_settings().litellm.extra_headers)
if not isinstance(litellm_extra_headers, dict):
raise ValueError("LITELLM.EXTRA_HEADERS must be a JSON object")
except json.JSONDecodeError as e:
raise ValueError(f"LITELLM.EXTRA_HEADERS contains invalid JSON: {str(e)}")
kwargs["extra_headers"] = litellm_extra_headers
response = await acompletion(**kwargs)