Skip to main content
Geração e edição de vídeo

Wan3.0 Video Generation

A série wan3.0 é um modelo All-in-One de geração de vídeo com atualizações abrangentes em geração de áudio e vídeo, referência multimodal e recursos de edição. Ela suporta até 30 segundos por geração, taxa de quadros de saída de 30 fps e gera nativamente diálogos, BGM e efeitos sonoros. Além disso, aceita até 20 materiais de referência multimodais (imagens, vídeos, áudio, documentos, páginas da web) por solicitação e oferece controle de primeiro quadro ou de primeiro e último quadro, bem como edição e extensão de vídeo.

Escopo

  • Os modelos suportados variam conforme a região, e os recursos são independentes entre elas. Para verificar os modelos disponíveis em cada região, consulte o console do Model Studio.
  • Antes de fazer chamadas, Obtain an API key e, em seguida, Configure API key as an environment variable.
  • Ao chamar a API, certifique-se de que o modelo, a URL do endpoint e a API Key pertençam à mesma região. Chamadas entre regiões falharão.
O código de exemplo aplica-se à região Singapore.

Capacidades do modelo

O wan3.0-video / wan3.0-video-prime é um modelo All-in-One que abrange todos os tipos de tarefa listados abaixo sem necessidade de trocar o nome do modelo. O roteamento ocorre automaticamente com base no campo type dentro de input.media e na intenção do prompt.

Tipo de tarefa

Método de acionamento

Observações de uso

Texto para vídeo

Envie apenas prompt, não envie media

Permite definir livremente resolução, proporção e duração

Imagem para vídeo

Primeiro quadro para vídeo

type definido como first_frame

Recomenda-se usar ratio como adaptive; o modelo ajusta automaticamente a proporção do primeiro quadro

Primeiro e último quadro para vídeo

type definido como first_frame e last_frame

Recomenda-se usar ratio como adaptive; o modelo ajusta automaticamente a proporção do primeiro quadro

Referência multimodal

Referência de imagem

type definido como reference_image

Até 10 imagens, cada uma com no máximo 20 MB

Referência de vídeo

type definido como reference_video

Até 5 clipes, duração total máxima de 15 segundos, cada um com no máximo 100 MB

Referência de áudio

type definido como reference_audio

Até 5 clipes, duração total máxima de 15 segundos, cada um com no máximo 15 MB

Referência combinada

Combinação de type definido como reference_image/reference_video/reference_audio

Aceita qualquer combinação de referências de imagem/vídeo/áudio (imagem+vídeo, imagem+áudio, vídeo+áudio, imagem+vídeo+áudio)

Referência de arquivo/página da web

type definido como file ou link (escolha um, máximo de 1 cada)

Analisa o conteúdo de documento ou página da web para gerar vídeo. Apenas páginas acessíveis publicamente são suportadas.

Edição de vídeo

type definido como reference_video + prompt com intenção de edição (ex.: "converter para", "remover", "substituir", "mudar para")

Adicionar/remover/modificar elementos, conversão de estilo, edição de iluminação e diálogo. Recomenda-se ratio como adaptive e duration como -1 (preserva automaticamente a proporção e a duração originais)

Extensão de vídeo

type definido como reference_video + prompt com intenção de extensão (ex.: "estender", "continuar", "estender para frente/trás")

Estende para frente/trás/ambas as direções. Recomenda-se ratio como adaptive (preserva automaticamente a proporção original)

Principais capacidades

Antes de fazer chamadas, Obtain an API key e, em seguida, Configure API key as an environment variable. Para chamar via SDK, instale the DashScope SDK.

Texto para vídeo

Gere vídeo usando apenas um prompt, sem nenhuma entrada de mídia. Suporta nativamente narrativas de múltiplas cenas de até 30 segundos com diálogos sincronizados, BGM e efeitos sonoros gerados automaticamente.
Prompt de entradaVídeo de saída (múltiplas cenas, com áudio)
Uma visão de tecnologia futura e natureza coexistindo em harmonia. Cena 1 [0-2s] Vista panorâmica de um jardim aéreo em uma cidade futurista, plantas flutuantes balançando ao vento. Cena 2 [2-4s] Um robô jardineiro podando plantas cuidadosamente com movimentos precisos e elegantes. Cena 3 [4-7s] A luz do sol atravessa a cúpula transparente, iluminando todo o jardim e exibindo a fusão perfeita entre tecnologia e natureza. Cena 4 [7-10s] A câmera se afasta para revelar a vista espetacular de toda a cidade futurista, com o jardim aéreo sendo apenas uma parte dela.
  • Python SDK
  • curl
