File size: 2,453 Bytes
0396aac
 
 
 
67f2d06
83cc9a7
0396aac
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
83cc9a7
0396aac
 
83cc9a7
0396aac
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
67f2d06
0396aac
67f2d06
 
0396aac
 
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
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
#!/usr/bin/env python

from __future__ import annotations

import gradio as gr

from paper_list import PaperList

DESCRIPTION = '# NAACL 2022 Papers'
NOTES = '''
- [NAACL 2022](https://2022.naacl.org/)
'''
FOOTER = '<img id="visitor-badge" alt="visitor badge" src="https://visitor-badge.glitch.me/badge?page_id=naacl2022.papers" />'


def main():
    paper_list = PaperList()

    with gr.Blocks(css='style.css') as demo:
        gr.Markdown(DESCRIPTION)

        search_box = gr.Textbox(
            label='Search Title',
            placeholder=
            'You can search for titles with regular expressions. e.g. (?<!sur)face'
        )
        case_sensitive = gr.Checkbox(label='Case Sensitive')
        filter_names = gr.CheckboxGroup(choices=[
            'arXiv',
            'GitHub',
            'HF Space',
            'HF Model',
            'HF Dataset',
        ],
                                        label='Filter')
        paper_category_names = [
            'Long Paper',
            'Short Paper',
            'Special Theme Paper',
            'Findings',
            'Industry Track',
        ]
        paper_categories = gr.CheckboxGroup(choices=paper_category_names,
                                            value=paper_category_names,
                                            label='Paper Categories')
        search_button = gr.Button('Search')

        number_of_papers = gr.Textbox(label='Number of Papers Found')
        table = gr.HTML(show_label=False)

        gr.Markdown(NOTES)
        gr.Markdown(FOOTER)

        demo.load(paper_list.render,
                  inputs=[
                      search_box,
                      case_sensitive,
                      filter_names,
                      paper_categories,
                  ],
                  outputs=[
                      number_of_papers,
                      table,
                  ])
        search_button.click(paper_list.render,
                            inputs=[
                                search_box,
                                case_sensitive,
                                filter_names,
                                paper_categories,
                            ],
                            outputs=[
                                number_of_papers,
                                table,
                            ])

    demo.launch(enable_queue=True, share=False)


if __name__ == '__main__':
    main()