多模态参考
Seedance 2.0 支持强大的 @ 标签引用系统,让你在提示词中为上传的图像、视频和音频文件分配特定角色。这为你提供了对生成视频的精细创作控制。
@Tag 语法
在提示词中使用 @ 标签引用上传的文件,标签对应每个 URL 在其数组中的位置:
| 标签格式 | 映射到 | 示例 |
|---|---|---|
@Image1 – @Image9 | image_urls[0] – image_urls[8] | @Image1 as first frame |
@Video1 – @Video3 | video_urls[0] – video_urls[2] | replicate @Video1 camera movement |
@Audio1 – @Audio3 | audio_urls[0] – audio_urls[2] | @Audio1 for BGM rhythm |
标签从 1 开始索引 — @Image1 指向 image_urls 中的第一个 URL,@Image2 指向第二个,以此类推。
文件限制
| 类型 | 最大数量 | 支持格式 | 最大大小 | 时长 |
|---|---|---|---|---|
| 图像 | 9 | .jpeg, .png, .webp, .bmp, .tiff, .gif | 每个 30MB | — |
| 视频 | 3 | .mp4, .mov | 每个 50MB | 总计 2–15 秒 |
| 音频 | 3 | .mp3, .wav | 每个 15MB | 总计 ≤ 15 秒 |
总数限制: 每次请求所有模态合计最多 12 个文件。
人脸限制: 包含真实人脸的图像上传会被自动拒绝。
图像 @Tag 角色
使用图像引用来控制生成视频的视觉元素:
| 角色 | 提示词模式 | 说明 |
|---|---|---|
| 首帧 | @Image1 as first frame | 将图像用作视频的开场帧 |
| 尾帧 | @Image2 as last frame | 将图像用作视频的结束帧 |
| 角色参考 | @Image1 as character | 在整个视频中保持角色外观一致 |
| 风格参考 | @Image1 as style reference | 应用视觉风格(色彩、氛围、美学) |
| 场景参考 | @Image1 as scene | 用作背景或环境参考 |
| 物体参考 | @Image1 as object | 引用要出现在视频中的特定物体 |
| 构图参考 | @Image1 as composition reference | 遵循图像的布局和取景方式 |
视频 @Tag 角色
使用视频引用来迁移运动、节奏和镜头运动:
| 角色 | 提示词模式 | 说明 |
|---|---|---|
| 镜头运动 | replicate @Video1 camera movement | 复制镜头轨迹(平移、倾斜、缩放、推拉) |
| 动作编排 | replicate @Video1 choreography | 匹配人体/物体运动模式 |
| 特效 | replicate @Video1 effects | 迁移视觉特效和转场 |
| 节奏 | match @Video1 rhythm | 同步剪辑节奏和运动节拍 |
| 完整复制 | replicate @Video1 | 复现整体运动、镜头和节奏 |
| 音频提取 | use @Video1 audio | 从参考视频中提取并使用音轨 |
音频 @Tag 角色
使用音频引用来驱动视频的节奏和配乐:
| 角色 | 提示词模式 | 说明 |
|---|---|---|
| 背景音乐 | @Audio1 for BGM rhythm | 将运动能量和剪辑与音乐节拍同步 |
| 音效 | @Audio1 as sound effects | 将视觉事件与音频提示对齐 |
| 节拍同步 | sync to @Audio1 beat | 将运动高峰与音乐节拍匹配 |
API 示例
一个结合图像、视频和音频引用的完整多模态请求:
import requests
response = requests.post(
"https://api.evolink.ai/v1/videos/generations",
headers={
"Authorization": "Bearer YOUR_API_KEY",
"Content-Type": "application/json"
},
json={
"model": "seedance-2.0",
"prompt": (
"@Image1 as first frame, @Image2 as character reference. "
"Replicate @Video1 camera movement. "
"Sync to @Audio1 beat. "
"A cinematic tracking shot through a neon-lit alley at night."
),
"image_urls": [
"https://example.com/scene-start.jpg",
"https://example.com/character-ref.jpg"
],
"video_urls": [
"https://example.com/camera-reference.mp4"
],
"audio_urls": [
"https://example.com/soundtrack.mp3"
],
"duration": 10,
"quality": "1080p",
"aspect_ratio": "16:9"
}
)
print(response.json())
常见模式
角色一致性
通过提供清晰的角色参考图像,在不同场景中保持同一角色的外观:
@Image1 as character reference. The woman walks through a busy market, picking up an apple, examining it closely.
镜头复制
将参考视频的精确镜头轨迹复制到全新的场景中:
@Image1 as first frame. Replicate @Video1 camera movement. A sweeping drone shot over snow-covered mountains.
音乐视频
将生成的画面与音轨的节拍和节奏同步:
@Image1 as style reference. Sync to @Audio1 beat. Fast cuts of urban street scenes, neon lights, dancing figures.
规则与限制
- 标签必须与数组位置匹配 —
@Image1始终对应image_urls[0] - 不能引用超过 URL 数组中提供的文件数量
- 所有模态合计最多 12 个文件
- 包含真实人脸的图像会被自动拒绝
- 视频引用会增加生成成本
- 所有 URL 必须可被服务器直接访问(无需认证,不能重定向到登录页面)
- 提示词长度限制:包含
@标签文本在内最多 2000 个 token
相关文档
- 视频生成 API — 包含所有参数的完整端点参考
- Seedance 2.0 多模态标签指南 — 包含创意示例的深度教程
- 镜头运动 API 教程 — 从参考视频复制镜头运动
- SDK 与示例 — Python、Node.js、Go 和 cURL 集成代码