Certifique-se de que a versão do DashScope Python SDK seja 1.25.16 ou posterior antes de executar o código abaixo. Se a versão for muito antiga, consulte Instale the SDK para instruções de atualização.
import os
from http import HTTPStatus
from dashscope import VideoSynthesis
import dashscope

# The following is the Singapore region URL. URLs differ by region. Get URL: https://www.alibabacloud.com/help/en/model-studio/wan3-video-generation-api-reference
dashscope.base_http_api_url = 'https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1'
# API Keys differ by region. Get API Key: https://www.alibabacloud.com/help/en/model-studio/get-api-key
api_key = os.getenv("DASHSCOPE_API_KEY", "YOUR_API_KEY")

print('please wait...')
rsp = VideoSynthesis.call(
    api_key=api_key,
    model='wan3.0-video',
    prompt='A vision of future technology and nature coexisting in harmony. Shot 1 [0-2s] Panoramic view of a futuristic city aerial garden, floating plants swaying in the breeze. Shot 2 [2-4s] A robot gardener carefully trimming plants with precise and elegant movements. Shot 3 [4-7s] Sunlight streams through the transparent dome, illuminating the entire garden, showcasing the perfect fusion of technology and nature. Shot 4 [7-10s] Camera pulls back to reveal the spectacular view of the entire futuristic city, with the aerial garden being just one part of it.',
    resolution="480P",
    ratio="adaptive",
    duration=20,
    prompt_extend=True)
print(rsp)
if rsp.status_code == HTTPStatus.OK:
    print("video_url:", rsp.output.video_url)
else:
    print('Failed, status_code: %s, code: %s, message: %s' % (rsp.status_code, rsp.code, rsp.message))

Primeiro quadro para vídeo

Especifique estritamente a imagem do primeiro quadro do vídeo usando first_frame. O modelo gera áudio automaticamente para o vídeo.
Prompt de entradaImagem do primeiro quadro de entradaVídeo de saída
Uma cena de arte de fantasia urbana. Um personagem dinâmico de grafite ganha vida em uma parede de concreto, fazendo rap e assumindo poses clássicas de hip-hop.
rap
  • Python SDK
  • curl
Certifique-se de que a versão do DashScope Python SDK seja 1.25.16 ou posterior antes de executar o código abaixo. Se a versão for muito antiga, consulte Instale the SDK para instruções de atualização.
import os
from http import HTTPStatus
from dashscope import VideoSynthesis
import dashscope

dashscope.base_http_api_url = 'https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1'
api_key = os.getenv("DASHSCOPE_API_KEY", "YOUR_API_KEY")

