BICORP commited on
Commit
9ce51b9
·
verified ·
1 Parent(s): 6477fc7

Upload app.py

Browse files
Files changed (1) hide show
  1. app.py +97 -216
app.py CHANGED
@@ -1,221 +1,102 @@
1
- def is_genitive(word):
2
- # Implement your logic to determine if a word is in the genitive case
3
- # This is a placeholder; you need to define the actual rules
4
- # For example, in Lithuanian, genitive singular often ends with 's' or 'os'
5
- return word.endswith('s') or word.endswith('os') # Adjust as necessary
6
-
7
- def extract_genitive_words(text):
8
- # Split the input text into words
9
- words = text.split()
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
10
 
11
- # Filter words that are in the genitive case
12
- genitive_words = [word for word in words if is_genitive(word)]
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
13
 
14
- return genitive_words
15
-
16
- def save_to_file(words, filename='genitive_words.txt'):
17
- # Save the genitive words to a file
18
- with open(filename, 'w', encoding='utf-8') as f:
19
- for word in words:
20
- f.write(f"{word}\n")
21
-
22
- def main():
23
- # Input text from the user
24
- text = """Gyveno senelis ir senelė ir turėjo mergytę. Senutė
25
- mirė, ir senis paėmė raganą. Ta ragana baisiai
26
- nekęsdavo mergytės ir vis liepdavo seniui, kad ją
27
- kur nors išvežtų:
28
-
29
- – Jeigu tu jos niekur neišveši, aš ją vis tek nuga-
30
- labysiu.
31
-
32
- Vienąkart senis pasiėmė kirvį ir išėjo su dukte-
33
- ria į mišką. Vidury miško rado tokią trobelytę. Joje
34
-
35
- palikęs savo dukterį, senis pats išėjo, sakydamas:
36
- Tu čia pabūk, ligi malkų prikaposiu.
37
- Mergytė liko trobelėje, o senis pririšo prie medžio
38
- kūlę ir parėjo sau namo.
39
- Duktė sėdi, sėdi troboje ir niekaip negali sulaukti
40
- su malkomis savo tėvo. Vėjas supa kūlę, ta į medį
41
- pykši, o mergytei regis, kad tėvas malkas kapoja.
42
- Kai nusibodo laukti, išėjo mergytė laukan ir sako:
43
- – Gana, tėveli, jau prikapojai malkų.
44
- Sugrįžo atgal į vidų ir vėl laukia. Laukia laukia,
45
- o tėvas vis neateina su malkomis. Nebesulaukdama
46
- vėl išėjo, – ir vėl girdi, kad kūlė supama pykši į medį,
47
- tarytum kas malkas kapoja. Mergytė sako:
48
-
49
-
50
- – Gana gi, tėvel, jau pakaks malkų, kiek prikapo-
51
- jai, – ir vėl įėjo į trobelę.
52
-
53
- Laukė laukė – tėvas vis negrįžta. Išėjusi trečią
54
- kartą, nuėjo ten, kur pykši, ir pamatė, kad nei tėvo,
55
- nei malkų niekur nėra, tik kūlė į medį pykši. Labai
56
- nusigando mergytė, likus viena vidury didelio miško,
57
- taip toli nuo namų, ir pradėjo šaukti:
58
- – Kas miškuose, kas laukuose, ateikit į pagalbą!
59
- – Aš, meškelė nabagėlė, aš ateisiu į pagalbą! –
60
- drūtai atsiliepė iš laužo meška.
61
- Mergytė dar labiau persigando, įbėgo į trobelę,
62
- užsidarė, atsigulė ant lovos ir, visa drebėdama iš
63
- baimės, apsiklojo kailiniais. Meška priėjo prie durų
64
- ir šaukia:
65
- – Merga, merga, atidaryk duris!
66
- Mergytė atidarė.
67
- – Merga, merga, įkelk mane trobon!
68
- Mergytė įkėlė.
69
- – Merga, merga, pataisyk man patalą!
70
- Mergytė pataisė.
71
- – Merga, merga, užkelk mane ant lovos!
72
- Mergytė užkėlė.
73
- – Merga, merga, pakrapštyk man ausį!
74
-
75
-
76
- Mergytė pakrapštė, ir ėmė byrėti iš meškos
77
- ausies miltai. Tiek daug pribyrėjo – gal bent pusė
78
- maišo.
79
- – Merga, merga, išvirk man parpelių!
80
- Mergytė sukūrė ugnį, užkaitė katilą su vandeniu
81
- ir dirba parpelius. Atbėgo pelytė ir prašo:
82
- – Duok man bent vieną parpeliuką, aš tu ateisiu
83
- į pagalbą.
84
- Mergytė papenėjo pelytę, ir ta nubėgo. Meška,
85
- privalgius parpelių, prikrovė ant krosnies dvi eiles
86
- pliauskų ir plytų, užgesino žiburį, padavė mergytei
87
- raktelius ir liepė bėgioti po trobą palei pasienius,
88
- skambinant su rakteliais, o pati užlipo ant krosnies
89
- ir ėmė svaidyti plytomis ir pliauskomis į visas puses.
90
- Tuo laiku pribėgo prie mergytės pelytė, paėmė
91
-
92
- iš jos raktelius, liepė mergytei pasislėpti pakros-
93
- nyje, o pati, skambindama rakteliais, ėmė bėgioti
94
-
95
- pasieniais ir pasuoliais. Meška išsvaidė nuo kros-
96
- nies visus pagalius ir plytas, bet pelytei nė karto
97
-
98
- nekliudė. Pelytė greitai nubėgo pas mergytę ir, ati-
99
- davus raktelius, liepė lįsti iš pakrosnio. Meška nuo
100
-
101
- krosnies klausia:
102
- – Merga, merga, ar tu gyva?
103
- – Gyva, – atsakė mergytė.
104
-
105
-
106
- Tada meška nulipo nuo krosnies ir liepė vėl
107
- pakrapštyti jai vieną ausį. Mergytė pakrapštė, ir
108
- pradėjo iš ausies byrėti miltai. Paskui liepė meška
109
-
110
- pakrapštyti kitą ausį, ir iš tos ausies išėjo pora dide-
111
- lių gražių arklių, užkinkytų paauksintoje karietoje.
112
-
113
- Senelio duktė prisikepė daug gardžių pyragų, susi-
114
- dėjo į ratus ir išvažiavo namo. Pamatė senelio kalytė
115
-
116
- ir loja prie vartų:
117
- Kiau, kiau, atvažiuoja senio duktė,
118
- Kiau, kiau, atsiveža daug pyragų!
119
- Duos man kur didesnį, kur gardesnį!
120
- Išėjo ragana, nuvijo kalytę ir vėl sugrįžo į trobą.
121
- O kalytė atbėgo prie vartų ir vėl loja:
122
- Kiau, kiau, atvažiuoja senio duktė,
123
- Kiau, kiau, atsiveža daug pyragų!
124
- Duos man kur didesnį, kur gardesnį!
125
- Ragana išėjus vėl nuvijo nuo vartų kalytę, o ta
126
- atsistojo prie vartų ir kiauksi:
127
- Kiau, kiau, atvažiuoja senio duktė,
128
- Kiau, kiau, atsiveža daug pyragų!
129
-
130
-
131
- Duos man kur didesnį, kur gardesnį!
132
-
133
- Ragana, visa perpykus, išėjo laukan su žarste-
134
- kliu užmušti kalytės, bet pamatė, kad senio duktė
135
-
136
- jau važiuoja į kiemą su vežimu pyragų. Patį didįjį
137
- ir gražųjį pyragą ji atidavė kalytei, o visus kitus –
138
-
139
- seniui, raganai ir jos dukteriai. Pamatę, kad mer-
140
- gytė gyva ir sveika, visi labai stebėjosi ir klausinėjo,
141
-
142
- kaip ji atvažiavo ir kur gavo tokį gražų vežimą, pilną
143
- pyragų. Mergytė visa nusakė, kaip jai buvo atsitikę.
144
- Ragana dar labiau užpyko ant senio dukters ir dar
145
- labiau pradėjo jos neapkęsti.
146
- Vieną dieną ragana sako seniui:
147
- – Vežk ir mano dukterį tenai, kur buvai nuvedęs
148
- savąją.
149
- Senis nuvežė raganos dukterį į tą pačią trobelę,
150
- pririšo prie medžio kūlę ir sugrįžo namo. Raganos
151
- duktė sėdi troboje ir vis juokias. Truputį pabuvusi,
152
- išėjo laukan ir sako juokdamasi:
153
- – Tėveli, pakaks jau malkų!
154
- Ir vėl sugrįžo į vidų.
155
- Taip pat antrą kartą buvo išėjusi. O trečią kartą
156
- nuėjo prie to medžio, kur buvo pririšta kūlė, ir kaip
157
- senio duktė sušuko:
158
- – Kas laukuose, kas miškuose, ateikit į pagalbą!
159
-
160
- Meška iš laužo atsiliepė:
161
- – Aš, meškelė nabagėlė, aš ateisiu į pagalbą!
162
- Paskui raganos duktė nubėgo ir atsigulė troboje
163
- ant lovos. Meška priėjo prie durų ir sako:
164
- – Merga, merga, atidaryk duris!
165
- – Ar negali pati atsidaryti! – atsakė raganos
166
- duktė.
167
- Meška atsidarė duris.
168
- – Merga, merga, įkelk mane trobon!
169
- – Ar negali pati įlipti! – atsakė raganos duktė.
170
- Ir ką tik meška liepia, raganos duktė vis neklauso.
171
- Nei ji lovos taisė, nei ausies meškai krapštė. O kai,
172
- verdant parpelius, atbėgo pelytė ir paprašė, kad
173
- duotų jai bent vieną parpeliuką, toji suriko:
174
- – Ar neisi šalin! Ko tau čia reikia!
175
- Meška, gulėdama ant lovos, paklausė:
176
- – Su kuo tu čia kalbiesi?
177
- Sužinojusi, kad kalbasi su pele, liepė sutrepsėti
178
- ir ją nuvaikyti.
179
- Pelytė nubėgo.
180
- Išvirė parpeliai, ir pavalgius meška užgesino
181
- žiburį, padavė raganos dukteriai raktelius, liepė
182
-
183
- lakstyti po trobą ir skambinti, o pati užlipo ant kros-
184
- nies, kur buvo prikrauta daug pliauskų ir plytų, ir
185
-
186
- pradėjo svaidyti į visas puses. Šiuokart pelytė neat-
187
-
188
-
189
- bėgo užvaduoti raganos dukters, ir ją meška tuoj
190
-
191
- užmušė; paskui, nulipus nuo krosnies, suėdė ir kau-
192
- lelius nučiulpė. Tada meška pasikrapštė ausį, ir iš
193
-
194
- jos išlindo kiaulė, užkinkyta geldoje. Meška sudėjo
195
- kaulelius geldon, ir kiaulė parvežė juos namo.
196
- Kalytė, stovėdama prie vartų, vėl kiauski:
197
- Kiau, kiau, atvažiuoja bobos duktė,
198
- Kiau, kiau, su geldele, su kauleliais.
199
- Duos man kur didesnį, kur gardesnį!
200
- Ragana, sėdėdama palangėje, laukė atvažiuojant
201
- dukters su pyragais. Užgirdus kalytę taip lojant,
202
-
203
- tuoj ją nuvaikė. Bet kalytė ir vėl loja. Ragana užpy-
204
- kus išbėgo kalytės užmušti, bet pamatė įvažiuojant
205
-
206
- kiaulę su kaulais geldoje ir persigandus vietoj nusi-
207
- baigė.
208
-
209
- Tada senis su savo dukteria labai ilgai gyveno,
210
- nieko netrūkdami."""
211
 
212
- # Extract genitive words
213
- genitive_words = extract_genitive_words(text)
214
-
215
- # Save to file
216
- save_to_file(genitive_words)
217
-
218
- print(f"Extracted {len(genitive_words)} genitive words and saved to 'genitive_words.txt'.")
 
 
 
 
219
 
220
  if __name__ == "__main__":
221
- main()
 
1
+ import gradio as gr
2
+ from huggingface_hub import InferenceClient
3
+
4
+ # Default client with the first model
5
+ client = InferenceClient("mistralai/Mistral-7B-Instruct-v0.3")
6
+
7
+ # Function to switch between models based on selection
8
+ def switch_client(model_name: str):
9
+ return InferenceClient(model_name)
10
+
11
+ # Define presets for each model
12
+ presets = {
13
+ "mistralai/Mistral-7B-Instruct-v0.3": {
14
+ "Fast": {"max_tokens": 256, "temperature": 1.0, "top_p": 0.9},
15
+ "Normal": {"max_tokens": 512, "temperature": 0.7, "top_p": 0.95},
16
+ "Quality": {"max_tokens": 1024, "temperature": 0.5, "top_p": 0.90},
17
+ "Unreal Performance": {"max_tokens": 2048, "temperature": 0.6, "top_p": 0.75},
18
+ }
19
+ }
20
+
21
+ # Fixed system message
22
+ SYSTEM_MESSAGE = "Your name is Lake 1 Base but my is User"
23
+
24
+ def respond(
25
+ message,
26
+ history: list,
27
+ model_name,
28
+ preset_name
29
+ ):
30
+ # Switch client based on model selection
31
+ global client
32
+ client = switch_client(model_name)
33
 
