File size: 2,483 Bytes
4744104
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
import spaces
import gradio as gr
import requests

def check_internet(url="https://www.google.com"):
    try:
        response = requests.get(url, timeout=5)
        if response.status_code == 200:
            print("Internet is working. Status code:", response.status_code)
        else:
            print("Connected to the internet, but the server returned an error. Status code:", response.status_code)
    except requests.ConnectionError:
        print("No internet connection.")
    except requests.Timeout:
        print("Request timed out.")
    except Exception as e:
        print(f"An error occurred: {e}")

def check_promptlayer(url="https://api.promptlayer.com/ping"):
    try:
        response = requests.get(url, timeout=5)
        if response.status_code == 200:
            print("Promptlayer is working. Status code:", response.status_code)
        else:
            print("Connected to the Promptlayer, but the server returned an error. Status code:", response.status_code)
    except requests.ConnectionError:
        print("No Promptlayer connection.")
    except requests.Timeout:
        print("Request timed out.")
    except Exception as e:
        print(f"An error occurred: {e}")

def check_promptlayer_gr(url="https://api.promptlayer.com/ping"):
    try:
        response = requests.get(url, timeout=30)
        if response.status_code == 200:
            print(f"{url} is working. Status code:", response.status_code)
            gr.Info(f"{url} is working. Status code: {response.status_code}")
        else:
            print(f"Connected to {url}, but the server returned an error. Status code:", response.status_code)
            gr.Info(f"Connected to {url}, but the server returned an error. Status code: {response.status_code}")
    except requests.ConnectionError:
        print("No connection.")
        gr.Info("No connection.")
    except requests.Timeout:
        print("Request timed out.")
        gr.Info("Request timed out.")
    except Exception as e:
        print(f"An error occurred: {e}")
        gr.Info(f"An error occurred: {e}")

@spaces.GPU
def test(url: str):
    check_promptlayer_gr(url)
    return ""

with gr.Blocks() as demo:
    url = gr.Textbox(label="URL", value="https://api.promptlayer.com/ping")
    run_button = gr.Button("Submit", variant="primary")
    info_md = gr.Markdown("<br><br><br>")

    run_button.click(test, [url], [info_md])

demo.launch()