Évaluer la performance de la génération vidéo
Vous pouvez évaluer la performance de vos chaînes de génération vidéo à l'aide d'un modèle CLIP multimodal, qui mesure la similarité entre chaque image d'une séquence vidéo et le prompt. Vous l'utiliserez pour vérifier à quel point la vidéo générée à l'exercice précédent correspond au prompt.
La fonction load_video() a été importée de diffusers.utils pour vous. Le module clip_score a aussi été importé de torchmetrics.
Cette activité fait partie du cours
Modèles multimodaux avec Hugging Face
Instructions de l’exercice
- Configurez une fonction de pointage CLIP appelée
clip_score_fn()à partir de la métriqueclip_score(). - Calculez le score CLIP entre chaque tenseur d'image dans
frame_tensorset leprompt.
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
# Setup CLIP scoring
clip_score_fn = partial(____, model_name_or_path="openai/clip-vit-base-patch32")
frame_tensors = []
for frame in frames:
frame = np.array(frame)
frame_int = (frame * 255).astype("uint8")
frame_tensor = torch.from_numpy(frame_int).permute(2, 0, 1)
frame_tensors.append(frame_tensor)
# Pass a list of CHW tensors as expected by clip_score
scores = clip_score_fn(____, [____] * len(frame_tensors)).detach().cpu().numpy()
avg_clip_score = round(np.mean(scores), 4)
print(f"Average CLIP score: {avg_clip_score}")