File size: 2,608 Bytes
5401755
9700fe3
 
 
aed7d5e
b001ab7
 
 
8144c2e
c609744
b001ab7
4d272d8
5401755
 
 
9700fe3
b001ab7
5401755
 
9700fe3
5401755
 
 
 
 
b001ab7
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5401755
 
 
 
 
b001ab7
5401755
 
b001ab7
5401755
 
 
 
 
9700fe3
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
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)