影片生成 (Video Gen)
每次呼叫提交一個影片生成任務並傳回 jobId。任務管理(等待/狀態)屬於 track_progress 的範疇;此技能不會自動將影片放置到時間軸上。
使用時機
每當使用者想要生成一個影片片段時 — 文字轉影片、圖片轉影片、首尾幀轉場、基於參考的生成、多鏡頭腳本,或對現有影片進行生成式編輯/延伸(根據來源片段生成新的素材;並非時間軸修剪)。
模型
| 模型 | 參考文件 | 優勢 |
|---|---|---|
fal + falModel | references/fal.md | 明確的 Fal 目錄;請參閱工具架構了解每個模型的限制 |
seedance2 | references/seedance2.md | 配置時的預設模型。多模態參考、首/尾幀、編輯/延伸/橋接、2–15 秒、480p/720p/1080p/4k、音訊/種子/相機/浮水印/尾幀/任務控制。 |
kling | references/kling.md | 技術性相機/效能;Omni 多鏡頭;圖片 ≤7(使用一個功能 refVideos 時 ≤4);std/pro;3–15 秒。 |
hailuo | references/hailuo.md | MiniMax 海螺。T2V / I2V / 首+尾幀;6 秒或 10 秒;512P (Hailuo-02)、720p→768P、1080P (6 秒);不支援多參考/多鏡頭。 |
grok-imagine-video | references/grok-imagine-video.md | xAI Grok Imagine。僅文字轉影片;1–15 秒;480p/720p/1080p;包含音訊軌道。 |
ofox | references/ofox.md | OFox 多模型閘道(Seedance/Wan 等共用一個金鑰)。文字/圖片轉影片、首+尾幀、最多 9 張圖片參考;2–30 秒(依模型 API 限制);480p/720p/1080p(依模型而定)。 |
重要: 生成之前,請閱讀所選模型的參考文件,了解其能力、輸入通道、模式、提示結構以及模型特有的行為。切勿發明該參考文件禁止的參數。
模型選擇
尊重從能力提示中配置的供應商(僅呼叫其金鑰已開啟的模型)。
- 使用者指定了供應商("用海螺"、"MiniMax"、"Kling"、"Seedance")→ 使用該
model(如果已配置)。 - 如果選擇或要求使用 Fal.ai,則使用
model: "fal"和要求的falModel或儲存的 Fal 預設值(來自能力)。如果未選擇 Fal 模型,則詢問。請閱讀工具架構中的 Fal 目錄限制;下方的原生供應商限制不適用。 - 否則,當 Seedance 已配置時,預設使用
seedance2。 - 否則,如果只配置了 Kling →
kling。如果只配置了 MiniMax →hailuo。如果只配置了 xAI →grok-imagine-video。如果只配置了 OFox →ofox。 - 在以下情況跳過預設值:
- 需要多鏡頭自訂/智慧 →
kling(如果非使用者指定,需確認)。 - 需要豐富的多模態參考(影片/音訊參考、編輯/延伸)→
seedance2。 - 需要短暫單一拍且只有 MiniMax 可用,或使用者想要 Hailuo →
hailuo,時長為 6 或 10 秒。
- 需要多鏡頭自訂/智慧 →
如果所需的模型未配置,請告知使用者,並提供替代方案:另一個已配置的影片供應商、上傳或動態圖形 — 不要假裝該 API 存在。
在提交之前,簡短告知使用者您將生成什麼。
工具參數
| 參數 | 值 | 預設值 |
|---|---|---|
model | seedance2、kling、hailuo、grok-imagine-video、ofox、fal | seedance2(可用時) |
durationSeconds | 依模型而定 | seedance/kling ~5;hailuo 6 或 10(1080p → 僅 6);grok 1–15;ofox 2–30(依模型 API 限制) |
ratio | 請參閱模型文件 | 16:9(seedance/kling/grok/ofox);hailuo 忽略此參數 |
resolution | 480p、512p、720p、1080p、4k | 依供應商而定;hailuo 為 Hailuo-02 新增 512p;grok: 480p/720p/1080p |
refVideoMode | feature、base | 僅 kling,需搭配 refVideos |
promptOptimizer / fastPretreatment | 布林值 | 僅 hailuo |
generateAudio、seed、cameraFixed、watermark | 控制項 | 僅 seedance |
returnLastFrame、executionExpiresAfter、priority | 控制項 | 僅 seedance;請求的尾幀會變成另一個圖片資產 |
name | 描述性資產名稱 | 為獲得良好的池 UX 而必填 |
firstFrame | 專案圖片資產參考 | 可選 |
lastFrame | 專案圖片資產參考 | seedance / kling / hailuo(需搭配 firstFrame;seedance 多參考時不支援) |
refImages / refVideos / refAudios | 資產參考 | seedance 完整;kling: 圖片 + 1 個功能影片(無音訊);hailuo: 無(幀 / S2V 主體) |
mode / shotType / multiPrompts | Kling 多鏡頭 | 僅 kling |
模型特有的參數 — 請參閱該模型的參考文件。
輸入解析度
firstFrame / lastFrame / refImages / refVideos / refAudios 都接受專案資產參考。偏好使用來自 read_project 的完整 UUID 或簡短前綴;asset://<id> 和由 read_project 傳回的同一專案資產 URL 也可接受。按插槽類型:幀插槽和 refImages → 圖片;refVideos → 影片;refAudios → 音訊。
不接受外部 URL 和 base64。如果來源是公開 URL,請先將其下載到專案中(影片/音訊使用 download_media,圖片使用 submit_image),並傳入產生的資產 ID。
工作流程
四步驟循環。對於每次新的生成,如果使用者的意圖已改變,則從步驟 1 重新開始。
步驟 1 — 與使用者對齊範圍
在撰寫任何提示之前,先在三個維度上對齊:
-
時長與片段 — 總長度、鏡頭數量,以及它們是位於同一個片段還是多個片段中。
如果使用者已經陳述了方向("做一段"、"in one video"、"分別生成"、"split into N shots" 等),則遵循指示 — 不要擅自揣測。
否則,向使用者呈現兩種路徑並讓他們選擇:
- 單一片段內的多鏡頭(請參閱模型參考) — 單次推理,子鏡頭之間的主體、光線、風格在物理上保持一致;適合在每個片段的時長上限內講述一個連貫的故事。
- 多個片段 — 每個片段可獨立控制和重新生成,但身份和風格連續性必須透過錨點來維繫;適合超出時長上限或具有明顯場景轉換的情況。
說明取捨;不要替使用者決定。
-
內容 — 每個片段描繪的內容。按片段總結您理解的內容。當內容模糊時(例如 "generate a video of a girl dancing"),使用者通常未指定以下一項或多項:
- 主體:主要主體是誰/是什麼(外觀、服裝、定義特徵)?
- 動作:他們在做什麼?(對於說話/情感鏡頭,微表情是什麼?)
- 場景:在哪裡 — 設定、時間、環境細節?
- 光線 / 色調氛圍:什麼氣氛?
- 相機:是否有任何鏡頭大小/角度/移動偏好?
- 風格:視覺風格或參考(電影感 / 動畫 / 紀錄片 / …)。
專注於對這個特定請求重要且無法安全推斷的項目 — 不要將其變成填空練習。在繼續之前,將理解的部分總結給使用者。
-
一致性錨點 — 僅當多個鏡頭重複使用角色、物體或場景時:確定哪個錨點(參考圖片或影片)要在各鏡頭之間固定。關於來源規則,請參閱下文 "多鏡頭之間的視覺一致性"。
對於每個維度,檢查使用者的話語:
- 明確 — 繼續。
- 模糊或缺失 — 詢問使用者。不要猜測,不要預設為您自己的解釋。一輪確認比一次浪費的生成更便宜。
不該做的事
- 不要 "先說再提交" — 宣布 "我將把它做成 2 個片段" 並立即提交不是對齊,而是單方面決定加公告。
- 不要預設將單一影片請求拆分成多個片段。 單一片段可以承載多個子鏡頭(請參閱模型參考),主體、光線、風格在它們之間可以物理上保持一致。說明取捨,然後讓使用者選擇。
- 不要跳過詢問, 即使您認為答案是顯而易見的。
硬性覆蓋(使用者的明確話語優先)
- "one clip / single clip / 一條 / 一個鏡頭 / in 1 clip" → 永遠不要拆分,即使描述客觀上很長。
- "N shots / N 段 / N 個鏡頭" → 精確生成 N 個。
- "use this image / 用這張圖" → 作為參考使用,不要替代。
步驟 2 — 撰寫提示
請參閱所選模型的參考文件,了解提示結構和參數組合(例如 Seedance 的 8 要素結構和模式;Kling 的提示技巧)。提交前,請檢查:
name是一個描述性資產名稱 — 描述性足夠強,讓使用者(以及您在後續回合中)能夠在專案庫中識別此資產。避免使用模糊的名稱,如 "Untitled" 或 "clip 1"。- 參數組合與使用者的意圖相符 — 請參閱模型參考中的 模式 部分。
- 生成的影片音訊不是工具參數(由供應商方決定)。Hailuo 沒有比例/多參考;不要發明這些參數。
- 驗證失敗時,請閱讀錯誤訊息並修正輸入 — 不要盲目地重試相同的無效參數。
步驟 3 — 提交一個、等待、確認
一次只提交一個生成任務。 除非使用者明確要求平行生成多個片段,否則請勿在當前片段完成且使用者審核之前提交下一個片段。平行提交會隱藏問題:如果第一個鏡頭出現漂移或錯誤構圖,使用者寧願重做一次,也不願有多個偏差的鏡頭需要丟棄。
submit_video.ratio僅控制生成的資產;它不會改變專案時間軸畫布。如果使用者要求特定的最終輸出寬高比(例如 "9:16 垂直" 或 "16:9 水平"),在放置完成的資產之前,使用manage_timelines操作=update(例如 ratio:"9:16")將時間軸畫布設定為相同比例。如果使用者要求無黑邊 / 滿版,請在設定畫布或更新/新增視覺項目時傳遞fit:"cover"。- 不要使用此技能進行任務管理 — 使用
track_progress工具來處理狀態/等待。 - 提交後,結束您的回合(告知使用者任務已建立),除非已有排隊的後續任務。
- 任務完成時,在繼續下一個鏡頭之前,將結果展示給使用者審核。
- 模型特定的失敗處理 — 請參閱該模型的參考文件。
步驟 4 — 迭代
當使用者想要下一個鏡頭、修改或延續時:
- 如果這是多鏡頭序列中的下一個鏡頭 — 重複使用已建立的錨點(關於原則,請參閱下文 "多鏡頭之間的視覺一致性";關於標誌層面的細節,請參閱模型參考)。
- 如果使用者的回饋是模糊的("它感覺不對") — 在重新生成之前,詢問具體要更改什麼。
- 如果相同的文字提示調整失敗了兩次 — 停止調整文字。改用參考圖片,或在模型支援的情況下切換到編輯模式(請參閱模型參考)。
- 每次新的生成都會在步驟 1 重新開始循環 — 如果範圍發生變化,請重新對齊。
多鏡頭之間的視覺一致性
僅靠文字無法可靠地在多個鏡頭之間維持視覺身份;視覺參考對輸出的約束遠比文字精確得多。
錨點:一致性的基石
錨點 是一個參考圖片或影片,固定在共用相同角色、物體或風格的每個鏡頭上。任何具有重複視覺元素的多鏡頭序列都需要一個錨點 — 不要試圖僅從文字複製它們。
獲取錨點
具備參考意識。當使用者的請求涉及重複出現的角色/物體/場景時,在撰寫提示之前思考要使用哪個錨點:
- 首先檢查專案。 使用者已經提供或批准了什麼?上傳的圖片、先前生成並批准的鏡頭,或先前的專案資產都可以作為錨點。
- 匹配使用者的意圖。 如果使用者指向特定資產("use this photo"、"像上一段那樣"),則使用該資產。如果他們僅用文字描述了一個角色,則尚不存在錨點,必須建立一個。
- 有疑問時,詢問使用者。 不要猜測要固定哪個資產,也不要在使用者可能已經有想法時默默生成一個新的錨點。
建立新的錨點(需經使用者同意)
當沒有現有資產適合且必須生成一個時,請先向使用者提出建議 — 它會影響後續的每一個鏡頭。模型特定的路徑 — 請參閱所選模型的參考文件。
使用錨點
- 在每個共用該角色/物體/風格的鏡頭中傳遞錨點。要使用的具體標誌取決於模型 — 請參閱模型的參考文件。
- 在提示中透過外觀描述錨點,而非名稱:"帶有鍍鉻排氣管的黑色賽車" 比 "Fleetmaster" 的約束力強得多。當角色混淆可能發生時,添加明確的否定:「摩托車不要變形。」
- 在提示中使用
@Image1/@Video1來引用錨點 — 不要使用模糊的短語如 "the same car as before"。 - 當一個鏡頭依賴於先前的生成時,等待先前的任務完成(透過
track_progress搭配action=wait)以獲取其assetId,然後將其作為錨點參考傳遞。不要平行提交依賴性鏡頭。
多角色專案
當一個專案有多個命名角色且具有不同屬性時(例如 Faz 帶火屬性能量,Kev 帶冰屬性能量),將每個角色視為一個單獨的錨點 — 每個角色一個參考資產。在每個提示中:
- 命名活躍的角色並附加其獨特屬性("Kev 具有藍色冰系電能")。
- 為其他角色添加明確的否定,以防止屬性洩漏("NOT 紅色火屬性能量,NOT Faz 的外觀")。
- 固定正確角色的錨點(模型特定標誌 — 請參閱模型參考)。不要意外重複使用另一個角色的錨點。
遺漏明確的屬性歸屬或否定會導致跨角色屬性混合。
同一畫格中的多個角色。 對於多個角色同時出現(尤其是面對相機)的鏡頭,模型容易出現臉部交換或身體裁剪的問題。為每個角色添加強烈的姿勢 + 服裝錨點,並偏好使用固定相機
…
[為翻譯而截斷]