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): with scheduler.lock: with log_file.open("a") as f: f.write(json.dumps( { 'result': 42 } )) f.write('42') 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, company], outputs="text", title="operand data automation CLI", description="", theme=gr.themes.Soft()) demo.queue() demo.launch()