Spaces:
Running
Running
File size: 988 Bytes
592cb1d | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 | from __future__ import annotations
from fastapi import Request
def get_secret_header(request: Request, header_name: str) -> str | None:
value = request.headers.get(header_name)
if value is None:
return None
trimmed = str(value).strip()
return trimmed or None
def get_llm_api_key(request: Request) -> str | None:
return get_secret_header(request, "x-llm-api-key")
def apply_stream_secret_headers(request: Request, body: dict) -> dict:
payload = dict(body)
header_to_body = {
"x-llm-api-key": "apiKey",
"x-tavily-api-key": "tavilyApiKey",
"x-serpapi-api-key": "serpapiApiKey",
"x-exa-api-key": "exaApiKey",
"x-summary-api-key": "summaryApiKey",
"x-memory-api-key": "memoryApiKey",
}
for header_name, body_key in header_to_body.items():
header_value = get_secret_header(request, header_name)
if header_value:
payload[body_key] = header_value
return payload
|