File size: 1,191 Bytes
42f970b
c732a18
ab558ef
 
c732a18
ab558ef
 
 
4eaf1b2
ab558ef
 
 
 
 
 
 
 
 
 
 
 
4eaf1b2
ab558ef
 
 
 
 
 
 
 
 
c732a18
ab558ef
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
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
import time
import gradio as gr
import requests
import json

# Función que hace la solicitud a la API y muestra la respuesta progresivamente
def slow_api_response(message, history):
    url = "https://data-monopolio.dev.dd360.mx/ai-assistant/v1"

    # Crea el payload con el mensaje proporcionado
    payload = json.dumps({
        "query": message,
        "sessionId": "12345",
        "numMessages": "1", 
        "userId": "user-01",
        "property_id": "c0ced2220b87fc23762facf617157a4f"
    })
    
    headers = {
        'Content-Type': 'application/json'
    }

    try:
        # Realiza la solicitud POST a la API
        response = requests.request("POST", url, headers=headers, data=payload)
        api_response = response.text
        
        # Simula una respuesta progresiva
        for i in range(len(api_response)):
            time.sleep(0.05)  # Simula un retraso
            yield api_response[:i + 1]  # Devuelve la respuesta progresiva

    except requests.RequestException as e:
        yield f"Error: {str(e)}"

# Interfaz Gradio usando la función slow_api_response
demo = gr.ChatInterface(fn=slow_api_response)

if __name__ == "__main__":
    demo.launch()