|
|
|
|
@ -8,6 +8,7 @@ import time
|
|
|
|
|
import uuid
|
|
|
|
|
from collections.abc import Generator, Mapping
|
|
|
|
|
from datetime import datetime
|
|
|
|
|
from decimal import Decimal
|
|
|
|
|
from hashlib import sha256
|
|
|
|
|
from typing import TYPE_CHECKING, Any, Optional, Union, cast
|
|
|
|
|
from zoneinfo import available_timezones
|
|
|
|
|
@ -196,7 +197,10 @@ def generate_text_hash(text: str) -> str:
|
|
|
|
|
|
|
|
|
|
def compact_generate_response(response: Union[Mapping, Generator, RateLimitGenerator]) -> Response:
|
|
|
|
|
if isinstance(response, dict):
|
|
|
|
|
return Response(response=json.dumps(response), status=200, mimetype="application/json")
|
|
|
|
|
return Response(response=json.dumps(response,
|
|
|
|
|
default=lambda x: str(x) if isinstance(x, Decimal) else x),
|
|
|
|
|
status=200,
|
|
|
|
|
mimetype="application/json")
|
|
|
|
|
else:
|
|
|
|
|
|
|
|
|
|
def generate() -> Generator:
|
|
|
|
|
|