Maison > développement back-end > Tutoriel Python > Déverrouillez la magie des images: un guide rapide et facile pour utiliser le modèle SmolVLM-M à pointe

Déverrouillez la magie des images: un guide rapide et facile pour utiliser le modèle SmolVLM-M à pointe

Susan Sarandon
Libérer: 2025-01-24 14:10:10
original
256 Les gens l'ont consulté

Cet article présente SmolVLM-500M-Instruct, un modèle vision-texte compact et de pointe. Malgré sa taille relativement petite (500 millions de paramètres), il démontre des capacités impressionnantes.

Voici le code Python :

<code class="language-python">import torch
from transformers import AutoProcessor, AutoModelForVision2Seq
from PIL import Image
import warnings

warnings.filterwarnings("ignore", message="Some kwargs in processor config are unused")

def describe_image(image_path):
    processor = AutoProcessor.from_pretrained("HuggingFaceTB/SmolVLM-500M-Instruct")
    model = AutoModelForVision2Seq.from_pretrained("HuggingFaceTB/SmolVLM-500M-Instruct")

    image = Image.open(image_path)

    prompt = "Describe the image content in detail.  Provide a concise textual response."
    inputs = processor(text=[prompt], images=[image], return_tensors="pt")

    with torch.no_grad():
        outputs = model.generate(
            pixel_values=inputs["pixel_values"],
            input_ids=inputs["input_ids"],
            attention_mask=inputs["attention_mask"],
            max_new_tokens=150,
            do_sample=True,
            temperature=0.7
        )

    description = processor.batch_decode(outputs, skip_special_tokens=True)[0]
    return description.strip()

if __name__ == "__main__":
    image_path = "images/bender.jpg"

    try:
        description = describe_image(image_path)
        print("Image Description:", description)
    except Exception as e:
        print(f"Error: {e}")</code>
Copier après la connexion

Ce script exploite la bibliothèque Hugging Face Transformers pour générer une description textuelle à partir d'une image. Il charge un modèle et un processeur pré-entraînés, traite l'image et génère un texte descriptif. La gestion des erreurs est incluse.

Le code est disponible ici : https://www.php.cn/link/042886829869470b75f63dddfd7e9d9d

En utilisant l'image non stockée suivante (placée dans le répertoire d'images du projet) :

Unlock the Magic of Images: A Quick and Easy Guide to Using the Cutting-Edge SmolVLM-M Model

Le modèle génère une description (l'invite et les paramètres peuvent être ajustés pour un contrôle plus fin) : Un robot, assis sur un canapé, est plongé dans la lecture d'un livre. Des étagères et une porte sont visibles en arrière-plan. Une chaise blanche avec un coussin est également dans la scène.

La rapidité et l'efficacité du modèle sont remarquables par rapport aux modèles linguistiques plus grands.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal