Upload app.py
Browse files
app.py
CHANGED
|
@@ -1,221 +1,102 @@
|
|
| 1 |
-
|
| 2 |
-
|
| 3 |
-
|
| 4 |
-
|
| 5 |
-
|
| 6 |
-
|
| 7 |
-
|
| 8 |
-
|
| 9 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 10 |
|
| 11 |
-
|
| 12 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 13 |
|
| 14 |
-
return
|
| 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 |
-
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 |
-
|
| 213 |
-
|
| 214 |
-
|
| 215 |
-
|
| 216 |
-
|
| 217 |
-
|
| 218 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
| 219 |
|
| 220 |
if __name__ == "__main__":
|
| 221 |
-
|
|
|
|
| 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()
|