Spaces:
Sleeping
Sleeping
| import gradio as gr | |
| from fastai.learner import load_learner | |
| import pandas as pd | |
| import numpy as np | |
| #Modelo | |
| learn = load_learner('modelo.pkl') | |
| #Ids para usar | |
| id = pd.read_csv('valid.csv') | |
| id = id.sort_values('user', ascending=True) | |
| id = id['user'].unique() | |
| id_list = list(map(str, id.tolist())) | |
| #Dados originais | |
| blog = pd.read_csv('blogs.csv') | |
| def preds(user): | |
| user = int(user) | |
| itens = pd.Series(learn.dls.classes['title']).unique() | |
| classifications = blog.loc[(blog['user'] == user) & (blog['rating'] > 0), 'title'] | |
| no_classifications = np.setdiff1d(itens, classifications) | |
| df = pd.DataFrame({'user': [user] * len(no_classifications), 'title': no_classifications}) | |
| preds,_ = learn.get_preds(dl=learn.dls.test_dl(df)) | |
| df['prediction'] = preds.numpy() | |
| top_5 = df.nlargest(5, 'prediction') | |
| return '\n'.join(top_5['title'].tolist()) | |
| iface = gr.Interface( | |
| fn=preds, | |
| inputs=gr.Dropdown(choices=id_list), | |
| outputs="text", | |
| title="Recomendador de Blogs", | |
| description="Esse modelo é capaz de realizar de Recomendar Blogs através de um Id de usuário", | |
| ) | |
| iface.launch(share=True) |