Aan de slagGa gratis aan de slag

Prestaties van videogeneratie beoordelen

Je kunt de prestaties van je videogeneratie-pijplijnen beoordelen met een multi-modale CLIP-model, dat de overeenkomst test tussen elk videoframe en de prompt. Je gebruikt dit om te bepalen hoe goed je gegenereerde video uit de vorige oefening aansluit op de prompt.

De functie load_video() is voor je geïmporteerd uit diffusers.utils. De module clip_score is ook geïmporteerd uit torchmetrics.

Deze oefening maakt deel uit van de cursus

Multi-modale modellen met Hugging Face

Cursus bekijken

Oefeninstructies

  • Stel een CLIP-scoringsfunctie in met de naam clip_score_fn() op basis van de clip_score()-metriek.
  • Bereken de CLIP-score tussen elke frame-tensor in frame_tensors en prompt.

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

# 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}")
Code bewerken en uitvoeren