File size: 6,225 Bytes
34e4f8a
 
 
ce8865a
34e4f8a
 
 
 
 
 
 
 
 
 
 
 
 
 
8eec78b
34e4f8a
8eec78b
34e4f8a
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
import gradio as gr


title = """<h1 align="left" style="min-width:200px; margin-top:0;">Fragen zu Dokumenten stellen</h1>"""
description = """\
<div align="left">
<p> <b>Aktuelle Modelle:</b> Von Hugging Face (Open Source)<br>
<b>Disclaimer:</b> Die hier verwendeten Modelle sind Modelle vom Hugging Face Hub. Kommerzieller Gebrauch ist ausdrücklich verboten. Der Output des Modells ist nicht zensiert und die Meinungen im Output entsprechen nicht unbedingt der des Authors dieser App. Gebrauch auf eigene Gefahr! 
</p >
</div>
"""

description_top = """\
Du kannst der KI Fragen zu den hinterlegten Dokumenten stellen und auch neue Dokumente hochladen.<br>
Dafür musst du dich zunächst mit einem speziellen Wort anmelden. Das Wort findets du direkt über dem Chatbot im Moodle Kurs. Dies ist leider nötig, um Mißbrauch zu vermeiden.
Hier werden Open Source Modelle vom Hugging Face Hub verwendet. Zur Zeit wird das Modell: ..... eingesetzt.<br>
<b>Bedienungsanleitung:</b><br>
<ul>
<li>Es sind Dokumente zur Demonstration bereits hochgeladen, so dass du Fragen stellen kannst.</il> 
<li>Die erste Anfrage dauert etwas länger, da im Hintergrund viele Dokumente geladen werden müssen. Aber danach geht es deutlich schneller.</li>
<li>Du kannst über den Button mit dem gelben Symbol ein Dokument (pdf, docx, pptx oder xlsx) hochladen und der KI dazu Fragen stellen </li>
<li>Wenn du eine neue Fragestellung verfolgen möchtest, vorher den '<b>Löschen-Button</b>' betätigen, da der gesamte Chatverlauf bei jeder Frage immer mit geladen wird.</li>
<li><b>Achtung:</b> Die Chatverläufe werden aus Sicherheitsgründen nicht dauerhaft gespeichert und sind nach dem Verlassen der Seite weg!!!</li>
<li>Es werden aber die hochgeladenen Dokumente angezeigt, die die relevanten Informationen geliefert haben und du kannst sie durch einen Klick herunterladen.</li>
</ul>
"""
CONCURRENT_COUNT = 100


ALREADY_CONVERTED_MARK = "<!-- ALREADY CONVERTED BY PARSER. -->"


#Theme
small_and_beautiful_theme = gr.themes.Soft(
        primary_hue=gr.themes.Color(
            c50="#D67FFF",       #B808AD",
            c100="rgba(184,8,173, 0.2)",   #rgba(2, 193, 96, ...)
            c200="#D67FFF",
            c300="rgba(184,8,173, 0.32)",
            c400="rgba(184,8,173, 0.32)",
            c500="rgba(184,8,173, 1.0)",
            c600="rgba(184,8,173, 1.0)",
            c700="rgba(184,8,173, 0.32)",
            c800="rgba(184,8,173, 0.32)",
            c900="#D67FFF",
            c950="#D67FFF",
        ),
        secondary_hue=gr.themes.Color(
            c50="#576b95",
            c100="#576b95",
            c200="#576b95",
            c300="#576b95",
            c400="#576b95",
            c500="#576b95",
            c600="#576b95",
            c700="#576b95",
            c800="#576b95",
            c900="#576b95",
            c950="#576b95",
        ),
        neutral_hue=gr.themes.Color(
            name="gray",
            c50="#f9fafb",
            c100="#f3f4f6",
            c200="#e5e7eb",
            c300="#d1d5db",
            c400="#B2B2B2",
            c500="#808080",
            c600="#636363",
            c700="#515151",
            c800="#393939",
            c900="#272727",
            c950="#171717",
        ),
        radius_size=gr.themes.sizes.radius_sm,
    ).set(
        button_primary_background_fill="#B808AD",
        button_primary_background_fill_dark="#6501AD",
        button_primary_background_fill_hover="#B40FC6",
        button_primary_border_color="#B808AD",
        button_primary_border_color_dark="#B808AD",
        button_primary_text_color="#FFFFFF",
        button_primary_text_color_dark="#FFFFFF",
        button_secondary_background_fill="#F2F2F2",
        button_secondary_background_fill_dark="#2B2B2B",
        button_secondary_text_color="#393939",
        button_secondary_text_color_dark="#FFFFFF",
        # background_fill_primary="#F7F7F7",
        # background_fill_primary_dark="#1F1F1F",
        block_title_text_color="*primary_500",
        block_title_background_fill="*primary_100",
        input_background_fill="#F6F6F6",
    )

themeAlex = gr.themes.Soft(
    primary_hue="purple",
    secondary_hue="purple",
    neutral_hue="stone",
).set(
    body_text_color='*neutral_100',
    background_fill_primary='*neutral_950',
    background_fill_secondary='*neutral_900',
    border_color_accent='*neutral_600',
    border_color_primary='*neutral_700',
    color_accent_soft='*neutral_700',
    link_text_color='*secondary_500',
    link_text_color_active='*secondary_500',
    link_text_color_hover='*secondary_400',
    link_text_color_visited='*secondary_600',
    code_background_fill='*neutral_800',
    block_background_fill='*neutral_800',
    block_label_background_fill='*primary_600',
    block_label_text_color='*neutral_50',
    block_label_text_color_dark='*neutral_50',
    block_title_text_color='*neutral_50',
    checkbox_background_color='*neutral_800',
    checkbox_background_color_selected='*primary_700',
    checkbox_border_color='*neutral_600',
    checkbox_border_color_focus='*primary_600',
    checkbox_border_color_hover='*neutral_600',
    checkbox_border_color_selected='*primary_700',
    checkbox_border_width='*input_border_width',
    checkbox_label_background_fill_selected='*primary_600',
    checkbox_label_text_color_selected='*checkbox_label_text_color',
    error_background_fill='*background_fill_primary',
    input_background_fill='*neutral_700',
    input_background_fill_focus='*secondary_600',
    input_border_color='*border_color_primary',
    input_border_color_focus='*neutral_700',
    input_placeholder_color='*neutral_500',
    slider_color='*primary_600',
    stat_background_fill='*primary_500',
    table_border_color='*neutral_700',
    table_even_background_fill='*neutral_950',
    table_odd_background_fill='*neutral_900',
    button_primary_background_fill='*primary_700',
    button_primary_background_fill_hover='*primary_500',
    button_primary_border_color='*primary_600',
    button_secondary_background_fill='*neutral_600',
    button_secondary_background_fill_hover='*primary_500',
    button_secondary_border_color='*neutral_600',
    button_secondary_text_color='*neutral_50'
)