生成模板

用于图像和视频生成的单场预设。通过传递模板滑块,应用产品、剪辑、病毒式传播、电影感、动态或转换配方。

模板是预先策划的“创意效果”配方,用于/v1/images/generations/v1/videos/generations。每个模板都附带推荐模型、支持模型列表、默认参数和必需输入规则。在请求文中传递template: "<slug>",EmpirioLabs会将该效果应用到你提供的其他内容上,选择最适合你的模型,并将呼叫转发给工人。

同一个模板目录也驱动着游乐场中的“模板”按钮。

列表模板

GET
/v1/templates
1curl https://api.empiriolabs.ai/v1/templates \
2 -H "Authorization: Bearer <token>" \
3 -H "Content-Type: application/json"

使用通用端点来获取完整的图像和视频目录,或者在已知生成类型后使用特定模态端点。

$curl https://api.empiriolabs.ai/v1/templates?modality=image \
> -H "Authorization: Bearer $EMPIRIOLABS_API_KEY"

列表视频模板

GET
/v1/videos/templates
1curl https://api.empiriolabs.ai/v1/videos/templates \
2 -H "Authorization: Bearer <token>" \
3 -H "Content-Type: application/json"

滤波器

  • categoryviralcinematicmotiontransformsocialextendproducteditportrait
  • modalityvideoimage
  • model:只返回支持特定模型的模板
  • featuredtrue仅筛选到精选模板
$curl https://api.empiriolabs.ai/v1/videos/templates?category=viral \
> -H "Authorization: Bearer $EMPIRIOLABS_API_KEY"

响应形态

1{
2 "object": "list",
3 "template_count": 11,
4 "data": [
5 {
6 "slug": "baseball-stadium",
7 "display_name": "Stadium",
8 "category": "viral",
9 "description": "Customer-facing description shown in the playground card.",
10 "recommended_model": "kling-o3",
11 "supported_models": ["kling-o3"],
12 "default_params": { "aspect_ratio": "16:9", "duration": 10 },
13 "required_inputs": { "image": true, "min_images": 1, "max_images": 1 },
14 "cover_image_url": "https://media.empiriolabs.ai/assets/template-posters/baseball-stadium.jpg",
15 "preview_video_url": "https://media.empiriolabs.ai/assets/template-previews/baseball-stadium.mp4",
16 "modality": "video",
17 "is_featured": true,
18 "display_order": 10
19 }
20 ]
21}

列表图片模板

GET
/v1/images/templates
1curl https://api.empiriolabs.ai/v1/images/templates \
2 -H "Authorization: Bearer <token>" \
3 -H "Content-Type: application/json"
$curl https://api.empiriolabs.ai/v1/images/templates?model=seedream-5-0-lite \
> -H "Authorization: Bearer $EMPIRIOLABS_API_KEY"

取一个模板

GET
/v1/templates/:slug
1curl https://api.empiriolabs.ai/v1/templates/studio-product-shot \
2 -H "Authorization: Bearer <token>" \
3 -H "Content-Type: application/json"
$curl https://api.empiriolabs.ai/v1/templates/studio-product-shot \
> -H "Authorization: Bearer $EMPIRIOLABS_API_KEY"

如果没有实录,则带code: "template_not_found"返回404。

用模板生成视频

template: "<slug>"加到正常/v1/videos/generations电话里。你必须提供模板要求的任何内容(required_inputs),通常是参考图片。

$curl https://api.empiriolabs.ai/v1/videos/generations \
> -H "Authorization: Bearer $EMPIRIOLABS_API_KEY" \
> -H "Content-Type: application/json" \
> -d '{
> "template": "baseball-stadium",
> "image_url": "https://example.com/me.jpg"
> }'

行为:

  • 模型选择:如果未通过model,模板的recommended_model将被使用。如果有,大多数模板会验证它是否在supported_models,否则会返回400template_model_unsupported。带有metadata.force_recommended_model: true的模板会钉顶到recommended_model以保证效果忠实度。
  • 模态检查:图片模板仅适用于/v1/images/generations;视频模板只适用于/v1/videos/generations
  • 提示词混合:你的prompt(如果有的话)会与模板内置样式结合,使生成的输出既符合你的请求,也符合效果的美学。发送一个简短的方向提示;EmpirioLabs负责其余部分。
  • 默认参数:模板中default_params合并,只针对你未明确设置的键。
  • 必需输入\{ "image": true \}表示如果没有提供image_url / image / images,呼叫返回400 template_missing_image

用模板生成图片

$curl https://api.empiriolabs.ai/v1/images/generations \
> -H "Authorization: Bearer $EMPIRIOLABS_API_KEY" \
> -H "Content-Type: application/json" \
> -d '{
> "template": "background-swap",
> "prompt": "Place this product on a brushed steel studio plinth",
> "image": ["https://example.com/product.jpg"]
> }'

响应与正常视频生成相同的异步工作包络:

1{
2 "job_id": "abc123...",
3 "status": "processing",
4 "poll_url": "/v1/jobs/abc123..."
5}

投票直到终极GET /v1/jobs/\{job_id\}

延长之前的视频

/v1/videos/generations也接受extend_from延续前一代。EmpirioLabs会帮你处理前一剪辑的接线,并且会用一个合理的连续性提示,除非你自己提供。

$curl https://api.empiriolabs.ai/v1/videos/generations \
> -H "Authorization: Bearer $EMPIRIOLABS_API_KEY" \
> -H "Content-Type: application/json" \
> -d '{
> "extend_from": { "job_id": "<prior_job_id>" }
> }'

你也可以直接传递一个URL:

1{ "extend_from": { "video_url": "https://media.empiriolabs.ai/..." } }

Extend 可以用模板进行写作:

1{
2 "template": "action-hero",
3 "extend_from": { "job_id": "<prior>" }
4}

Extend 适用于所有视频模型

通过extend_from支持的任何视频型号。如果你省略model,EmpirioLabs会为延长选择一个合理的默认。

错误代码

HTTP代码含义
400template_not_found这个弹块和任何活跃模板都不匹配
400template_model_unsupported你通过的模型不在模板的supported_models
400template_modality_mismatch模板模态与生成端点不匹配
400template_missing_image模板需要图片,但正文里没有
400template_missing_video模板需要参考视频,但正文里没有
400template_no_model模板没有recommended_model,你也没通过
400extend_extraction_failed无法处理之前的视频以扩展。试试不同的型号。
400extend_invalid_shapeextend_from畸形
400extend_no_prior_video之前的工作没有可解析的视频URL。
404extend_prior_not_foundextend_from job_id情况不明
500extend_frame_upload_failed之前的视频没准备好延长版。重试,或者换个模型。