34
+ messages = [{"role": "system", "content": SYSTEM_MESSAGE}]
35
+
36
+ # Ensure history is a list of dictionaries
37
+ for val in history:
38
+ if isinstance(val, dict) and 'role' in val and 'content' in val:
39
+ messages.append({"role": val['role'], "content": val['content']})
40
+
41
+ messages.append({"role": "user", "content": message})
42
+
43
+ # Get the preset settings
44
+ preset = presets[model_name][preset_name]
45
+ max_tokens = preset["max_tokens"]
46
+ temperature = preset["temperature"]
47
+ top_p = preset["top_p"]
48
+
49
+ # Get the response from the model
50
+ response = client.chat_completion(
51
+ messages,
52
+ max_tokens=max_tokens,
53
+ temperature=temperature,
54
+ top_p=top_p,
55
+ )
56
+
57
+ # Extract the content from the response
58
+ final_response = response.choices[0].message['content']
59
 
60
+ return final_response
61
+
62
+ # Model names and their pseudonyms
63
+ model_choices = [
64
+ ("mistralai/Mistral-7B-Instruct-v0.3", "Lake 1 Base")
65
+ ]
66
+
67
+ # Convert pseudonyms to model names for the dropdown
68
+ pseudonyms = [model[1] for model in model_choices]
69
+
70
+ # Function to handle model selection and pseudonyms
71
+ def respond_with_pseudonym(
72
+ message,
73
+ history: list,
74
+ selected_model, # Change this to selected_model
75
+ selected_preset
76
+ ):
77
+ print(f"Selected Model: {selected_model}") # Debugging line
78
+ print(f"Available Models: {pseudonyms}") # Debugging line
79
+
80
+ # Find the actual model name from the pseudonym
81
+ try:
82
+ model_name = next(model[0] for model in model_choices if model[1] == selected_model)
83
+ except StopIteration:
84
+ return f"Error: The selected model '{selected_model}' is not valid. Please select a valid model."
85
+
86
+ # Call the existing respond function
87
+ response = respond(message, history, model_name, selected_preset)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
88
 
89
+ return response
90
+
91
+ # Gradio Chat Interface
92
+ demo = gr.ChatInterface(
93
+ fn=respond_with_pseudonym,
94
+ additional_inputs=[
95
+ gr.Dropdown(choices=pseudonyms, label="Select Model", value=pseudonyms[0]), # Pseudonym selection dropdown
96
+ gr.Dropdown(choices=list(presets["mistralai/Mistral-7B-Instruct-v0.3"].keys()), label="Select Preset", value="Fast") # Preset selection dropdown
97
+
98
+ ],
99
+ )
100
 
101
  if __name__ == "__main__":
102
+ demo.launch()