import os
import openai 
import requests 
openai.api_key = os.getenv("OPEN_API_KEY")

import time
import gradio as gr 


def check_openai_speed():

    start_time = time.time()
    try:
      response = openai.Completion.create(
          model="text-davinci-003",
          prompt="Say this is a test",
          temperature=0,
          max_tokens=7
      )
    except openai.api_errors.APIError as e:
          print(f"Ошибка API: {e}")
          return "Erorr" + e, "000"
    except Exception as e:
          print(f"Общая ошибка: {e}")
          return "Erorr" + e, "000"
    end_time = time.time()
    response_time = end_time - start_time
    print(f'Response time: {response_time:.2f} seconds')
    response_time = "Time to answer: " + f'{end_time - start_time:.2f}' + " seconds"
    return "Ok", response_time

title = "Status API ChatGPT"
css="""
footer {visibility: hidden}
.gradio-container {padding-top: 100px}
"""


with gr.Blocks(css=css, title=title) as demo:
    gr.HTML("<h1>Status API ChatGPT</h1>")
    dt_1 = gr.outputs.HTML()
    dt_2 = gr.outputs.HTML()
    dt =[dt_1, dt_2]
    demo.load(check_openai_speed, inputs=None, outputs=dt)

demo.launch(share=False, debug=True )