Support IA pour le visuel
Utilisez des LLM de vision — GPT-4 Vision, Claude Vision, Gemini et YOLO — pour pré-annoter des images, proposer des boîtes englobantes et assister les tâches visuelles dans Potato.
Nouveau dans la v2.1.0
Potato assiste les tâches d'annotation d'images et de vidéos à l'aide de différents modèles de vision : YOLO pour la détection d'objets et des modèles vision-langage (VLLM) comme GPT-4o, Claude ou les modèles de vision d'Ollama.
Vue d'ensemble
Le support IA pour le visuel permet :
- Détection d'objets : détecter et localiser automatiquement les objets d'une image avec YOLO ou un VLLM
- Pré-annotation : détecter automatiquement tous les objets, pour relecture humaine
- Classification : classer une image ou des régions à l'intérieur d'une image
- Indices : obtenir des repères sans révéler les emplacements exacts
- Détection de scènes : identifier les segments temporels d'une vidéo
- Détection d'images clés : repérer les moments marquants d'une vidéo
- Suivi d'objets : suivre les objets d'une image à l'autre dans une vidéo
Points de terminaison pris en charge
Point de terminaison YOLO
Le meilleur choix pour une détection d'objets rapide et précise en inférence locale.
ai_support:
enabled: true
endpoint_type: "yolo"
ai_config:
model: "yolov8m.pt" # or yolov8n, yolov8l, yolov8x, yolo-world
confidence_threshold: 0.5
iou_threshold: 0.45Modèles pris en charge :
- YOLOv8 (variantes n/s/m/l/x)
- YOLO-World (détection à vocabulaire ouvert)
- Modèles entraînés sur mesure
Point de terminaison Ollama Vision
Pour l'inférence locale de modèles vision-langage.
ai_support:
enabled: true
endpoint_type: "ollama_vision"
ai_config:
model: "llava:latest" # or llava-llama3, bakllava, llama3.2-vision, qwen2.5-vl
base_url: "http://localhost:11434"
max_tokens: 500
temperature: 0.1Modèles pris en charge :
- LLaVA (7B, 13B, 34B)
- LLaVA-LLaMA3
- BakLLaVA
- Llama 3.2 Vision (11B, 90B)
- Qwen2.5-VL
- Moondream
Point de terminaison OpenAI Vision
Pour l'analyse visuelle dans le cloud avec GPT-4o.
ai_support:
enabled: true
endpoint_type: "openai_vision"
ai_config:
api_key: "${OPENAI_API_KEY}"
model: "gpt-4o" # or gpt-4o-mini
max_tokens: 1000
detail: "auto" # low, high, or autoPoint de terminaison Anthropic Vision
Pour Claude et ses capacités de vision.
ai_support:
enabled: true
endpoint_type: "anthropic_vision"
ai_config:
api_key: "${ANTHROPIC_API_KEY}"
model: "claude-sonnet-4-20250514"
max_tokens: 1024Capacités des points de terminaison
Chaque point de terminaison a ses points forts :
| Point de terminaison | Génération de texte | Vision | Sortie bbox | Mots-clés | Justification |
|---|---|---|---|---|---|
ollama_vision | Oui | Oui | Non | Non | Oui |
openai_vision | Oui | Oui | Non | Non | Oui |
anthropic_vision | Oui | Oui | Non | Non | Oui |
yolo | Non | Oui | Oui | Non | Non |
Bonnes pratiques :
- Pour une détection d'objets précise, utilisez le point de terminaison
yolo - Pour une classification d'images avec explications, utilisez un VLLM comme
ollama_visionavec Qwen-VL ou LLaVA - Pour des flux de travail mixtes, configurez à la fois un point de terminaison texte et un point de terminaison visuel
Annotation d'images assistée par IA
Configurez l'annotation d'images assistée par IA avec la détection, la pré-annotation, la classification et les indices :
annotation_schemes:
- annotation_type: image_annotation
name: object_detection
description: "Detect and label objects in the image"
tools:
- bbox
- polygon
labels:
- name: "person"
color: "#FF6B6B"
- name: "car"
color: "#4ECDC4"
- name: "dog"
color: "#45B7D1"
ai_support:
enabled: true
features:
detection: true # "Detect" button - find objects
pre_annotate: true # "Auto" button - detect all
classification: false # "Classify" button - classify region
hint: true # "Hint" button - get guidance
ai_support:
enabled: true
endpoint_type: "yolo"
ai_config:Annotation vidéo assistée par IA
annotation_schemes:
- annotation_type: video_annotation
name: scene_segmentation
description: "Segment video into scenes"
mode: segment
labels:
- name: "intro"
color: "#4ECDC4"
- name: "action"
color: "#FF6B6B"
- name: "outro"
color: "#45B7D1"
ai_support:
enabled: true
features:
scene_detection: true # Detect scene boundaries
keyframe_detection: false
tracking: false
pre_annotate: true # Auto-segment entire video
hint: true
ai_support:
enabled: true
endpoint_type: "ollama_vision"
ai_config:Séparer les points de terminaison visuel et texte
Vous pouvez configurer un point de terminaison distinct pour les tâches visuelles, et ainsi utiliser le modèle le mieux adapté à chaque type de contenu :
ai_support:
enabled: true
endpoint_type: "openai" # For text annotations
ai_config:
api_key: "${OPENAI_API_KEY}"
model: "gpt-4o-mini"
# Separate visual endpoint
visual_endpoint_type: "yolo"
visual_ai_config:
model: "yolov8m.pt"
confidence_threshold: 0.5Ou en associant un modèle vision-langage à un modèle de texte :
ai_support:
enabled: true
endpoint_type: "ollama" # Main endpoint for text
visual_endpoint_type: "ollama_vision" # Visual endpoint for images
ai_config:
model: "llama3.2"
include:
all: true
visual_ai_config:
model: "qwen2.5-vl:7b"Fonctionnalités IA
Détection
Trouve les objets correspondant aux étiquettes configurées et trace des boîtes englobantes proposées. Les suggestions apparaissent en surimpression pointillée et peuvent être acceptées ou rejetées.
Pré-annotation (Auto)
Détecte automatiquement tous les objets de l'image ou de la vidéo et crée des suggestions à relire. Utile pour accélérer l'annotation de gros jeux de données.
Classification
Classe une région sélectionnée ou l'image entière. Renvoie une étiquette proposée, avec un score de confiance et un raisonnement.
Indices
Fournit des repères sans révéler la réponse exacte. Pratique pour former les annotateurs, ou quand vous voulez conserver le jugement humain tout en apportant une assistance IA.
Détection de scènes (vidéo)
Analyse les images de la vidéo pour repérer les frontières entre scènes et propose des segments temporels étiquetés.
Détection d'images clés (vidéo)
Repère dans une vidéo les moments marquants qui feraient de bons points d'annotation.
Suivi d'objets (vidéo)
Propose la position des objets d'une image à l'autre, pour une annotation de suivi cohérente.
Utiliser les suggestions de l'IA
- Cliquez sur le bouton d'assistance IA (Detect, Auto, Hint, etc.)
- Attendez que les suggestions apparaissent en surimpression pointillée
- Accepter une suggestion : double-cliquez sur la surimpression
- Rejeter une suggestion : faites un clic droit sur la surimpression
- Tout accepter : cliquez sur « Accept All » dans la barre d'outils
- Tout effacer : cliquez sur « Clear » pour supprimer toutes les suggestions
Format de réponse de l'API de détection
{
"detections": [
{
"label": "person",
"bbox": {"x": 0.1, "y": 0.2, "width": 0.3, "height": 0.5},
"confidence": 0.95
}
]
}Pour les indices :
{
"hint": "Look for objects in the lower right corner",
"suggestive_choice": "Focus on overlapping regions"
}Pour les segments vidéo :
{
"segments": [
{
"start_time": 0.0,
"end_time": 5.5,
"suggested_label": "intro",
"confidence": 0.85
}
]
}Prérequis
Pour le point de terminaison YOLO
pip install ultralytics opencv-pythonPour Ollama Vision
- Installez Ollama depuis ollama.ai
- Récupérez un modèle de vision :
ollama pull llava - Démarrez le serveur Ollama (il écoute sur
http://localhost:11434par défaut)
Pour OpenAI/Anthropic Vision
- Renseignez la clé d'API dans l'environnement ou la configuration
- Vérifiez que vous avez accès à des modèles capables de vision
Dépannage
« Aucun point de terminaison IA visuel configuré »
Vérifiez que vous avez :
- Défini
ai_support.enabled: true - Défini un
endpoint_typevalide qui prend en charge la vision (yolo,ollama_vision,openai_vision,anthropic_vision) - Installé les dépendances requises par le point de terminaison choisi
YOLO ne détecte pas les objets attendus
- Essayez d'abaisser
confidence_threshold - Vérifiez que vos étiquettes correspondent aux noms de classes de YOLO (ou utilisez YOLO-World pour un vocabulaire personnalisé)
- Vérifiez que le fichier du modèle existe et est valide
Erreurs avec Ollama Vision
- Vérifiez qu'Ollama tourne :
curl http://localhost:11434/api/tags - Vérifiez que vous avez bien récupéré un modèle de vision :
ollama list - Vérifiez que le modèle prend en charge la vision (llava, bakllava, llama3.2-vision, etc.)
Pour aller plus loin
- Support IA - Assistance IA sur le texte (indices, mots-clés, justifications)
- Annotation d'images - Outils et configuration de l'annotation d'images
- Affichage des instances - Configurer l'affichage du contenu
Pour les détails d'implémentation, consultez la documentation source.