File size: 1,190 Bytes
4363820
 
 
 
 
 
 
 
 
 
238e50c
 
 
 
 
 
 
 
 
 
4363820
 
 
 
 
c00af9f
 
 
 
 
 
 
 
 
 
 
 
4363820
 
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
import gradio as gr
from src.chatbot import RestaurantChatbot

chatbot = RestaurantChatbot()

def respond(user_message, history):
    response, retrieved_docs = chatbot.answer(user_message)

    bot_response = f"{response}\n\n**Nhà hàng gợi ý:**\n"
    if retrieved_docs:
        doc = retrieved_docs[0]
        bot_response += (
            f"- **{doc['name']} ({doc['cuisine']})**\n"
            f"  - Món ăn: {', '.join(doc['dishes'])}\n"
            f"  - Giá: {doc['price_range']}\n"
            f"  - Khoảng cách: {doc['distance']} km\n"
            f"  - Đánh giá: {doc['rating']}\n"
            f"  - Địa chỉ: {doc['address']}\n"
            f"  - Mô tả: {doc['description']}\n"
        )
    else:
        bot_response += "- Không tìm thấy nhà hàng phù hợp."

    return bot_response

with gr.Blocks(css="""
    body, html, #root, .gradio-container {
        height: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }
    .full-height {
        height: 100%;
    }
""") as demo:
    with gr.Row(elem_classes=["full-height"]):
        gr.ChatInterface(fn=respond, chatbot=gr.Chatbot(), fill_height=True)

demo.launch()