File size: 891 Bytes
d47196a
9b7633c
 
1e69485
9b7633c
d47196a
9b7633c
 
 
d47196a
 
e7b9fde
d47196a
9b7633c
 
 
 
 
d47196a
 
9b7633c
d47196a
a205c3f
d47196a
f2c6b92
d47196a
 
f2c6b92
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
import gradio as gr
from product_recommender import DynamicRecommender
import asyncio

async def get_recommendations(text: str) -> dict:
    try:
        recommender = DynamicRecommender()
        recommendations = await recommender.get_recommendations(text)
        return {"recommendations": recommendations}
    except Exception as e:
        return {"error": str(e)}

demo = gr.Interface(
    fn=lambda x: asyncio.run(get_recommendations(x)),
    inputs=gr.Textbox(
        lines=3,
        placeholder="Describe who you're buying a gift for (age, interests, etc.)"
    ),
    outputs=gr.JSON(),
    title="🎁 Smart Gift Recommender",
    description="Get personalized gift suggestions with real-time price comparison!"
)

if __name__ == "__main__":
    # Run on all interfaces and port 7860 by default
    demo.launch(server_name="0.0.0.0", server_port=7860)
else:
    app = demo.app