Spaces:
Sleeping
Sleeping
File size: 1,471 Bytes
04f475a e73380c 04f475a 7b63336 f825898 04f475a f825898 800f4d4 04f475a f825898 7013cc6 a27e928 7013cc6 a27e928 7013cc6 a27e928 7013cc6 a27e928 7013cc6 a27e928 d469986 7013cc6 800f4d4 7013cc6 3500d25 800f4d4 3500d25 a34ab64 3500d25 4bfa63a 7013cc6 3500d25 d469986 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 |
import streamlit as st
from transformers import pipeline
from PIL import Image
import os
# Load the image classification pipeline
@st.cache_resource
def load_image_classification_pipeline():
"""
Load the image classification pipeline using a pretrained model.
"""
return pipeline("image-classification", model="Shresthadev403/food-image-classification")
pipe_classification = load_image_classification_pipeline()
# Load the BLOOM model for ingredient generation
@st.cache_resource
def load_bloom_pipeline():
"""
Load the BLOOM model for ingredient generation.
"""
return pipeline("text-generation", model="bigscience/bloom-1b7")
pipe_bloom = load_bloom_pipeline()
# Function to generate ingredients using BLOOM
def get_ingredients_bloom(food_name):
"""
Generate a list of ingredients for the given food item using BLOOM.
Returns a clean, comma-separated list of ingredients.
"""
prompt = (
f"Generate a list of the main ingredients used to prepare {food_name}. "
"Respond only with a concise, comma-separated list of ingredients, without any additional text, explanations, or placeholders. "
"For example, if the food is pizza, respond with 'cheese, tomato sauce, bread, olive oil, basil'."
)
try:
response = pipe_bloom(prompt, max_length=50, num_return_sequences=1)
generated_text = response[0]["generated_text"].strip()
# Post-process the response |