FoodExtract-v1
270M-модель для еды и напитков в тексте
FoodExtract-v1 — дообученная на Gemma 3 270M модель для извлечения информации о еде и напитках из сырого текста. Она определяет, относится ли текст к еде или напиткам, ставит теги по словарю и вытаскивает списки блюд и напитков. Базовая модель — google/gemma-3-270m-it; пригодится для фильтрации больших датасетов подписей к изображениям.
⚙ Ключевые особенности
- 🔎 Классифицирует текст: еда/напиток или нет.
- 📌 Проставляет теги из фиксированного словаря: nutrition_panel, ingredient list, menu, recipe, food_items, drink_items, food_advertistment, food_packaging.
- 🗂 Возвращает отдельные списки food_items и drink_items.
- ⚡ Генерирует сжатый формат вместо JSON — меньше токенов на выходе.
- 🎯 Обучена на FoodExtract-1k: 1400 примеров, созданных gpt-oss-120b.
- 🧑💻 SFT через TRL; в карточке есть helper-функции condense_output и uncondense_output.
💻 Пример
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
MODEL_PATH = "genicoder/FoodExtract-gemma-3-270m-fine-tune-v1"
model = AutoModelForCausalLM.from_pretrained(MODEL_PATH, dtype="auto", device_map="auto")
tok = AutoTokenizer.from_pretrained(MODEL_PATH)
pipe = pipeline("text-generation", model=model, tokenizer=tok)
prompt = pipe.tokenizer.apply_chat_template([{"role":"user","content":"A plate with bacon, eggs and toast"}], tokenize=False, add_generation_prompt=True)
print(pipe(prompt, max_new_tokens=256)[0]["generated_text"][len(prompt):])
Подробнее
Бенчмарков в карточке нет; модель заточена под извлечение еды/напитков и теги.Обучение: SFT через TRL на FoodExtract-1k — 1400 примеров, сгенерированных gpt-oss-120b.
Требования к VRAM не указаны; выход сжат, чтобы генерировать меньше токенов.








Комментарии