File size: 1,434 Bytes
e75a48e
7ba7074
 
 
 
 
 
d52d7a5
7ba7074
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
dfa8bc0
83eb289
7ba7074
 
 
 
dfa8bc0
 
7ba7074
 
dfa8bc0
f961b92
7ba7074
 
48ad9ce
998ddcc
 
 
d52d7a5
7ba7074
 
 
5b4e1dc
7ba7074
7748bf4
 
e75a48e
d52d7a5
7ba7074
03e66f4
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

from warnings import filterwarnings
filterwarnings('ignore')

import os
import uuid
import json
import gradio as gr
import pandas as pd
from huggingface_hub import CommitScheduler
from pathlib import Path

# Configure the logging functionality
log_file = Path("logs/") / f"data_{uuid.uuid4()}.json"
log_folder = log_file.parent

repo_id = "operand-logs"

# Create a commit scheduler
scheduler = CommitScheduler(
    repo_id=repo_id,
    repo_type="dataset",
    folder_path=log_folder,
    path_in_repo="data",
    every=2
)

def dprocess(command, ddddd):
    print('foo...')
    with scheduler.lock:
        with log_file.open("a") as f:
            f.write(json.dumps(
                {
                    'p1': 'foo',
                    'p2': 100
                }
            ))
            f.write("\n")
    return 42

# Set-up the Gradio UI
textbox = gr.Textbox(label='Command')
# company = gr.Radio(label='Company:',
#                    choices=["aws", "google", "IBM", "Meta", "msft"],
#                    value="aws")

# Create Gradio interface
# For the inputs parameter of Interface provide [textbox,company] with outputs parameter of Interface provide prediction
demo = gr.Interface(fn=dprocess,
                    inputs=[textbox],
                    outputs="text",
                    title="operand",
                    description="CLI",
                    theme=gr.themes.Soft())

demo.queue()
demo.launch()