proyecto_MAC / app.py
SoyAlekZen's picture
Upload app.py with huggingface_hub
894dd6d verified
Raw
History Blame Contribute Delete
2.62 kB
import gradio as gr
import requests
import os
# Marcadores de posición que serán reemplazados por TemplateGen
assistant_id = "asst_vsm9RJaiFiWAcMFmwKF2u6Jd"
project_id = "65b3f1b7bbb53ccdfcd622f7"
title = "Proyectos MAC"
description = "Soy un asistente virtual que conoce el proyecto de Magaña Arevalo Contadores a la perfección y te puedo ayudar con tus dudas o estrategias."
theme = "soft"
examples = ["¿Cuál es el cronograma detallado de implementación para la transformación digital de MAC?", "¿Qué capacitaciones están incluidas en el proyecto para el personal de MAC?", "¿Cómo se integrarán las plataformas bancarias y el CRM en nuestra infraestructura actual?", "¿Cuáles son los KPIs clave que los Dashboards de BI nos ayudarán a monitorear?", "¿Qué medidas de soporte y mantenimiento ofrece Geek Studio tras la finalización del proyecto?"]
# Inicializa la variable global
thread_id = None
def process_body(message: str, thr_id):
if thr_id == None:
return {
"message": message,
"model": "gpt-3.5-turbo-0613"
}
return {
"message": message,
"model": "gpt-3.5-turbo-0613",
"threadId": thr_id
}
# Función para generar la respuesta usando tu API
def generate_response_api(message, thread_id, assistant_id):
assistant_id = "asst_vsm9RJaiFiWAcMFmwKF2u6Jd" # Variable dinámica
project_id = "65b3f1b7bbb53ccdfcd622f7" # Variable dinámica
base_url = "https://enjambre-api-mue2676eoa-uc.a.run.app"
url = f"{base_url}/v1/agents/{assistant_id}/completion"
response = requests.post(url, json=process_body(message, thread_id))
response_json = response.json()
return response_json["message"], response_json["threadId"]
# Aquí continúa tu lógica de Gradio...
def chat_function(message, history):
global thread_id
assistant_id # ID de tu asistente
response, new_thread_id = generate_response_api(message, thread_id, assistant_id)
if new_thread_id != None:
thread_id = new_thread_id # Actualiza el thread_id global
return response
def set_thread_id(thr_id:str):
global thread_id
if thr_id == '':
return
thread_id = thr_id
# Configuración de ChatInterface usando valores dinámicos
demo=gr.ChatInterface(
fn=chat_function,
title=title,
description=description,
theme=theme,
examples=examples,
retry_btn=None,
undo_btn=None,
submit_btn="Enviar",
stop_btn="Detener"
).queue()
if __name__ == "__main__":
demo.launch(share=True)