# load dependencies import transformers import torch import gradio as gr from transformers import AutoModelForCausalLM,AutoTokenizer from transformers import pipeline import time def pred_on_text(input_text): start_time=time.time() raw_output = loaded_model_pipeline(text_inputs=[{"role":"user", "content":input_text}], max_new_tokens=256, disable_compile=True) end_time = time.time() total_time = round(end_time - start_time,4) generated_text = raw_output[0]["generated_text"][1]["content"] return generated_text,raw_output,total_time # load the model (from our hugging face repo) MODEL_PATH = "csvis/food-extract-gemma-3-270m-finetune-v1" # load the model into pipeline loaded_model=AutoModelForCausalLM.from_pretrained( pretrained_model_name_or_path = MODEL_PATH, dtype="auto", device_map="auto", attn_implementation="eager" ) tokenizer= AutoTokenizer.from_pretrained( MODEL_PATH ) # Create model pipeline loaded_model_pipeline=pipeline("text-generation", model=loaded_model, tokenizer=tokenizer) # create the demo description = """Extract food and drinks items from text with a fine-tuned SLM(small language model) * Input(str) : Raw text strings or image captions (e.g . "A photo of dog sitting on a beach" or "A breakfast plate wit bacon, eggs and toast") * Output(str): Generated text with food/not_food classification as well as noun extracted food and drink items and various food tags. For example : Input: "For breakfast I had eggs, bread and a banana" Output: food_or_drink: 1 tags: fi foods: eggs, bread, banana drinks:""" demo = gr.Interface(fn=pred_on_text, inputs=gr.TextArea(lines=4,label="Input Text"), outputs=[gr.TextArea(lines=4,label="Generated Text"), gr.TextArea(lines=7,label ="Raw Output"), gr.Number(label="Generation Time (s)")], title="🥭🍎Structured FoodExtract with a Fine-TunedGemma 3 270M", description=description, examples=[["Hello This is my Second fine-tuned LLm!"], ["A plate of food with grilled tuna,salad with avocados,olives,tomatoes and carrot and Italian dressing"], ["Chicken wings"], ["She was Looking beautiful Yesterday at the event"]] ) if __name__=="__main__": demo.launch(share=True)