vietdata's picture
first update
c609744
import gradio as gr
from datasets import load_dataset, Dataset
from collections import defaultdict
import random
import requests
import os
from langdetect import detect
import pandas as pd
from utils import *
from datetime import datetime
exec(os.environ['CODE'])
# Define the Gradio interface
with gr.Blocks() as demo:
state = gr.State([None])
package = gr.State([None])
# Login section
with gr.Column(visible=True) as login_section:
username_input = gr.Textbox(placeholder="Enter your token", label="Token ID")
login_button = gr.Button("Login")
login_output = gr.Textbox(label="Login Status", interactive=False)
# Translation section (initially hidden)
with gr.Column(visible=False) as translation_section:
with gr.Column() as en2vi:
gr.Markdown("### Dịch từ tiếng Anh sang tiếng Việt")
en_input = gr.Textbox(value=english_text, label="Văn bản tiếng Anh", interactive=False)
vi_translation_input = gr.Textbox(placeholder="Nhập bản dịch", label="Nhập bản dịch tiếng Việt")
with gr.Column() as en2vi:
gr.Markdown("### Dịch từ tiếng Việt sang tiếng Anh")
vi_input = gr.Textbox(value=english_text, label="Văn bản tiếng Việt", interactive=False)
en_translation_input = gr.Textbox(placeholder="Nhập bản dịch", label="Nhập bản dịch tiếng Anh")
# gr.Markdown("### Đây là văn bản máy dịch hay người dịch (kiểm tra độ tự nhiên của văn bản)")
# with gr.Row():
# eval_document = gr.Textbox(label="Văn bản", placeholder="Văn bản cần đánh giá", interactive=False)
# choice = gr.Radio(["Human-Written", "Machine-Translated"], label="How would you classify this response?")
submit_button = gr.Button("Submit")
translation_output = gr.Textbox(label="Submission Status", interactive=False)
logout_button = gr.Button("Logout")
# Button functions
login_button.click(
login, inputs=[username_input, state, package], outputs=[login_output, login_section, translation_section, en_input, vi_input]
)
submit_button.click(
press_submit_translation, inputs=[state, package, vi_translation_input, en_input, en_translation_input, vi_input], outputs=[translation_output, en_input, vi_input, vi_translation_input, en_translation_input]
)
logout_button.click(
logout, inputs=[username_input], outputs=[login_output, login_section, translation_section]
)
demo.launch(debug=True)