Spaces:
Running
Running
Update app.py
Browse files
app.py
CHANGED
@@ -40,18 +40,6 @@ def get_model_list():
|
|
40 |
model_name = model_element.find('span', {'x-test-search-response-title': True}).text.strip()
|
41 |
size_elements = model_element.find_all('span', {'x-test-size': True})
|
42 |
|
43 |
-
# # Filtrer les modèles par taille
|
44 |
-
# for size_element in size_elements:
|
45 |
-
# size = size_element.text.strip()
|
46 |
-
# if size.endswith('m'):
|
47 |
-
# # Tous les modèles en millions sont acceptés
|
48 |
-
# model_list.append(f"{model_name}:{size}")
|
49 |
-
# elif size.endswith('b'):
|
50 |
-
# # Convertir les modèles en milliards en milliards
|
51 |
-
# size_value = float(size[:-1])
|
52 |
-
# if size_value <= 10: # Filtrer les modèles <= 10 milliards de paramètres
|
53 |
-
# model_list.append(f"{model_name}:{size}")
|
54 |
-
|
55 |
# Filtrer les modèles par taille
|
56 |
for size_element in size_elements:
|
57 |
size = size_element.text.strip().lower() # Convertir en minuscules
|
@@ -108,23 +96,20 @@ def check_and_load_model(model_name):
|
|
108 |
def gradio_interface(model_name, input, max_tokens, temperature, history):
|
109 |
global stop_flag
|
110 |
stop_flag = False
|
111 |
-
response = None # Initialisez la variable response ici
|
112 |
|
113 |
def worker():
|
114 |
-
nonlocal response # Utilisez nonlocal pour accéder à la variable response définie dans la fonction parente
|
115 |
llm = check_and_load_model(model_name)
|
116 |
-
|
117 |
-
|
118 |
-
|
119 |
-
|
120 |
-
|
121 |
-
|
122 |
-
|
123 |
-
|
124 |
-
|
125 |
-
|
126 |
-
|
127 |
-
return response, history # Maintenant, response est accessible ici
|
128 |
|
129 |
model_list = get_model_list()
|
130 |
|
@@ -138,7 +123,7 @@ demo = gr.Interface(
|
|
138 |
gr.State(value=[]) # Ajout de l'historique
|
139 |
],
|
140 |
outputs=[
|
141 |
-
gr.
|
142 |
gr.State() # Ajout de l'historique
|
143 |
],
|
144 |
title="Ollama Demo",
|
@@ -148,6 +133,7 @@ demo = gr.Interface(
|
|
148 |
Cette Démo permet aux utilisateurs de tester tous les modèles Ollama dont la taille est inférieure à 10 milliards de paramètres directement depuis cette interface.
|
149 |
|
150 |
L'Application tourne sur une machine Hugging Face Free Space : 2 CPU - 16Gb RAM
|
|
|
151 |
Soyez patient...
|
152 |
"""
|
153 |
)
|
|
|
40 |
model_name = model_element.find('span', {'x-test-search-response-title': True}).text.strip()
|
41 |
size_elements = model_element.find_all('span', {'x-test-size': True})
|
42 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
43 |
# Filtrer les modèles par taille
|
44 |
for size_element in size_elements:
|
45 |
size = size_element.text.strip().lower() # Convertir en minuscules
|
|
|
96 |
def gradio_interface(model_name, input, max_tokens, temperature, history):
|
97 |
global stop_flag
|
98 |
stop_flag = False
|
|
|
99 |
|
100 |
def worker():
|
|
|
101 |
llm = check_and_load_model(model_name)
|
102 |
+
for token in llm.stream(input, max_tokens=max_tokens, temperature=temperature):
|
103 |
+
if stop_flag:
|
104 |
+
break
|
105 |
+
history.append((input, token))
|
106 |
+
yield history, history
|
107 |
+
|
108 |
+
# Utiliser un thread pour gérer le streaming
|
109 |
+
for result in worker():
|
110 |
+
if stop_flag:
|
111 |
+
break
|
112 |
+
yield result
|
|
|
113 |
|
114 |
model_list = get_model_list()
|
115 |
|
|
|
123 |
gr.State(value=[]) # Ajout de l'historique
|
124 |
],
|
125 |
outputs=[
|
126 |
+
gr.Chatbot(label="History"), # Utilisation de Chatbot pour l'historique
|
127 |
gr.State() # Ajout de l'historique
|
128 |
],
|
129 |
title="Ollama Demo",
|
|
|
133 |
Cette Démo permet aux utilisateurs de tester tous les modèles Ollama dont la taille est inférieure à 10 milliards de paramètres directement depuis cette interface.
|
134 |
|
135 |
L'Application tourne sur une machine Hugging Face Free Space : 2 CPU - 16Gb RAM
|
136 |
+
|
137 |
Soyez patient...
|
138 |
"""
|
139 |
)
|