File size: 1,635 Bytes
c2f1466
722ab73
c2f1466
 
 
cf7a07e
0e70681
7192ffe
d79f686
da9b438
c51b20d
c2f1466
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
0898ec8
0e70681
4287daf
 
 
42002f6
37d9a7a
0898ec8
4287daf
 
 
0e70681
 
 
 
 
 
 
 
f8156e8
c2f1466
5be15aa
d79f686
5be15aa
3104338
0898ec8
5be15aa
6872135
1979413
d32111b
8bd8f14
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
import gradio as gr
from gradio_client import Client as GrClient
import inspect
from gradio import routes
from typing import List, Type

import requests, os, re, asyncio, time


loop = asyncio.get_event_loop()
gradio_client = GrClient(os.environ.get('GrClient_url'))
# Monkey patch
def get_types(cls_set: List[Type], component: str):
    docset = []
    types = []
    if component == "input":
        for cls in cls_set:
            doc = inspect.getdoc(cls)
            doc_lines = doc.split("\n")
            docset.append(doc_lines[1].split(":")[-1])
            types.append(doc_lines[1].split(")")[0].split("(")[-1])
    else:
        for cls in cls_set:
            doc = inspect.getdoc(cls)
            doc_lines = doc.split("\n")
            docset.append(doc_lines[-1].split(":")[-1])
            types.append(doc_lines[-1].split(")")[0].split("(")[-1])
    return docset, types
routes.get_types = get_types

# App code
def chat(x, id, url):    
    start = time.time()
    result = gradio_client.predict(
        x,
        # str representing input in 'User input' Textbox component
		50,
        id,
        url,
		fn_index=0
    )
    result = str(result)
    
    end = time.time()


    sec = (end - start)
    result_list = str(datetime.timedelta(seconds=sec)).split(".")
    print()
    print("์‘๋‹ต ์‹œ๊ฐ„ : " + result_list[0] +"\n"+ x +", "+ id +", "+ url +", "+ result)
    return result

with gr.Blocks() as demo:
    count = 0
    aa = gr.Interface(
      fn=chat,
      inputs=["text","text", "text"],
      outputs="text",
      description="chat",
    )

    demo.queue(max_size=32).launch(enable_queue=True)