import google.generativeai as genai from transformers import AutoFeatureExtractor, AutoModel from PIL import Image import torch from transformers import AutoTokenizer, AutoModelForSeq2SeqLM # Charger le modèle de vision par ordinateur model_name = "google/efficientnet-b0" feature_extractor = AutoFeatureExtractor.from_pretrained(model_name) model = AutoModel.from_pretrained(model_name) # Charger et prétraiter l'image image_path = "path/to/your/image.jpg" image = Image.open(image_path) inputs = feature_extractor(images=image, return_tensors="pt") # Passer l'image à travers le modèle with torch.no_grad(): outputs = model(**inputs) # Extraire les caractéristiques de l'image features = outputs.last_hidden_state.mean(dim=1) # Charger le modèle de génération de texte model_name = "t5-small" tokenizer = AutoTokenizer.from_pretrained(model_name) model = AutoModelForSeq2SeqLM.from_pretrained(model_name) # Convertir les caractéristiques de l'image en texte input_text = "Generate a recipe based on the following image features: " + str(features.tolist()) inputs = tokenizer(input_text, return_tensors="pt") # Générer la recette with torch.no_grad(): outputs = model.generate(**inputs) # Décoder la recette générée recipe = tokenizer.decode(outputs[0], skip_special_tokens=True) print(recipe)