EasyAnimate adalah framework pembuatan video yang dikembangkan oleh Alibaba Cloud PAI berdasarkan arsitektur Diffusion Transformer (DiT). Framework ini menyediakan solusi lengkap untuk menghasilkan video panjang berdefinisi tinggi secara cepat dari teks atau gambar, serta mencakup kemampuan penyempurnaan model guna memenuhi kebutuhan personalisasi.
Ikhtisar solusi
Solusi | Keunggulan dan Skenario | Informasi Penagihan |
Menyediakan lingkungan pengembangan terintegrasi berbasis cloud (IDE) dengan tutorial dan kode bawaan. Solusi ini ideal untuk skenario yang memerlukan pemahaman mendalam tentang model atau pengembangan kustom. | Tutorial ini menggunakan sumber daya publik untuk membuat instans DSW yang ditagih dalam mode bayar sesuai penggunaan. Untuk informasi lebih lanjut tentang penagihan, lihat penagihan DSW. | |
Tidak diperlukan konfigurasi lingkungan. Anda dapat menerapkan atau menyempurnakan model dengan satu klik dan segera memanggilnya melalui WebUI atau API. Solusi ini cocok untuk skenario yang memerlukan validasi cepat atau integrasi aplikasi. | Tutorial ini menggunakan sumber daya publik untuk membuat layanan EAS (untuk penerapan model) dan pekerjaan DLC (untuk penyempurnaan model), keduanya ditagih dalam mode bayar sesuai penggunaan. Untuk informasi lebih lanjut tentang penagihan, lihat penagihan DLC dan penagihan EAS. |
Solusi 1: Hasilkan video menggunakan DSW
Langkah 1: Buat instans DSW
Masuk ke Konsol PAI dan pilih wilayah tujuan Anda. Di panel navigasi sebelah kiri, klik Workspaces, lalu pilih dan masuk ke ruang kerja target.
Di panel navigasi sebelah kiri, klik Model Training > Interactive Modeling (DSW) untuk mengakses halaman DSW.
Klik Create instance dan konfigurasikan parameter utama berikut. Biarkan parameter lain pada nilai default-nya.
Parameter
Deskripsi
Instance Name
Nilai contoh yang digunakan dalam tutorial ini: AIGC_test_01.
Resource Type
Pilih Public Resources.
Instance Type
Di bawah GPU specifications, pilih
ecs.gn7i-c8g1.2xlargeatau instans lain dengan GPU A10 atau GU100.Image
Pilih Alibaba Cloud Image, lalu cari dan pilih
easyanimate:1.1.5-pytorch2.2.0-gpu-py310-cu118-ubuntu22.04.Klik OK untuk membuat instans. Tunggu hingga status instans berubah menjadi Running.
Langkah 2: Unduh tutorial dan model EasyAnimate
Klik Actions untuk instans DSW Anda, lalu klik Open untuk mengakses lingkungan pengembangan DSW.
Di tab Notebook, buka halaman Launcher dan klik untuk membuka DSW Gallery.
Di halaman DSW Gallery, cari AI video generation example based on EasyAnimate (V5). Klik Open in DSW untuk mengunduh sumber daya yang diperlukan ke instans DSW Anda secara otomatis.
Contoh pembuatan video AI berbasis EasyAnimate memiliki beberapa versi. Topik ini menggunakan versi V5 sebagai contoh.

Unduh dan instal kode serta model terkait EasyAnimate.
Di file tutorial EasyAnimate, klik
untuk menjalankan sel-sel berjudul Function Definitions, Download Code, dan Download Model secara berurutan.
Langkah 3: Jalankan WebUI dan hasilkan video
Klik
untuk menjalankan sel berjudul Launch UI guna memulai layanan WebUI.Klik tautan yang dihasilkan untuk mengakses WebUI.

Di antarmuka WebUI, pilih path model pra-latih dari daftar dropdown. Konfigurasikan parameter lain sesuai kebutuhan.

Klik Generate. Setelah sekitar 5 menit, Anda dapat melihat atau mengunduh video yang dihasilkan di sebelah kanan.

Solusi 2: Hasilkan video menggunakan Model Gallery
Langkah 1: Terapkan model pra-latih
Masuk ke Konsol PAI, lalu pilih wilayah tujuan Anda. Di panel navigasi sebelah kiri, klik Workspaces, kemudian pilih dan masuk ke ruang kerja target.
Di panel navigasi sebelah kiri, klik Quick Start > Model Gallery. Cari EasyAnimate high-definition long video generation model, klik Deploy, gunakan konfigurasi default, lalu konfirmasi penerapan. Ketika status layanan berubah menjadi Running, model berhasil diterapkan.

