| import gradio as gr | |
| from api import MovieRecommender | |
| recommender = MovieRecommender() | |
| def recommend_movies(prompt, topk): | |
| df = recommender.recommend(prompt, topk=int(topk)) | |
| return df | |
| demo = gr.Interface( | |
| fn=recommend_movies, | |
| inputs=[ | |
| gr.Textbox(label="Movie prompt", placeholder="action thriller with robots"), | |
| gr.Slider(1, 20, value=5, step=1, label="Top K") | |
| ], | |
| outputs=gr.Dataframe(label="Recommendations"), | |
| title="🎬 Movie Nerd", | |
| description="Prompt-based movie recommendations using embeddings" | |
| ) | |
| if __name__ == "__main__": | |
| demo.launch(share=True) | |