Spaces:
Sleeping
Sleeping
File size: 741 Bytes
1e32511 1a79fb2 1e32511 c2fa877 1a79fb2 95849c2 1a79fb2 |
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 |
from enum import StrEnum
from httpx import Timeout
from langchain_openai import ChatOpenAI
from tenacity import (
retry,
stop_after_attempt,
wait_random_exponential,
)
class GPTModels(StrEnum):
GPT_4o = "gpt-4o"
GPT_4o_MINI = "gpt-4o-mini"
GPT_4_TURBO_2024_04_09 = "gpt-4-turbo-2024-04-09"
def get_chat_llm(llm_model: GPTModels, temperature=0.0):
llm = ChatOpenAI(
model=llm_model, temperature=temperature, timeout=Timeout(60, connect=4)
)
return llm
async def consume_aiter(aiterator):
return [x async for x in aiterator]
def auto_retry(f):
decorator = retry(
wait=wait_random_exponential(min=2, max=6),
stop=stop_after_attempt(10),
)
return decorator(f)
|