Views
No views yet
HuggingFaceTB/SmolVLM2-500M-Video-Instruct on
mrdbourke/FoodExtract-1k-Vision.1{
2 "is_food": 1,
3 "image_title": "salad",
4 "food_items": ["tomato", "lettuce", "cheese"],
5 "drink_items": []
6}1import torch
2from transformers import AutoProcessor, AutoModelForImageTextToText
3from peft import PeftModel
4
5base = "HuggingFaceTB/SmolVLM2-500M-Video-Instruct"
6processor = AutoProcessor.from_pretrained(base)
7processor.image_processor.do_image_splitting = False
8model = AutoModelForImageTextToText.from_pretrained(base, dtype=torch.float32)
9model = PeftModel.from_pretrained(model, "sergiudanstan/smolvlm2-500m-foodextract-lora").merge_and_unload()
10
11prompt = ("Extract all food and drink items from this image. Respond ONLY with "
12 "JSON using the keys: is_food (0 or 1), image_title (string), "
13 "food_items (list of strings), drink_items (list of strings).")
14messages = [{"role": "user", "content": [
15 {"type": "image"}, {"type": "text", "text": prompt}]}]
16text = processor.apply_chat_template(messages, tokenize=False, add_generation_prompt=True)
17inputs = processor(text=[text], images=[[your_pil_image]], return_tensors="pt")
18print(processor.batch_decode(model.generate(**inputs, max_new_tokens=256)))