Spaces:
Sleeping
Sleeping
| import json | |
| from openai import OpenAI | |
| from tenacity import retry, stop_after_attempt, wait_random_exponential | |
| client = OpenAI() | |
| # openai sent | |
| def chat_completion_request( | |
| messages, | |
| tools=None, | |
| tool_choice=None, | |
| model="gpt-4o-mini", | |
| temperature=0.4, | |
| name="test", | |
| show=False, | |
| ): | |
| try: | |
| response = client.chat.completions.create( | |
| model=model, | |
| messages=messages, | |
| temperature=temperature, | |
| tools=tools, | |
| tool_choice=tool_choice, | |
| response_format={"type": "json_object"}, | |
| ) | |
| if show: | |
| print(f"input {name} = {messages}") | |
| print(f"output {name} = {response.choices[0].message.content}") | |
| return ( | |
| json.loads(response.choices[0].message.content), | |
| response.usage.completion_tokens, | |
| response.usage.prompt_tokens, | |
| ) | |
| except Exception as e: | |
| print("Unable to generate ChatCompletion response") | |
| print(f"Exception: {e}") | |
| return e | |