电商博主如何用 AI 视频 API 批量生成产品展示视频
·
每上一个新品就要配一条展示视频,手动用各家 AI 视频网页端一条条生成效率太低。这篇分享一个用 API 批量出片的方案——从商品文案自动生成视频,适合做跨境电商或带货短视频的朋友参考。
一、思路
电商博主的痛点很直接:每周上新十几个 SKU,每个要一条 15 秒展示视频发 TikTok Shop 或独立站。手动操作单条就要 15 分钟。
自动化的思路分两步:
- LLM 把中文商品描述转成英文视频 prompt(视频模型对英文效果更好)
- 视频模型根据 prompt 生成视频
我用的 ai.tikhub.io,它同时提供 Chat 端点和视频端点(Kling/Veo),两步 API 调用走同一个入口,代码写起来比较简洁。
二、代码实现
Step 1:商品描述 → 视频 prompt
import os, requests
BASE_URL = os.getenv("AI_BASE_URL", "https://ai.tikhub.io")
API_KEY = os.getenv("AI_API_KEY")
HEADERS = {"Content-Type": "application/json", "Authorization": f"Bearer {API_KEY}"}
def product_to_video_prompt(product_desc: str) -> str:
"""用 LLM 把商品文案转成视频生成 prompt"""
resp = requests.post(
f"{BASE_URL}/v1/chat/completions",
headers=HEADERS,
json={
"model": "gpt-4o",
"messages": [
{"role": "system", "content":
"你是电商视频创意专家。根据商品描述,生成一条 15 秒产品展示视频的英文 prompt。"
"包含:场景背景、产品出场方式、镜头运动、光线色调。风格干净高级。只输出英文。"},
{"role": "user", "content": product_desc}
],
"max_tokens": 300
}, timeout=30
)
return resp.json()["choices"][0]["message"]["content"]
Step 2:提交视频生成 + 等待下载
import time
def generate_video(prompt: str, model: str = "kling-v3", save_path: str = "out.mp4"):
"""提交视频任务 → 轮询 → 下载"""
# 提交
resp = requests.post(
f"{BASE_URL}/v1/videos", headers=HEADERS,
json={"model": model, "prompt": prompt}, timeout=30
)
task_id = resp.json().get("id") or resp.json().get("task_id")
# 轮询等完成
for _ in range(40): # 最多等 10 分钟
data = requests.get(f"{BASE_URL}/v1/videos/{task_id}", headers=HEADERS).json()
if data.get("status") == "completed":
video_url = data.get("video_url") or data.get("url")
with open(save_path, "wb") as f:
for chunk in requests.get(video_url, stream=True).iter_content(8192):
f.write(chunk)
return save_path
if data.get("status") == "failed":
raise RuntimeError(f"失败: {data.get('error')}")
time.sleep(15)
raise TimeoutError("生成超时")
串起来:批量处理
import csv, os
from concurrent.futures import ThreadPoolExecutor, as_completed
def process_product(sku, description, output_dir, model="kling-v3"):
print(f"[{sku}] 生成 prompt → 提交 {model}...")
prompt = product_to_video_prompt(description)
path = generate_video(prompt, model=model, save_path=f"{output_dir}/{sku}.mp4")
print(f"[{sku}] 完成 → {path}")
return {"sku": sku, "prompt": prompt, "path": path}
# 读取商品 CSV,并发生成
os.makedirs("output", exist_ok=True)
with open("products.csv", encoding="utf-8") as f:
products = list(csv.DictReader(f))
with ThreadPoolExecutor(max_workers=3) as pool:
futures = {pool.submit(process_product, p["sku"], p["description"], "output"): p for p in products}
for f in as_completed(futures):
try: f.result()
except Exception as e: print(f"失败: {e}")
三、运行效果
准备 products.csv:
sku,description
SKU001,极简北欧风落地灯,黑色金属灯杆,暖光LED
SKU002,便携手冲咖啡套装,含滤杯手冲壶温度计
SKU003,无线降噪耳机,头戴式,40小时续航,银色
export AI_BASE_URL="https://ai.tikhub.io" && export AI_API_KEY="你的Key"
python run.py
[SKU001] 生成 prompt → 提交 kling-v3...
[SKU002] 生成 prompt → 提交 kling-v3...
[SKU001] 完成 → output/SKU001.mp4
[SKU003] 完成 → output/SKU003.mp4
[SKU002] 完成 → output/SKU002.mp4
3 个商品,从文案到视频全自动,总共 5 分钟左右。
四、Kling vs Veo 怎么选
Kling v3: 速度快(2–3 分钟/条),产品特写和转场效果不错,适合日常批量出片。
Veo 3.1: 金属、玻璃、织物的材质感更真实,光影更有电影感,但慢(5 分钟+)。适合主推款。
我们的做法:常规 SKU 用 Kling 快速出量,主推款换成 veo-3.1-generate-001 精出——改一个参数的事。
五、几个小 tips
prompt 一定要用英文且写详细。 中文直接当 prompt 效果差很多,所以才加了 LLM 转写这步。而且不能只说"拍一个灯",要明确场景、镜头、光线。
并发控制在 3–4。 视频生成比 Chat 吃资源得多,太多会排队很久。
参考资源:
- TikHub AI API:ai.tikhub.io
- OpenAI API:platform.openai.com/docs
更多推荐




所有评论(0)