Spaces:
Sleeping
Sleeping
| import gradio as gr | |
| import json | |
| import threading | |
| # Function to save data to disk in a non-blocking manner | |
| def save_data_to_disk(data): | |
| # Append data to a JSONL file | |
| with open("data.jsonl", "a") as file: | |
| file.write(json.dumps(data) + "\n") | |
| # Wrapper function to make `save_data_to_disk` non-blocking | |
| def save_data(data): | |
| # Start a new thread to handle the saving process | |
| thread = threading.Thread(target=save_data_to_disk, args=(data,)) | |
| thread.start() | |
| # Return a simple confirmation message | |
| return "Data is being saved." | |
| # Create a Gradio interface | |
| interface = gr.Interface( | |
| fn=save_data, | |
| inputs=gr.JSON(label="Input JSON Data"), | |
| outputs="text", | |
| title="Data Saving Service", | |
| description="A simple Gradio app to save arbitrary JSON data in the background.", | |
| ) | |
| # Run the Gradio app | |
| if __name__ == "__main__": | |
| interface.launch(server_name="0.0.0.0", server_port=8435, share=True) | |