versae commited on
Commit
65f1a50
·
1 Parent(s): 6bb87e1

Create app.py

Browse files
Files changed (1) hide show
  1. app.py +58 -0
app.py ADDED
@@ -0,0 +1,58 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import gradio as gr
2
+ import inspect
3
+ from gradio import routes
4
+ from typing import List, Type
5
+
6
+ # Monkey patch
7
+ def get_types(cls_set: List[Type], component: str):
8
+ docset = []
9
+ types = []
10
+ if component == "input":
11
+ for cls in cls_set:
12
+ doc = inspect.getdoc(cls)
13
+ doc_lines = doc.split("\n")
14
+ docset.append(doc_lines[1].split(":")[-1])
15
+ types.append(doc_lines[1].split(")")[0].split("(")[-1])
16
+ else:
17
+ for cls in cls_set:
18
+ doc = inspect.getdoc(cls)
19
+ doc_lines = doc.split("\n")
20
+ docset.append(doc_lines[-1].split(":")[-1])
21
+ types.append(doc_lines[-1].split(")")[0].split("(")[-1])
22
+ return docset, types
23
+ routes.get_types = get_types
24
+
25
+ # App code
26
+ def hallo(x):
27
+ return f"Hallo, {x}"
28
+
29
+ def hadet(x):
30
+ return f"Hadet, {x}"
31
+
32
+ with gr.Blocks() as blk:
33
+ t = gr.Textbox()
34
+ b = gr.Button("Hallo")
35
+ a = gr.Button("Hadet")
36
+ o = gr.Textbox()
37
+ b.click(hallo, inputs=[t], outputs=[o])
38
+ a.click(hadet, inputs=[t], outputs=[o])
39
+
40
+ ifa = gr.Interface(lambda: None, inputs=[t], outputs=[o])
41
+
42
+ blk.input_components = ifa.input_components
43
+ blk.output_components = ifa.output_components
44
+ blk.examples = None
45
+ blk.predict_durations = []
46
+
47
+ bapp = blk.launch()
48
+
49
+ print("""
50
+ import requests
51
+
52
+ requests.post(
53
+ url="http://127.0.0.1:7861/api/predict/", json={"data": ["Jessie"], "fn_index": 0}
54
+ ).json()
55
+ requests.post(
56
+ url="http://127.0.0.1:7861/api/predict/", json={"data": ["Jessie"], "fn_index": 1}
57
+ ).json()
58
+ """)