File size: 6,544 Bytes
9ca02ca
 
 
c6eb804
4e961fc
2e095eb
7e89036
 
2e095eb
 
 
e0768f1
 
 
4e961fc
61aa3ac
 
7e89036
bdf2710
5ae321a
 
 
61aa3ac
5ae321a
9b84a61
c03a3c3
5ae321a
bdf2710
 
2e095eb
 
 
 
 
 
982e3d0
2e095eb
4501dba
 
 
 
 
 
 
 
 
 
 
 
 
 
 
804f151
 
 
 
 
 
 
 
 
 
 
4501dba
 
 
5d9979b
28982c0
804f151
 
 
 
 
 
 
 
 
4501dba
 
 
 
 
 
ae8f504
 
 
4501dba
723131b
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
351e1cf
723131b
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4501dba
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
import gradio as gr


title = """<h1 align="left" style="min-width:200px; margin-top:0;"> Chaten und zeichnen</h1>"""
description = """\
<div align="left">
<p> <b>Aktuelle Modelle:</b> OpenAI und Modelle von Hugging Face: Stable Diffusion<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>
"""

description2 = "<strong>Information:</strong> Hier wird ein <strong>Large Language Model (LLM)</strong> zum Zeichnen verwendet. Zur Zeit wird hier Stable Diffusion verwendet.\n\n"

description_top = """\
Du kannst mit einer KI chatten oder dir etwas zeichnen lassen.<br>
Du kannst zwischen einem HF Modell (von Hugging Face) oder ChatGPT von OpenAI wählen. Die Option ein Bild oder ein Dokument hochzuladen und analysieren zu lassen, bietet nur das Modell von OpenAI.<br>
<b>Bedienungsanleitung:</b><br>
<ul>
<li>Zum Testen sind allgemeine Dokumente zum Schulalltag hinterlegt, so dass du Fragen dazu stellen kannst. Dazu muss LI-Erweiterung (RAG) angestellt sein.</il> 
<li>Wenn du nichts zu den schulspezifischen Dokumenten fragen möchtest, stelle diese Erweiterung bitte auf 'Aus', da die Bearbeitung sonst für die KI deutlich ausfwendiger wird.</li>
<li>Die erste Anfrage zu den schulspezifischen Dokumenten dauert eventuell 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 Bild oder ein Dokument (pdf, docx, pptx oder xlsx) hochladen und GPT dazu Fragen stellen (ein Feature vom OpenAI Plus Zugang)</li>
<li>Wenn du eine neue Fragestellung verfolgen möchtest, vorher den '<b>Neue Session-Button</b>' betätigen, da der gesamte Chatverlauf bei jeder Frage immer mit geladen wird.</li>
<li>Wenn die gewählte KI keine Antwort weiß, wird versucht eine Antwort im Internet zu finden (dies wird in der Antwort deutlich gemacht, wenn sie nicht von der KI kommt)</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>Du kannst die einzelnen Chats herunterladen, um sie für dich zu 'behalten' - jedes Mal, wenn du den '<b>Neue Session-Button</b> drückst, gilt der Chatverlauf als abgeschlossen und wird zum Download angeboten.</li>
<li>Wenn du oben den Tab wechselst, kannst du die KI Bilder zeichnen lassen.</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="#303030",       # Dunkler Hintergrund
        c100="#383838",      # Etwas hellerer Hintergrund
        c200="#D67FFF",      # Hauptakzentfarbe
        c300="#505050",      # Dunkler Hintergrund
        c400="#585858",      # Dunkler Hintergrund
        c500="#606060",      # Dunkler Hintergrund
        c600="#686868",      # Dunkler Hintergrund
        c700="#707070",      # Dunkler Hintergrund
        c800="#787878",      # Dunkler Hintergrund
        c900="#D67FFF",      # Hauptakzentfarbe
        c950="#D67FFF",      # Hauptakzentfarbe
    ),
    secondary_hue=gr.themes.Color(
        # Dunkle Sekundärfarben
        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(
        # Dunkle Neutrale Farben
        c50="#393939",
        c100="#ffffff",
        c200="#576b95",
        c300="#576b95",
        c400="#576b95",
        c500="#576b95",
        c600="#576b95",
        c700="#576b95",
        c800="#576b95",
        c900="#576b95",
        c950="#576b95",
    ),
    radius_size=gr.themes.sizes.radius_sm,
).set(
    # Anpassungen der Button- und Hintergrundfarben
    button_primary_background_fill="#B808AD",
    button_primary_background_fill_dark="#6501AD",
    background_fill_primary="#303030",         # Dunkler Hintergrund für den Light Mode
    background_fill_primary_dark="#303030",    # Dunkler Hintergrund für den Dark Mode

    # Weitere Anpassungen
)


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'
)