Spaces:
Sleeping
Sleeping
Update app.py
Browse files
app.py
CHANGED
@@ -17,9 +17,9 @@ with open("./model.gguf", mode="wb") as file:
|
|
17 |
file.write(response.content)
|
18 |
print("Model downloaded")
|
19 |
|
20 |
-
#
|
21 |
command = ["python3", "-m", "llama_cpp.server", "--model", "./model.gguf", "--host", "0.0.0.0", "--port", "2600", "--n_threads", "2"]
|
22 |
-
subprocess.Popen(command)
|
23 |
print("Model server starting...")
|
24 |
|
25 |
# Esperar a que el servidor esté activo
|
@@ -61,12 +61,23 @@ def response(message, history):
|
|
61 |
|
62 |
yield response_text
|
63 |
|
|
|
|
|
|
|
|
|
|
|
|
|
64 |
|
65 |
-
|
66 |
gr_interface = gr.ChatInterface(
|
67 |
fn=response,
|
68 |
title="Mistral-7B-Instruct-v0.2-GGUF Chatbot",
|
69 |
-
theme='syddharth/gray-minimal'
|
|
|
|
|
70 |
)
|
71 |
|
72 |
-
|
|
|
|
|
|
|
|
17 |
file.write(response.content)
|
18 |
print("Model downloaded")
|
19 |
|
20 |
+
# Iniciar el servidor LLM y almacenar el proceso
|
21 |
command = ["python3", "-m", "llama_cpp.server", "--model", "./model.gguf", "--host", "0.0.0.0", "--port", "2600", "--n_threads", "2"]
|
22 |
+
server_process = subprocess.Popen(command) # Almacenamos el proceso para poder terminarlo más tarde
|
23 |
print("Model server starting...")
|
24 |
|
25 |
# Esperar a que el servidor esté activo
|
|
|
61 |
|
62 |
yield response_text
|
63 |
|
64 |
+
# Asegurarse de finalizar el proceso del servidor al finalizar el uso
|
65 |
+
def cleanup_server():
|
66 |
+
print("Closing server...")
|
67 |
+
server_process.terminate() # Envía la señal para terminar el proceso
|
68 |
+
server_process.wait() # Espera a que el proceso termine
|
69 |
+
print("Server closed.")
|
70 |
|
71 |
+
# Configuración de la interfaz de Gradio
|
72 |
gr_interface = gr.ChatInterface(
|
73 |
fn=response,
|
74 |
title="Mistral-7B-Instruct-v0.2-GGUF Chatbot",
|
75 |
+
theme='syddharth/gray-minimal',
|
76 |
+
allow_screenshot=False,
|
77 |
+
allow_flagging="never",
|
78 |
)
|
79 |
|
80 |
+
# Añadir un paso de limpieza antes de cerrar la aplicación
|
81 |
+
gr.Interface.cleanup = cleanup_server
|
82 |
+
|
83 |
+
gr_interface.launch(share=True)
|