Ao utilizar o recurso de imagem para vídeo, se a otimização de prompt ou a chamada dos efeitos de vídeo oficiais não atenderem aos seus requisitos personalizados para ações, efeitos ou estilos específicos, utilize o ajuste fino do modelo.
Escopo de aplicação
Região aplicável: Os recursos descritos neste documento estão disponíveis apenas na região Singapore. Utilize uma chave de API criada nesta região.
Método de ajuste fino suportado: Ajuste fino SFT-LoRA eficiente.
-
Modelos suportados para ajuste fino:
Imagem para vídeo (baseado no primeiro quadro): wan2,7-i2v, wan2,6-i2v, wan2,5-i2v-preview, wan2,2-i2v-flash.
Imagem para vídeo (baseado no primeiro e último quadro): wan2,2-kf2v-flash.
Como ajustar um modelo
Imagem para vídeo (baseado no primeiro quadro)
Objetivo do ajuste fino: Treinar um modelo LoRA para o efeito de chuva de dinheiro.
Resultado esperado: Insira uma imagem de primeiro quadro. Não é necessário prompt. O modelo gera um vídeo com o efeito de chuva de dinheiro.
Imagem de primeiro quadro de entrada
| Vídeo de saída (antes do ajuste fino) Não é possível gerar um efeito de chuva de dinheiro consistente todas as vezes usando prompts. O movimento não é controlável. | Vídeo de saída (após o ajuste fino) O modelo ajustado reproduz o efeito específico de chuva de dinheiro do conjunto de dados de treinamento sem necessidade de prompts. |
Imagem para vídeo (baseado no primeiro e último quadro)
Objetivo do ajuste fino: Treinar um modelo LoRA para o efeito de revista de moda.
Resultado esperado: Insira uma imagem de primeiro quadro e uma imagem de último quadro. Não é necessário prompt. O modelo gera um vídeo com o efeito de revista de moda.
Imagem de primeiro quadro de entrada
| Imagem de último quadro de entrada
| Vídeo de saída (antes do ajuste fino) Não é possível gerar um efeito de revista de moda consistente todas as vezes usando prompts. O movimento não é controlável. | Vídeo de saída (após o ajuste fino) O modelo ajustado reproduz o efeito específico de revista de moda do conjunto de dados de treinamento sem necessidade de prompts. |
Antes de executar o código abaixo, obtenha sua chave de API e host de API e configure sua chave de API.
Etapa 1: Carregar seu conjunto de dados
Carregue seu conjunto de dados local (no formato .zip) para o Alibaba Cloud Model Studio. Obtenha o ID do arquivo (file_idid).
Conjunto de dados de treinamento de exemplo: Consulte o conjunto de treinamento para detalhes sobre o formato.
Imagem para vídeo (baseado no primeiro quadro): wan-i2v-training-dataset.zip.
Imagem para vídeo (baseado no primeiro e último quadro): wan-kf2v-training-dataset.zip.
Exemplo de solicitação
Este exemplo utiliza o modelo de imagem para vídeo baseado no primeiro quadro. Carregue apenas o conjunto de treinamento. O sistema divide automaticamente uma parte dele como conjunto de validação. O carregamento de um conjunto de dados leva vários minutos. O tempo exato depende do tamanho do arquivo.
curl --location --request POST 'https://dashscope-intl.aliyuncs.com/compatible-mode/v1/files' \
--header "Authorization: Bearer $DASHSCOPE_API_KEY" \
--form 'file=@"./wan-i2v-training-dataset.zip"' \
--form 'purpose="fine-tune"'
Exemplo de resposta
Salve o id. Este é o identificador exclusivo do seu conjunto de dados carregado.
{
"id": "file-ft-b2416bacc4d742xxxx",
"object": "file",
"bytes": 73310369,
"filename": "wan-i2v-training-dataset.zip",
"purpose": "fine-tune",
"status": "processed",
"created_at": 1766127125
}
Etapa 2: Ajustar o modelo
Etapa 2.1 Crie um trabalho de ajuste fino
Inicie o treinamento utilizando o ID do arquivo obtido na Etapa 1.
Os valores dos hiperparâmetros variam conforme o modelo. Para configurações de hiperparâmetros, consulte hiperparâmetros. Para mais exemplos de solicitação, consulte exemplos de solicitação.
Exemplo de solicitação
Substitua <replace with training dataset file ID> integralmente pelo id da etapa anterior.
Imagem para vídeo (baseado no primeiro quadro)
curl --location 'https://dashscope-intl.aliyuncs.com/api/v1/fine-tunes' \
--header "Authorization: Bearer $DASHSCOPE_API_KEY" \
--header 'Content-Type: application/json' \
--data '{
"model": "wan2.7-i2v",
"training_file_ids": [
"<your-training-dataset-file-id>"
],
"training_type": "efficient_sft",
"hyper_parameters": {
"n_epochs": 400,
"batch_size": 1,
"learning_rate": 2e-5,
"split": 0.9,
"max_split_val_dataset_sample": 5,
"eval_epochs": 50,
"max_pixels": 102400,
"save_total_limit": 10,
"lora_rank": 32,
"lora_alpha": 32
}
}'
Imagem para vídeo (baseado no primeiro e último quadro)
curl --location 'https://dashscope-intl.aliyuncs.com/api/v1/fine-tunes' \
--header "Authorization: Bearer $DASHSCOPE_API_KEY" \
--header 'Content-Type: application/json' \
--data '{
"model": "wan2.2-kf2v-flash",
"training_file_ids": [
"<your-training-dataset-file-id>"
],
"training_type": "efficient_sft",
"hyper_parameters": {
"n_epochs": 400,
"batch_size": 4,
"learning_rate": 2e-5,
"split": 0.9,
"max_split_val_dataset_sample": 5,
"eval_epochs": 50,
"max_pixels": 262144,
"save_total_limit": 10,
"lora_rank": 32,
"lora_alpha": 32
}
}'
Exemplo de resposta
Verifique estes três parâmetros principais em output:
job_id: ID do trabalho. Utilize-o para verificar o progresso.finetuned_output: Nome do novo modelo ajustado. Utilize este nome para a implantação.status: Status do treinamento. Após a criação do trabalho, o status inicial é PENDING. O treinamento ainda não começou.
{
...
"output": {
"job_id": "ft-202511111122-xxxx",
"status": "PENDING",
"finetuned_output": "xxxx-ft-202511111122-xxxx",
...
}
}
Etapa 2.2 Verificar o status do trabalho de ajuste fino
Utilize o job_id da Etapa 2.1 para verificar o progresso. Consulte este endpoint periodicamente até que o status se torne SUCCEEDED.
Este trabalho de ajuste fino leva várias horas. O tempo exato depende do modelo. Aguarde pacientemente.
Exemplo de solicitação
Substitua <replace with fine-tuning job job_id> na URL integralmente pelo valor de job_id.
curl --location 'https://dashscope-intl.aliyuncs.com/api/v1/fine-tunes/<your-job-id>' \
--header "Authorization: Bearer $DASHSCOPE_API_KEY" \
--header 'Content-Type: application/json'
Exemplo de resposta
Verifique estes dois parâmetros no campo output:
status: Quando este valor se tornar SUCCEEDED, o treinamento estará concluído. Você poderá implantar o modelo.usage: Total de tokens utilizados para treinamento. Usado para faturamento.
{
...
"output": {
"job_id": "ft-202511111122-xxxx",
"status": "SUCCEEDED",
"usage": 432000,
...
}
}
Etapa 3: Implantar o modelo ajustado
Etapa 3.1 Implantar o modelo como um service online
Após o status do trabalho de ajuste fino ser SUCCEEDED, implante o modelo como um service online.
Exemplo de solicitação
Substitua <replace with model name model_name> integralmente pelo valor de finetuned_output obtido ao criar o trabalho de ajuste fino.
Imagem para vídeo (baseado no primeiro quadro)
curl --location 'https://dashscope-intl.aliyuncs.com/api/v1/deployments' \
--header "Authorization: Bearer $DASHSCOPE_API_KEY" \
--header 'Content-Type: application/json' \
--data '{
"model_name": "<your-model-name>",
"aigc_config": {
"use_input_prompt": false,
"prompt": "Provide a video description based on the image content. The description must include the phrase “Then the s86b5p money rain effect begins, countless huge-sized US dollar bills (beige background/dark green patterns) pour down like a torrential rain, densely hitting and surrounding them. The bills continue to fall, while the camera slowly zooms in, they stretch their arms upward, neck slightly tilted back, expression surprised, completely immersed in this wild money rain.”\nOutput Template:\nThe video begins with a shot of [subject description]. [Environment description]. Then the s86b5p money rain effect begins, countless huge-sized US dollar bills (beige background/dark green patterns) pour down like a torrential rain, densely hitting and surrounding them. The bills continue to fall, while the camera slowly zooms in, they stretch their arms upward, neck slightly tilted back, expression surprised, completely immersed in this wild money rain.\nExample:\nThe video begins showing a young woman standing in front of a brick wall covered with ivy. She has long, smooth reddish-brown hair, wearing a white sleeveless dress, a shiny silver necklace, and a smile on her face. The brick wall in the background is covered with green vines, appearing rustic and natural. Then the s86b5p money rain effect begins, countless huge-sized US dollar bills (beige background/dark green patterns) pour down like a torrential rain, densely hitting and surrounding her. The bills continue to fall, while the camera slowly zooms in, she stretches her arms upward, neck slightly tilted back, expression surprised, completely immersed in this wild money rain.",
"lora_prompt_default": "Then the s86b5p money rain effect begins, countless huge-sized US dollar bills (beige background/dark green patterns) pour down like a torrential rain, densely hitting and surrounding the main character. The bills continue to fall, while the camera slowly zooms in, the main character stretches their arms upward, neck slightly tilted back, with a surprised expression, completely immersed in this wild money rain."
},
"capacity": 1,
"plan": "lora"
}'
Imagem para vídeo (baseado no primeiro e último quadro)
curl --location 'https://dashscope-intl.aliyuncs.com/api/v1/deployments' \
--header "Authorization: Bearer $DASHSCOPE_API_KEY" \
--header 'Content-Type: application/json' \
--data '{
"model_name": "<your-model-name>",
"aigc_config": {
"use_input_prompt": false,
"prompt": "Provide a video description based on the image content. The description must include the phrase “Then they begin the s86b5p transformation.”\nOutput Template:\nThe video begins with a shot of [subject description]. [Environment description]. Then they begin the s86b5p transformation.\nExample:\nThe video begins with a young woman in an outdoor setting. She has short, curly dark brown hair and a friendly smile. She is wearing a black Polo shirt with colorful floral embroidery. The background features green vegetation and distant mountains. Then she begins the s86b5p transformation.",
"lora_prompt_default": "Then they begin the s86b5p transformation."
},
"capacity": 1,
"plan": "lora"
}'
Exemplo de resposta
Verifique estes dois parâmetros em output:
deployed_model: Nome do modelo implantado. Utilize-o para verificar o status da implantação e chamar o modelo.status: Status da implantação. Após implantar o modelo ajustado, o status inicial é PENDING. A implantação ainda não começou.
{
...
"output": {
"deployed_model": "xxxx-ft-202511111122-xxxx",
"status": "PENDING",
...
}
}
Etapa 3.2 Verificar o status da implantação
Consulte este endpoint periodicamente até que o status se torne RUNNING.
A implantação deste modelo ajustado leva cerca de 5 a 10 minutos.
Exemplo de solicitação
Substitua <replace with deployed_model> integralmente pelo valor de deployed_model obtido na Etapa 3.1.
Exemplo de resposta
Verifique estes dois parâmetros no campo output:
status: Quando o status se tornar RUNNING, o modelo foi implantado com sucesso. Você pode começar a chamá-lo.deployed_model: Nome do modelo implantado.
{
...
"output": {
"status": "RUNNING",
"deployed_model": "xxxx-ft-202511111122-xxxx",
...
}
}
Etapa 4: Chamar o modelo para gerar vídeos
Após a implantação bem-sucedida do modelo (quando o status da implantação for RUNNING), você pode começar a chamar o modelo.
Crie um conjunto de dados personalizado
Além de utilizar os conjuntos de dados de exemplo neste guia, você pode criar seu próprio conjunto de dados para ajuste fino.
Seu conjunto de dados deve incluir um conjunto de treinamento (obrigatório) e pode incluir um conjunto de validação (opcional, suporta divisão automática a partir do conjunto de treinamento). Compacte todos os arquivos em um arquivo .zip. Utilize apenas letras inglesas, números, sublinhados ou hifens nos nomes dos arquivos.
Formato do conjunto de dados
Conjunto de treinamento: Obrigatório
Imagem para vídeo (baseado no primeiro quadro)
O conjunto de treinamento inclui imagens de primeiro quadro, vídeos de treinamento e um arquivo de anotação (data.jsonl).
Conjunto de treinamento de exemplo: wan-i2v-training-dataset.zip.
-
Estrutura de diretórios ZIP:
wan-i2v-training-dataset.zip ├── data.jsonl # Must be named data.jsonl. Max size: 20 MB. ├── image_1.jpeg # Max resolution: 4096×4096. Formats: BMP, JPEG, PNG, WEBP. ├── video_1.mp4 # Max resolution: 4096×4096. Formats: MP4, MOV. ├── image_2.jpeg └── video_2.mp4 -
Arquivo de anotação (data.jsonl): Cada linha representa uma amostra de treinamento. Deve ser um objeto JSON. Estrutura:
{ "prompt": "The video begins showing a young woman standing in front of a brick wall covered with ivy. She has long, smooth reddish-brown hair, wearing a white sleeveless dress, a shiny silver necklace, and a smile on her face. The brick wall in the background is covered with green vines, appearing rustic and natural. Then the s86b5p money rain effect begins, countless huge-sized US dollar bills (beige background/dark green patterns) pour down like a torrential rain, densely hitting and surrounding her. The bills continue to fall, she stretches her arms upward, neck slightly tilted back, expression surprised, completely immersed in this wild money rain.", "first_frame_path": "image_1.jpg", "video_path": "video_1.mp4" }
Imagem para vídeo (baseado no primeiro e último quadro)
O conjunto de treinamento inclui imagens de primeiro quadro, imagens de último quadro, vídeos de treinamento e um arquivo de anotação (data.jsonl).
Conjunto de treinamento de exemplo: wan-kf2v-training-dataset.zip.
-
Estrutura de diretórios ZIP:
wan-kf2v-training-dataset.zip ├── data.jsonl # Must be named data.jsonl. Max size: 20 MB. ├── image/ # First-frame and last-frame images. │ ├── image_1_first.jpg # Max resolution: 4096×4096. Formats: BMP, JPEG, PNG, WEBP. │ └── image_1_last.png └── video/ # Training videos. ├── video_1.mp4 # Max resolution: 4096×4096. Formats: MP4, MOV. └── video_2.mov -
Arquivo de anotação (data.jsonl): Cada linha representa uma amostra de treinamento. Deve ser um objeto JSON. Estrutura:
{ "prompt": "The video begins by showing a young woman in an outdoor setting. She has short, curly dark brown hair, a smile on her face, and looks very friendly. She is wearing a black polo shirt with colorful floral embroidery, with a background of green vegetation and distant mountains. Then she begins the s86b5p transformation.", "first_frame_path": "image/image_1_first.jpg", "last_frame_path": "image/image_1_last.jpg", "video_path": "video/video_1.mp4" }
Conjunto de validação: Opcional
Imagem para vídeo (baseado no primeiro quadro)
O conjunto de validação inclui imagens de primeiro quadro e um arquivo de anotação (data.jsonl). Vídeos não são necessários. Em cada ponto de avaliação, o trabalho de treinamento chama automaticamente o service de modelo para gerar vídeos de pré-visualização usando as imagens e prompts de validação.
Conjunto de validação de exemplo: wan-i2v-valid-dataset.zip.
-
Estrutura de diretórios ZIP:
wan-i2v-valid-dataset.zip ├── data.jsonl # Must be named data.jsonl. Max size: 20 MB. ├── image_1.jpeg # Max resolution: 4096×4096. Formats: BMP, JPEG, PNG, WEBP. └── image_2.jpeg -
Arquivo de anotação (data.jsonl): Cada linha representa uma amostra de validação. Deve ser um objeto JSON. Estrutura:
{ "prompt": "The video begins showing a scene of a young man standing in front of a cityscape. He is wearing a black and white checkered jacket over a black hoodie, with a smile on his face and a confident expression. The background is a city skyline at sunset, with a famous domed building and layered roofs visible in the distance, the sky filled with clouds showing warm orange-yellow hues. Then the s86b5p money rain effect begins, countless huge-sized US dollar bills (beige background/dark green patterns) pour down like a torrential rain, densely hitting and surrounding him. The bills continue to fall while the camera slowly zooms in, he stretches his arms upward, neck slightly tilted back, expression surprised, completely immersed in this wild money rain.", "first_frame_path": "image_1.jpg" }
Imagem para vídeo (baseado no primeiro e último quadro)
O conjunto de validação inclui imagens de primeiro quadro, imagens de último quadro e um arquivo de anotação (data.jsonl). Vídeos não são necessários. Em cada ponto de avaliação, o trabalho de treinamento chama automaticamente o service de modelo para gerar vídeos de pré-visualização usando as imagens e prompts de validação.
Conjunto de validação de exemplo: wan-kf2v-valid-dataset.zip.
-
Estrutura de diretórios ZIP:
wan-kf2v-valid-dataset.zip ├── data.jsonl # Must be named data.jsonl. Max size: 20 MB. └── image/ # First-frame and last-frame images. ├── image_1_first.jpg # Max resolution: 4096×4096. Formats: BMP, JPEG, PNG, WEBP. └── image_1_last.jpg -
Arquivo de anotação (data.jsonl): Cada linha representa uma amostra de validação. Deve ser um objeto JSON. Estrutura:
{ "prompt": "The video begins showing a scene of a young man standing in front of a cityscape. He is wearing a black and white checkered jacket over a black hoodie, with a smile on his face and a confident expression. The background is a city skyline at sunset, with a famous domed building and layered roofs visible in the distance, the sky filled with clouds showing warm orange-yellow hues. Then the s86b5p money rain effect begins, countless huge-sized US dollar bills (beige background/dark green patterns) pour down like a torrential rain, densely hitting and surrounding him. The bills continue to fall while the camera slowly zooms in, he stretches his arms upward, neck slightly tilted back, expression surprised, completely immersed in this wild money rain.", "first_frame_path": "image/image_1_first.jpg", "last_frame_path": "image/image_1_last.jpg", }
Escala de dados e limites
Volume de dados: Forneça pelo menos 10 amostras. Mais dados de treinamento resultam em melhores resultados. Recomendamos de 20 a 100 amostras para um desempenho estável.
Arquivo ZIP: Ao carregar via API, o tamanho total deve ser ≤ 1 GB.
-
Requisitos para imagens de treinamento:
Formatos: BMP, JPEG, PNG, WEBP.
Resolução ≤ 4096×4096.
Sem limite rígido para tamanho individual de arquivo (o sistema pré-processa automaticamente).
-
Requisitos para vídeos de treinamento:
Formatos: MP4, MOV.
Resolução ≤ 4096×4096.
Sem limite rígido para tamanho individual de arquivo (o sistema pré-processa automaticamente).
Duração por vídeo: recomendado de 2 a 5 segundos para modelos wan2,2; recomendado de 2 a 10 segundos para modelos wan2,5 ; recomendado de 2 a 10 segundos para modelos wan2,6 e wan2,7.
Coleta e limpeza de dados
1. Defina o cenário de ajuste fino
O Wanxiang suporta ajuste fino para imagem para vídeo nestes cenários:
Efeitos de vídeo fixos: Ensinar ao modelo uma mudança visual específica, como um carrossel ou troca mágica de figurino.
Ações de personagem fixas: Melhorar a capacidade do modelo de reproduzir movimentos corporais específicos, como passos de dança ou técnicas de artes marciais.
Movimento de câmera fixo: Replicar cinematografia complexa, como movimentos de push, pull, pan, tilt ou órbita.
2. Coletar ativos brutos
Geração e filtragem por IA: Utilize o modelo base Wanxiang para gerar vídeos em lote. Selecione manualmente amostras de alta qualidade que melhor correspondam ao seu efeito alvo. Este é o método mais comum.
Filmagem real: Se você precisar de alto realismo para cenas interativas (por exemplo, abraços, apertos de mão), utilize filmagens reais.
Renderização em software 3D: Para efeitos ou animações abstratas que exigem controle preciso, utilize software 3D (por exemplo, Blender, Cinema 4D).
3. Limpar os dados
|
Dimensão |
Requisitos Positivos |
Exemplo Negativo |
|
Consistência |
As características principais devem ser altamente uniformes. Exemplo: Para treinar "rotação de 360 graus", todos os vídeos devem girar no sentido horário aproximadamente na mesma velocidade. |
Direções mistas. O conjunto de dados contém rotações horárias e anti-horárias. O modelo não sabe qual direção aprender. |
|
Diversidade |
Mais variedade em sujeitos e cenas é melhor. Cubra diferentes sujeitos (homens, mulheres, crianças, animais, edifícios) e composições (close-ups, planos abertos, ângulos altos, ângulos baixos). Varie também a resolução e a proporção da tela. |
Cena ou sujeito único. Todos os vídeos mostram "uma pessoa de roupa vermelha girando diante de uma parede branca". O modelo pode tratar erroneamente "roupa vermelha" e "parede branca" como parte do efeito. Ele falha quando a roupa muda. |
|
Equilíbrio |
Os tipos de dados devem ser equilibrados. Se existirem múltiplos estilos, suas quantidades devem ser aproximadamente iguais. |
Desequilíbrio severo. 90% são vídeos retrato, 10% são vídeos paisagem. O modelo pode ter baixo desempenho em vídeos paisagem. |
|
Pureza |
Visuais limpos e claros. Utilize ativos originais sem interferências. |
Elementos interferentes. Vídeos contêm legendas, logotipos, marcas d'água, barras pretas óbvias ou ruído. O modelo pode aprender a marca d'água como parte do efeito. |
|
Duração |
Duração do ativo ≤ duração alvo. Se você deseja vídeos de 5 segundos, corte os ativos para 4-5 segundos. |
Ativos muito longos. Você quer vídeos de 5 segundos, mas fornece ativos de 8 segundos ao modelo. Isso leva a um aprendizado incompleto da ação e a uma sensação truncada. |
Anotação de vídeo: Escrever prompts para vídeos
No arquivo de anotação do conjunto de dados (data.jsonl), cada vídeo possui um prompt correspondente. O prompt descreve o conteúdo do vídeo. A qualidade do prompt determina diretamente o que o modelo aprende.
Exemplo de prompt The video begins with a young woman standing in front of a brick wall covered with ivy. She has long, smooth reddish-brown hair, wearing a white sleeveless dress, a shiny silver necklace, and a smile on her face. The background is a brick wall covered with green vines, appearing rustic and natural. Then the s86b5p money rain effect begins, countless huge-sized US dollar bills (beige background/dark green patterns) pour down like a torrential rain, densely hitting and surrounding her. The bills continue to fall, she stretches her arms upward, neck slightly tilted back, expression surprised, completely immersed in this wild money rain. |
Fórmula de escrita de prompt
Prompt = [Descrição do sujeito] + [Descrição do fundo] + [Palavra-gatilho] + [Descrição do movimento]
|
Elemento do prompt |
Descrição |
Orientação |
Exemplo |
|
Descrição do sujeito |
Descreva pessoas ou objetos presentes no quadro |
Obrigatório |
The video begins with a young woman... |
|
Descrição do fundo |
Descreva o ambiente onde o sujeito está localizado |
Obrigatório |
The background is a brick wall covered with green vines... |
|
Palavra-gatilho |
Uma palavra rara e sem significado |
Recomendado |
s86b5p ou m01aa |
|
Descrição do movimento |
Descreva detalhadamente as mudanças dinâmicas durante o efeito |
Recomendado |
Countless huge-sized US dollar bills (beige background/dark green patterns) pour down like a torrential rain... |
Como escrever bons prompts
Seguir regras de consistência para descrições de efeitos
Para todas as amostras que contenham o mesmo efeito, mantenha a parte da descrição do movimento o mais consistente possível. Aplique esta regra tanto aos conjuntos de treinamento quanto aos de validação.
Propósito: Quando o modelo vê
s86b5pseguido pela mesma descrição fixa e sempre vê chuva de dinheiro, ele aprende que s86b5p = efeito visual de chuva de dinheiro.-
Exemplo: Seja o sujeito uma "jovem mulher" ou um "homem de terno", o prompt termina da mesma maneira para o efeito de chuva de dinheiro: “...then the s86b5p money rain effect begins, countless US dollar bills pour down like a torrential rain...”
Tipo de amostra
Conteúdo do prompt (Observe a consistência nas partes sublinhadas)
Amostra de treinamento 1
The video begins with a young woman standing in front of a brick wall... (descrição do ambiente omitida)... Then the s86b5p money rain effect begins, countless huge-sized US dollar bills (beige background/dark green patterns) pour down like a torrential rain, densely hitting and surrounding her. The bills continue to fall, she stretches her arms upward, neck slightly tilted back, expression surprised, completely immersed in this wild money rain.
Amostra de treinamento 2
The video begins with a man in a suit in a high-end restaurant... (descrição do ambiente omitida)... Then the s86b5p money rain effect begins, countless huge-sized US dollar bills (beige background/dark green patterns) pour down like a torrential rain, densely hitting and surrounding him. The bills continue to fall, he stretches his arms upward, neck slightly tilted back, expression surprised, completely immersed in this wild money rain.
Amostra de validação 1
The video begins with a young child standing in front of a cityscape... (descrição do ambiente omitida)... Then the s86b5p money rain effect begins, countless huge-sized US dollar bills (beige background/dark green patterns) pour down like a torrential rain, densely hitting and surrounding him. The bills continue to fall while the camera slowly zooms in, he stretches his arms upward, neck slightly tilted back, expression surprised, completely immersed in this wild money rain.
Utilizar IA para gerar prompts
Para obter prompts de alta qualidade, utilize modelos de linguagem grandes multimodais como Qwen-VL para auxiliar.
-
Utilizar IA para gerar descrições iniciais
-
Brainstorming de forma livre (encontrar inspiração): Se você não tem certeza de como descrever o efeito, deixe a IA explorar livremente.
Envie “
Describe the video content in detail” e observe a saída do modelo.Concentre-se nos termos que o modelo usa para trajetória de movimento (por exemplo, “pour down like a torrential rain”, “camera slowly zooms in”). Estes termos podem ser usados para otimização posterior.
-
Prompting de formato fixo (padronizar saída): Assim que tiver uma ideia geral, crie um formato fixo para guiar a IA a gerar prompts que correspondam ao seu modelo.
-
-
Extrair modelos de efeitos
Execute o processo várias vezes em amostras com o mesmo efeito. Identifique frases precisas e de alta frequência usadas para descrever o efeito. Extraia uma "descrição de efeito" genérica.
Copie e cole esta descrição de efeito padronizada em todas as amostras para esse efeito.
Mantenha descrições únicas de "sujeito" e "fundo" para cada amostra. Substitua apenas a parte da "descrição de efeito" pelo modelo unificado.
-
Revisão manual
A IA pode alucinar ou cometer erros de detecção. Como etapa final, realize uma verificação manual. Por exemplo, confirme se as descrições da entidade e do fundo correspondem à cena real.
Avaliar o modelo usando um conjunto de validação
Especifique um conjunto de validação
Um trabalho de ajuste fino requer um conjunto de treinamento. Um conjunto de validação é opcional. Você pode optar por deixar o sistema dividir automaticamente ou carregar manualmente. Especifique da seguinte forma:
Método 1: Nenhum conjunto de validação carregado (o sistema divide automaticamente)
Quando você cria um trabalho de ajuste fino, se não carregar um conjunto de validação separado, ou seja, se o parâmetro validation_file_ids não for enviado, o sistema divide automaticamente uma parte do conjunto de treinamento para usar como conjunto de validação com base nos seguintes dois hiperparâmetros:
split: Proporção dos dados de treinamento a serem divididos. Por exemplo, 0,9 significa 90% para treinamento e 10% para validação.max_split_val_dataset_sample: Número máximo de amostras para o conjunto de validação dividido automaticamente.
Regra de divisão do conjunto de validação: O sistema seleciona o menor valor entre dataset size × (1 - split) e max_split_val_dataset_sample.
-
Exemplo: Suponha que você carregue apenas um conjunto de treinamento com 100 amostras, split=0,9 (10% para validação) e max_split_val_dataset_sample=5.
Divisão teórica: 100 × 10% = 10 amostras.
Divisão real: min(10, 5)=5. Portanto, o sistema usa apenas 5 amostras para o conjunto de validação.
Método 2: Carregar um conjunto de validação manualmente (usando validation_file_ids)
Se preferir avaliar checkpoints usando seus próprios dados preparados em vez de depender de divisões aleatórias do sistema, carregue um conjunto de validação personalizado.
Nota: Uma vez que você escolha o carregamento manual, o sistema ignora as regras de divisão automática acima e valida apenas com os dados carregados por você.
Selecione o melhor checkpoint para implantação
Durante o treinamento, o sistema salva "snapshots" periódicos (checkpoints). Por padrão, o sistema gera o checkpoint final como o modelo ajustado. Mas checkpoints intermediários podem superar a versão final. Você pode escolher o melhor para implantação.
O sistema executa checkpoints no conjunto de validação e gera vídeos de pré-visualização em intervalos definidos pelo hiperparâmetro eval_epochs.
Avaliação: Julgue assistindo aos vídeos de pré-visualização diretamente.
Critérios de seleção: Escolha o checkpoint com a melhor qualidade visual e sem distorção de movimento.
Procedimento
Entrar em produção
Em produção, se o modelo treinado inicialmente apresentar baixo desempenho (por exemplo, visuais distorcidos, efeitos fracos, movimento impreciso), ajuste ao longo destas dimensões:
1. Verificar dados e prompts
Consistência de dados: A consistência é crítica. Verifique se há "amostras ruins" com direções opostas ou estilos muito diferentes.
Contagem de amostras: Aumente os dados de alta qualidade para mais de 20 amostras.
Prompt: Garanta que as palavras-gatilho sejam termos raros e sem significado (por exemplo, s86b5p). Evite palavras comuns (por exemplo, running) que causem interferência.
2. Ajustar hiperparâmetros: Consulte hiperparâmetros para detalhes.
-
n_epochs (épocas de treinamento)
Padrão: 400. Utilize o padrão, a menos que seja necessário. Se ajustar, siga a regra: “Total de etapas de treinamento ≥ 800”.
Fórmula de etapas totais:
steps = n_epochs × ceiling (training set size / batch_size).Fórmula mínima de n_epochs:
n_epochs = 800 / ceiling (dataset size / batch_size).-
Exemplo: Suponha um conjunto de treinamento de 5 amostras, usando o modelo Wan2.5 (batch_size=2).
Etapas por época: 5 / 2 = 2,5, arredondado para cima para 3. Total de épocas: n_epochs = 800 / 3 ≈ 267. Este é o mínimo recomendado. Você pode aumentar conforme necessário.
Você pode usar os valores padrão para learning_rate (taxa de aprendizado) e batch_size (tamanho do lote). Estes valores tipicamente não requerem modificação.
-
Treinamento do modelo: Cobrado.
Custo = Total de tokens de treinamento × Preço unitário. Consulte faturamento de treinamento de modelo.
Após o treinamento, verifique o total de tokens consumidos no campo
usageda API de consulta de status do trabalho de ajuste fino.
Implantação do modelo: Gratuita.
-
Chamadas de modelo: Cobradas.
Cobradas de acordo com o preço de chamada padrão do modelo base ajustado. Consulte preços do modelo.
-
Quando nenhum conjunto de validação é fornecido: O conjunto de treinamento carregado é o "tamanho total do conjunto de dados". O sistema divide automaticamente parte dos dados para validação.
Tamanho do conjunto de validação =
min(total dataset size × (1 − split), max_split_val_dataset_sample). Para um exemplo, consulte especificar um conjunto de validação.Tamanho do conjunto de treinamento =
total dataset size − validation set size.
-
Quando um conjunto de validação é carregado manualmente: O sistema não divide mais o conjunto de validação a partir dos dados de treinamento.
Tamanho do conjunto de treinamento = Volume de dados do conjunto de treinamento carregado.
Tamanho do conjunto de validação = Volume de dados do conjunto de validação carregado.
Utilize combinações de letras sem significado, como sksstyle, a8z2_bbb.
Evite palavras comuns em inglês (por exemplo, beautiful, fire, dance). Isso evita poluir o entendimento original do modelo sobre essas palavras.
Faturamento
Referência da API
FAQ
P: Como os volumes de dados dos conjuntos de treinamento e validação são calculados?
R: O conjunto de treinamento é obrigatório, o conjunto de validação é opcional. Os métodos de cálculo são os seguintes:
P: Como projetar uma boa palavra-gatilho?
R: Siga estas regras:
P: O ajuste fino pode alterar a resolução ou duração do vídeo?
R: Não. O ajuste fino aprende "conteúdo" e "dinâmica", não "especificações". O formato do vídeo de saída (resolução, taxa de quadros, duração máxima) ainda é determinado pelo modelo base.


