Evaluarea performanței generării video
Poți evalua performanța pipeline-urilor de generare video folosind un model CLIP multi-modal, care testează similaritatea dintre fiecare cadru al videoclipului și prompt. Vei folosi această metodă pentru a vedea cât de bine se potrivește videoclipul generat în exercițiul anterior cu prompt-ul dat.
Funcția load_video() a fost importată din diffusers.utils. Modulul clip_score a fost, de asemenea, importat din torchmetrics.
Acest exercițiu face parte din cursul
Modele Multi-Modale cu Hugging Face
Instrucțiuni pentru exercițiu
- Definește o funcție de scorare CLIP numită
clip_score_fn()pornind de la metricaclip_score(). - Calculează scorul CLIP dintre fiecare tensor de cadru din
frame_tensorsșiprompt.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
# 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}")