print('please wait...')
rsp = VideoSynthesis.call(
    api_key=api_key,
    model='wan3.0-video',
    prompt='An urban fantasy art scene. A dynamic graffiti art character comes alive from a concrete wall, rapping and striking classic hip-hop poses.',
    media=[{"type": "first_frame", "url": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20250925/wpimhv/rap.png"}],
    resolution="720P",
    ratio="adaptive",
    duration=5)
print(rsp)
if rsp.status_code == HTTPStatus.OK:
    print("video_url:", rsp.output.video_url)
else:
    print('Failed, status_code: %s, code: %s, message: %s' % (rsp.status_code, rsp.code, rsp.message))

Primeiro e último quadro para vídeo

Forneça tanto first_frame quanto last_frame para especificar estritamente as imagens do primeiro e do último quadro do vídeo.
Prompt de entradaImagem do primeiro quadro de entradaImagem do último quadro de entradaVídeo de saída
Ao amanhecer, quando o sol acaba de nascer, em um campo de abóboras, há uma pequena abóbora com gotas de orvalho. De repente, a abóbora racha com um som, uma luz dourada vaza pela fenda, a abóbora se abre com luz dourada, uma névoa branca aparece e um pequeno coelho emerge do centro da abóbora aberta.
first-frame
last-frame
  • Python SDK
  • curl
Certifique-se de que a versão do DashScope Python SDK seja 1.25.16 ou posterior antes de executar o código abaixo. Se a versão for muito antiga, consulte Instale the SDK para instruções de atualização.
import os
from http import HTTPStatus
from dashscope import VideoSynthesis
import dashscope

dashscope.base_http_api_url = 'https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1'
api_key = os.getenv("DASHSCOPE_API_KEY", "YOUR_API_KEY")

print('please wait...')
rsp = VideoSynthesis.call(
    api_key=api_key,
    model='wan3.0-video',
    prompt='At dawn as the sun just rises, in a pumpkin field, there is a small pumpkin with dewdrops on it. Suddenly the pumpkin cracks with a sound, golden light seeps through the crack, the pumpkin splits open with golden light, white mist appears, and a small rabbit emerges from the center of the split pumpkin.',
    media=[
        {"type": "first_frame", "url": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260414/welyei/wan2.7-i2v-first-frame.webp"},
        {"type": "last_frame", "url": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260414/zongha/wan2.7-i2v-last-frame.webp"}
    ],
    resolution="720P",
    ratio="adaptive",
    duration=5)
print(rsp)
if rsp.status_code == HTTPStatus.OK:
    print("video_url:", rsp.output.video_url)
else:
    print('Failed, status_code: %s, code: %s, message: %s' % (rsp.status_code, rsp.code, rsp.message))

Geração de vídeo por referência

Forneça imagens, vídeos, áudios, arquivos ou links da web de referência por meio de input.media, e o modelo compreenderá automaticamente a intenção para gerar o vídeo. No prompt, use "Image 1", "Video 1", "Audio 1", etc., para referenciar os materiais correspondentes no array de mídia.
Regras de designação de material: Imagens, vídeos e áudios são contados separadamente. O primeiro reference_image no array input.media corresponde a "Image 1" no prompt, o segundo a "Image 2"; o primeiro reference_video corresponde a "Video 1"; o primeiro reference_audio corresponde a "Audio 1", e assim por diante. Os três tipos não conflitam e podem coexistir.
Prompt de entrada: Video 1 segura Image 3, sentado na cadeira em Image 4, tocando uma canção folclórica country suave, e diz: "The sunshine is so nice today." Image 1 segura Image 2 na mão, passa por Video 1, coloca Image 2 na mesa ao lado de Video 1 e diz: "That sounds great, can you sing it again?"
Imagem de entrada (Image 1)
image
Vídeo de entrada (Video 1)Imagens de entrada (Image 2, Image 3)
image
wan-r2v-object4
Imagem de entrada (Image 4)
wan-r2v-backgroud5
Vídeo de saída
  • Python SDK
  • curl
Certifique-se de que a versão do DashScope Python SDK seja 1.25.16 ou posterior antes de executar o código abaixo. Se a versão for muito antiga, consulte Instale the SDK para instruções de atualização.
import os
from http import HTTPStatus
from dashscope import VideoSynthesis
import dashscope

dashscope.base_http_api_url = 'https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1'
api_key = os.getenv("DASHSCOPE_API_KEY", "YOUR_API_KEY")

print('please wait...')
rsp = VideoSynthesis.call(
    api_key=api_key,
    model='wan3.0-video',
    prompt='Video 1 holds Image 3, sitting on the chair in Image 4, playing a soothing country folk song, and says: "The sunshine is so nice today." Image 1 holds Image 2 in hand, walks past Video 1, places Image 2 on the table next to Video 1, and says: "That sounds great, can you sing it again?"',
    media=[
        {"type": "reference_image", "url": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260408/sjuytr/wan-r2v-object-girl.jpg"},
        {"type": "reference_video", "url": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260129/qigswt/wan-r2v-role2.mp4"},
        {"type": "reference_image", "url": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260129/rtjeqf/wan-r2v-object3.png"},
        {"type": "reference_image", "url": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260129/qpzxps/wan-r2v-object4.png"},
        {"type": "reference_image", "url": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260129/wfjikw/wan-r2v-backgroud5.png"}
    ],
    resolution="720P",
    ratio="adaptive",
    duration=5)
print(rsp)
if rsp.status_code == HTTPStatus.OK:
    print("video_url:", rsp.output.video_url)
else:
    print('Failed, status_code: %s, code: %s, message: %s' % (rsp.status_code, rsp.code, rsp.message))

Edição de vídeo

Forneça um vídeo de referência e use instruções em linguagem natural para editar o vídeo com precisão. As partes não especificadas para modificação permanecem inalteradas.
  • Python SDK
  • curl
Certifique-se de que a versão do DashScope Python SDK seja 1.25.16 ou posterior antes de executar o código abaixo. Se a versão for muito antiga, consulte Instale the SDK para instruções de atualização.
import os
from http import HTTPStatus
from dashscope import VideoSynthesis
import dashscope

dashscope.base_http_api_url = 'https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1'
api_key = os.getenv("DASHSCOPE_API_KEY", "YOUR_API_KEY")

print('please wait...')
rsp = VideoSynthesis.call(
    api_key=api_key,
    model='wan3.0-video',
    prompt='Convert the entire scene to clay style',
    media=[
        {"type": "reference_video", "url": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260402/ldnfdf/wan2.7-videoedit-style-change.mp4"}
    ],
    resolution="720P",
    prompt_extend=True)
print(rsp)
if rsp.status_code == HTTPStatus.OK:
    print("video_url:", rsp.output.video_url)
else:
    print('Failed, status_code: %s, code: %s, message: %s' % (rsp.status_code, rsp.code, rsp.message))

Extensão de vídeo

Estenda a duração de um vídeo existente para frente, para trás ou em ambas as direções. O estilo visual e os personagens permanecem consistentes, e o prompt descreve as mudanças dinâmicas para a parte estendida.
  • Python SDK
  • curl
Certifique-se de que a versão do DashScope Python SDK seja 1.25.16 ou posterior antes de executar o código abaixo. Se a versão for muito antiga, consulte Instale the SDK para instruções de atualização.
import os
from http import HTTPStatus
from dashscope import VideoSynthesis
import dashscope

dashscope.base_http_api_url = 'https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1'
api_key = os.getenv("DASHSCOPE_API_KEY", "YOUR_API_KEY")

print('please wait...')
rsp = VideoSynthesis.call(
    api_key=api_key,
    model='wan3.0-video',
    prompt='Extend Video 1 backward, the baker brings up the brushed bread, puts the brush aside, camera follows the baker to the oven behind for baking',
    media=[
        {"type": "reference_video", "url": "https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/zh-CN/20260414/rptnhd/wan2.7-i2v-video-continuation-2.mp4"}
    ],
    resolution="720P",
    ratio="adaptive")
print(rsp)
if rsp.status_code == HTTPStatus.OK:
    print("video_url:", rsp.output.video_url)
else:
    print('Failed, status_code: %s, code: %s, message: %s' % (rsp.status_code, rsp.code, rsp.message))

Mídia de entrada

Cada elemento no array input.media contém os campos type e url. Os tipos suportados e suas restrições são:

type

Descrição

Restrições

first_frame

Imagem do primeiro quadro, usada estritamente como o primeiro quadro do vídeo

Máximo de 1

last_frame

Imagem do último quadro, usada estritamente como o último quadro do vídeo

Máximo de 1

reference_image

Imagem de referência

Máximo de 10

reference_video

Vídeo de referência

Máximo de 5, duração total não superior a 15 segundos

reference_audio

Áudio de referência (suportado apenas no modo de geração de vídeo por referência)

Máximo de 5, duração total não superior a 15 segundos

file

Arquivo (docx, ppt, pdf, txt, etc.)

Máximo de 1, não pode ser usado simultaneamente com link

link

Link da web (páginas públicas)

Máximo de 1, não pode ser usado simultaneamente com file

Os tipos reference_xx/file/link e os tipos first_frame/last_frame são mutuamente exclusivos e não podem ser usados na mesma solicitação.

Vídeo de saída

  • Formato: MP4, taxa de quadros de 30 fps.
  • A URL do vídeo é válida por 24 horas. Salve o vídeo prontamente.
  • As dimensões do vídeo são determinadas conjuntamente por resolution e ratio. Ao usar adaptive, o modelo recomenda automaticamente uma proporção com base na entrada.

Faturamento e limites de taxa

  • Para detalhes de faturamento, consulte Billing.
  • Para detalhes sobre limites de taxa, consulte Rate limits.

Referência da API

Wan3.0 Video Generation API Reference

FAQ

P: Quais são as diferenças entre os modelos da série wan3.0-video e wan2.7?

R: O wan3.0-video é um modelo All-in-One com as seguintes diferenças principais:
  • Nome de modelo unificado: o wan3.0-video substitui o wan2.7-t2v, wan2.7-i2v e outros modelos separados.
  • Até 30 segundos: o wan2.7 suporta até 10 segundos, enquanto o wan3.0 suporta até 30 segundos.
  • Novo modo de geração de vídeo por referência: suporta imagens, vídeos, áudios, arquivos e links da web como referência.
  • Proporção adaptativa: novo parâmetro ratio com suporte ao modo adaptive.
  • Duração inteligente: quando duration=-1, o modelo recomenda automaticamente uma duração apropriada.
  • Edição e extensão de vídeo: o wan3.0 suporta nativamente recursos de edição e extensão de vídeo.

P: O que significam "Image 1" e "Video 1" na geração de vídeo por referência?

R: Use "Image 1", "Video 1", "Audio 1" no prompt para referenciar materiais no array media pelo tipo correspondente. Imagens, vídeos e áudios são contados separadamente: o primeiro reference_image no array corresponde a "Image 1", o primeiro reference_video corresponde a "Video 1", e assim por diante.
Plano de Tokens
Playground de Modelos
Inferência do Modelo
Avaliação
Compressão de Modelos
Estatísticas e Monitoramento
Suporte