Spaces:
Runtime error
Runtime error
| import gradio as gr | |
| from transformers import pipeline | |
| # Load fine-tuned model from Hugging Face Hub | |
| t5_recommender = pipeline(model="RedaAlami/t5_recommendation_sports_equipment_english") | |
| # Fixed list of candidates | |
| all_candidates = [ | |
| "Soccer Jersey", "Basketball Jersey", "Football Jersey", "Baseball Jersey", "Tennis Shirt", "Hockey Jersey", | |
| "Soccer Ball", "Basketball", "Football", "Baseball", "Tennis Ball", "Hockey Puck", | |
| "Soccer Cleats", "Basketball Shoes", "Football Cleats", "Baseball Cleats", "Tennis Shoes", "Hockey Helmet", | |
| "Goalie Gloves", "Basketball Arm Sleeve", "Football Shoulder Pads", "Baseball Cap", "Tennis Racket", "Hockey Skates", | |
| "Soccer Goal Post", "Basketball Hoop", "Football Helmet", "Baseball Bat", "Hockey Stick", | |
| "Soccer Cones", "Basketball Shorts", "Baseball Glove", "Hockey Pads", | |
| "Soccer Shin Guards", "Soccer Shorts" | |
| ] | |
| def recommend(items_purchased): | |
| # Convert items purchased to a list and remove leading/trailing spaces | |
| items_purchased_list = [item.strip() for item in items_purchased.split(',')] | |
| # Filter out the purchased items from the candidates | |
| candidates = [item for item in all_candidates if item not in items_purchased_list] | |
| # Create the prompt | |
| prompt = f"ITEMS PURCHASED: {{{', '.join(items_purchased_list)}}} - CANDIDATES FOR RECOMMENDATION: {{{', '.join(candidates)}}} - RECOMMENDATION: " | |
| # Get the recommendation from the model | |
| model_output = t5_recommender(prompt) | |
| recommendation = model_output[0]['generated_text'] | |
| return recommendation | |
| with gr.Blocks() as demo: | |
| gr.Markdown("# Sports Equipment Recommender") | |
| gr.Markdown("## All Possible Candidates") | |
| gr.Markdown(", ".join(all_candidates)) | |
| with gr.Row(): | |
| with gr.Column(): | |
| items_input = gr.Textbox(label="Items Purchased", placeholder="Enter a list of items purchased from the possible candidates above, separated by commas.") | |
| with gr.Column(): | |
| recommendation_output = gr.Textbox(label="Recommendation") | |
| recommend_button = gr.Button("Get Recommendation") | |
| recommend_button.click(fn=recommend, inputs=items_input, outputs=recommendation_output) | |
| demo.launch() | |