recommendation / app.py
unknown
Add application file
8d1a585
Raw
History Blame Contribute Delete
838 Bytes
#Step-3
##app.py
import gradio as gr
import pickle
from surprise import Dataset
# Load model
with open("model.pkl", "rb") as f:
model = pickle.load(f)
data = Dataset.load_builtin('ml-100k')
raw_ratings = data.raw_ratings
# Simple item list (movie IDs)
items = list(set([r[1] for r in raw_ratings]))
def recommend(user_id, n=5):
preds = []
for item in items:
pred = model.predict(user_id, item).est
preds.append((item, pred))
preds.sort(key=lambda x: x[1], reverse=True)
return [f"{item}{score:.2f}" for item, score in preds[:n]]
interface = gr.Interface(
fn=recommend,
inputs=[
gr.Textbox(label="User ID"),
gr.Slider(1, 10, value=5, step=1, label="Number of recommendations")
],
outputs="text",
title="Video Recommender System"
)
interface.launch()