File size: 1,921 Bytes
acfcb6f
 
 
 
6b3dc32
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
acfcb6f
6b3dc32
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
58
59
60
61
62
from ailab_crs import NLP_tasks_crs, Prompt_engineering_crs
import gradio as gr
from googletrans import LANGUAGES 



def main():
    
    nlp_tasks = NLP_tasks_crs()
    supported_langs = list(LANGUAGES.values())

    with gr.Blocks() as demo:
        gr.Markdown("# 🧠 NaanAI 💡")
                
        with gr.Row():
            with gr.Column():
                text = gr.Textbox(label="Your Query", lines=8)
            with gr.Column():
                with gr.Accordion("Other Parameters (For Translation or Summarization Tasks)", open= True):
                    # language = gr.Textbox(label="Language")
                    language = gr.Dropdown(choices=supported_langs, label="Select Target Language", value="english")
                    style = gr.Textbox(label="Choose Your Style", value="polite")
        
        with gr.Row(scale=5):
            with gr.Column(scale=1, min_width=1):
                btn = gr.Button("Q&A")
            with gr.Column(scale=2, min_width=1):
                btn1 = gr.Button("Translator")
            with gr.Column(scale=2, min_width=1):
                btn2 = gr.Button("Summarizer")
            with gr.Column(scale=2, min_width=1):
                btn3 = gr.Button("Translator_Summarizer")

        answer = gr.Textbox(label="AI Answer", lines=2)

        btn.click(
            fn= nlp_tasks.question_answer,
            inputs= text,
            outputs=answer
        )
        btn1.click(
            fn= nlp_tasks.translator,
            inputs= [text, language, style],
            outputs=answer
        )
        btn2.click(
            fn= nlp_tasks.summarization,
            inputs= text,
            outputs=answer
        )
        btn3.click(
            fn= nlp_tasks.translator_summarization,
            inputs= [text, language, style],
            outputs=answer
        )

    return demo.launch()     


if __name__ == "__main__":
    main()