Langkah 2: Hasilkan video menggunakan WebUI atau API
Setelah model berhasil diterapkan, Anda dapat menghasilkan video menggunakan WebUI atau API.
Untuk melihat detail tugas penerapan nanti, buka panel navigasi sebelah kiri, klik Model Gallery > Job Management > Deployment Jobs, lalu klik Service name.
Metode WebUI
Di halaman Service details, klik View Web App.

Di antarmuka WebUI, pilih path model pra-latih. Konfigurasikan parameter lain sesuai kebutuhan.

Klik Generate. Setelah sekitar 5 menit, Anda dapat melihat atau mengunduh video yang dihasilkan di sebelah kanan.

Metode API
Di halaman Service details, pada bagian Resource Details, klik View Call Information untuk mendapatkan titik akhir layanan dan token.

Anda dapat memanggil layanan untuk menghasilkan video. Berikut contoh permintaan Python:
import os import requests import json import base64 from typing import Dict, Any class EasyAnimateClient: """ EasyAnimate EAS service API client. """ def __init__(self, service_url: str, token: str): if not service_url or not token: raise ValueError("Service URL and token cannot be empty") self.base_url = service_url.rstrip('/') self.headers = { 'Content-Type': 'application/json', 'Authorization': token } def update_model(self, model_path: str, edition: str = "v3", timeout: int = 300) -> Dict[str, Any]: """ Update dan muat versi serta path model yang ditentukan. Args: model_path: Path ke model dalam layanan, seperti "/mnt/models/Diffusion_Transformer/EasyAnimateV3-XL-2-InP-512x512". edition: Versi model, default adalah "v3". timeout: Batas waktu permintaan dalam detik. Pemuatan model lambat, jadi atur batas waktu yang lebih lama. """ # 1. Update edition requests.post( f"{self.base_url}/easyanimate/update_edition", headers=self.headers, json={"edition": edition}, timeout=timeout ).raise_for_status() # 2. Update path model dan tunggu pemuatan print(f"Mengirim permintaan pemuatan model: {model_path}") response = requests.post( f"{self.base_url}/easyanimate/update_diffusion_transformer", headers=self.headers, json={"diffusion_transformer_path": model_path}, timeout=15000 ) response.raise_for_status() return response.json() def generate_video(self, prompt_textbox: str, **kwargs) -> bytes: """ Hasilkan video berdasarkan prompt. Args: prompt: Prompt positif dalam bahasa Inggris. **kwargs: Parameter opsional. Lihat tabel deskripsi parameter di bawah. Returns: Data biner video dalam format MP4. """ payload = { "prompt_textbox": prompt_textbox, "negative_prompt_textbox": kwargs.get("negative_prompt", "The video is not of a high quality, it has a low resolution..."), "width_slider": kwargs.get("width_slider", 672), "height_slider": kwargs.get("height_slider", 384), "length_slider": kwargs.get("length_slider", 144), "sample_step_slider": kwargs.get("sample_step_slider", 30), "cfg_scale_slider": kwargs.get("cfg_scale_slider", 6.0), "seed_textbox": kwargs.get("seed_textbox", 43), "sampler_dropdown": kwargs.get("sampler_dropdown", "Euler"), "generation_method": "Video Generation", "is_image": False, "lora_alpha_slider": 0.55, "lora_model_path": "none", "base_model_path": "none", "motion_module_path": "none" } response = requests.post( f"{self.base_url}/easyanimate/infer_forward", headers=self.headers, json=payload, timeout=1500 ) response.raise_for_status() result = response.json() if "base64_encoding" not in result: raise ValueError(f"Format respons API tidak valid: {result}") return base64.b64decode(result["base64_encoding"]) # --- Contoh penggunaan --- if __name__ == "__main__": try: # 1. Konfigurasikan informasi layanan. Ganti dengan URL layanan dan token aktual Anda. Kami menyarankan menyetelnya sebagai variabel lingkungan. EAS_URL = "<eas-service-url>" EAS_TOKEN = "<eas-service-token>" # 2. Buat klien client = EasyAnimateClient(service_url=EAS_URL, token=EAS_TOKEN) # 3. Muat model (Setelah penerapan layanan, tidak ada model yang dimuat secara default. Anda harus memanggil update_model setidaknya sekali sebelum menghasilkan video. Panggil metode ini lagi untuk mengganti model.) client.update_model(model_path="/mnt/models/Diffusion_Transformer/EasyAnimateV3-XL-2-InP-512x512") # 4. Hasilkan video video_bytes = client.generate_video( prompt_textbox="A beautiful cat playing in a sunny garden, high quality, detailed", width_slider=672, height_slider=384, length_slider=72, sample_step_slider=20 ) # 5. Simpan file video with open("api_generated_video.mp4", "wb") as f: f.write(video_bytes) print("Video berhasil disimpan sebagai api_generated_video.mp4") except requests.RequestException as e: print(f"Kesalahan permintaan jaringan: {e}") except (ValueError, KeyError) as e: print(f"Kesalahan data atau parameter: {e}") except Exception as e: print(f"Kesalahan tak terduga: {e}")Parameter input untuk API layanan dijelaskan di bawah ini:
Langkah 3: (Opsional) Sempurnakan model pra-latih
Penyempurnaan model pada dataset kustom memungkinkan pembuatan video dengan gaya atau konten tertentu. Ikuti langkah-langkah berikut untuk menyempurnakan model:
Masuk ke Konsol PAI. Di panel navigasi sebelah kiri, klik Workspaces, lalu pilih dan masuk ke ruang kerja target.
Di panel navigasi sebelah kiri, klik Quick Start > Model Gallery.
Di halaman Model Gallery, cari EasyAnimate high-definition long video generation model, lalu klik Fine-tune untuk mengakses halaman konfigurasi.

