Đánh giá hiệu năng sinh video
Bạn có thể đánh giá hiệu năng của pipeline sinh video bằng mô hình CLIP đa phương thức, mô hình này kiểm tra độ tương đồng giữa từng khung hình của video và prompt. Bạn sẽ dùng cách này để xem video bạn đã tạo ở bài trước khớp với prompt đến mức nào.
Hàm load_video() đã được nhập sẵn từ diffusers.utils. Mô-đun clip_score cũng đã được nhập từ torchmetrics.
Bài tập này là một phần của khóa học
Mô hình đa phương thức với Hugging Face
Hướng dẫn bài tập
- Thiết lập một hàm tính điểm CLIP tên
clip_score_fn()từ metricclip_score(). - Tính điểm CLIP giữa mỗi tensor khung hình trong
frame_tensorsvàprompt.
Bài tập tương tác thực hành trực tiếp
Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.
# 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}")