Eat_Reference / app.py
migo0722's picture
Create app.py
d14c0e3 verified
import gradio as gr
import random
# 可選餐點清單
FOOD_LIST = [
'牛肉麵', '滷肉飯', '便當', '火鍋', '壽司', '義大利麵', '燒烤', '水餃', '炒飯', '拉麵',
'沙拉', '漢堡', '炸雞', '粥', '湯麵', '咖哩飯', '鍋貼', '燒臘', '三明治', '蛋包飯'
]
def suggest_food(history):
# 根據歷史紀錄排除已吃過的
available = [food for food in FOOD_LIST if food not in history]
if not available:
return '所有餐點都吃過了!請新增選項~'
return random.choice(available)
def gradio_interface():
with gr.Blocks() as demo:
gr.Markdown("# 下一餐吃什麼?AI 幫你選!")
history = gr.State([])
food_text = gr.Textbox(label="建議餐點", interactive=False)
btn = gr.Button("抽餐點")
def on_click(h):
food = suggest_food(h)
if food != '所有餐點都吃過了!請新增選項~':
h.append(food)
return food, h
btn.click(on_click, inputs=[history], outputs=[food_text, history])
return demo
if __name__ == '__main__':
gradio_interface().launch()