Atur Source ke Public Resources. Untuk Instance type, pilih instans dengan GPU A10 atau lebih tinggi. Konfigurasikan hiperparameter sesuai kebutuhan. Biarkan parameter lain pada nilai default-nya.
Jika Anda ingin menyempurnakan model menggunakan dataset kustom, ikuti instruksi berikut:
Klik Train > Confirm untuk membuat pekerjaan pelatihan. Dengan konfigurasi lingkungan yang digunakan dalam tutorial ini, pelatihan memerlukan waktu sekitar 40 menit. Ketika status pekerjaan berubah menjadi Successful, model berhasil dilatih.
Untuk melihat detail pekerjaan pelatihan nanti, buka panel navigasi sebelah kiri, klik Model Gallery > Job Management > Training Jobs, lalu klik nama pekerjaan.
Klik tombol Deploy di pojok kanan atas untuk menerapkan model yang telah disempurnakan. Ketika status berubah menjadi Running, model berhasil diterapkan.

Di halaman Service details, klik View Web Application di bagian atas halaman.
Untuk melihat detail layanan nanti, buka panel navigasi sebelah kiri, klik Model Gallery > Job Management > Deployment Jobs, lalu klik Service name.
Di antarmuka WebUI, pilih model LoRA yang telah dilatih untuk menghasilkan video. Untuk pemanggilan API, lihat Langkah 2.

Rekomendasi lingkungan produksi
Hentikan atau hapus instans atau layanan segera untuk menghemat biaya: Tutorial ini menggunakan sumber daya publik untuk membuat instans DSW dan layanan model EAS. Hentikan atau hapus instans atau layanan segera jika tidak diperlukan lagi untuk menghindari tagihan berkelanjutan.
Hentikan atau hapus instans DSW:

Hentikan atau hapus layanan model EAS:

Gunakan EAS untuk penerapan produksi: Untuk menerapkan model di lingkungan produksi, gunakan Solusi 2 untuk menerapkan model ke EAS dengan satu klik. Jika Anda menggunakan Solusi 1, Anda dapat menerapkan model ke EAS dengan membuat gambar kustom. Untuk detailnya, lihat Terapkan model sebagai layanan online.
EAS menyediakan fitur-fitur berikut untuk menangani lingkungan produksi yang kompleks:
Gunakan uji stres EAS untuk menguji tingkat konkurensi yang didukung oleh titik akhir layanan Anda.
Gunakan Auto Scaling EAS untuk secara otomatis menyesuaikan jumlah instans naik atau turun berdasarkan puncak dan lembah trafik, memastikan operasi yang stabil.
Gunakan Pemantauan Peringatan log EAS untuk memantau status layanan secara real-time dan meningkatkan stabilitas serta keamanan sistem.
Referensi
EAS menyediakan metode penerapan berbasis skenario untuk menerapkan layanan pembuatan video AI berbasis model ComfyUI dan Stable Video Diffusion dengan satu klik. Untuk detailnya, lihat Pembuatan video AI - Penerapan ComfyUI.
