Kling: Video v3.0 Pro
Kling VIDEO 3.0 Pro 是 Kuaishou 的 1080p 專業影片設定檔,適用於以文字或圖片引導的場景。它結合三至十五秒片段、原生音訊、引導式邊界畫格,以及單鏡頭或多鏡頭指示,用於電影感概念與短篇製作。
關於模型
此說明介紹模型的能力。Ailoot 可用的輸入、輸出與選項,依所選方法列於下方。
Kling VIDEO 3.0 Pro 是快手 VIDEO 3.0 模型的專業規格。文件中的 Pro 模式可由文字簡述或圖片引導場景產生 1080p 影片,片長為三至十五秒。3.0 版本結合原生音訊、主體一致性控制與多鏡頭指示,讓短篇製作能清楚指定外觀、動作、拍攝角度與聲音。
先從場景主要動作開始。文字引導鏡頭需描述主體、環境、光線,以及讓動作容易理解的視角。圖片引導鏡頭則讓開場圖片確立外觀與構圖,再以文字交代隨時間發生的變化。原創產品概念可先準備物件置於攝影棚檯面上的圖片,再以提示詞描述緩慢揭示材質與形狀。
多鏡頭指示提供自動拍攝安排或自訂序列。自動多鏡頭生成會依簡述規劃構圖與攝影機角度變化;適合單一連續視角的場景,也可維持單鏡頭。自訂分鏡則可定義每鏡內容與時長。原廠自訂鏡頭規格允許一至六鏡,每鏡最多 512 個字元、最短一秒;各鏡時長合計必須等於總片長。
短篇敘事可將場景交代、主要動作與結尾細節分成不同鏡頭。請說明各鏡的攝影機處理,以及觀眾應注意什麼。簡述中讓反覆出現的主體外觀保持一致,同時有意識地改變動作及拍攝安排。原廠參考文件的單一提示詞欄位最多接受 2,500 個字元;自訂序列則使用各鏡獨立描述。
角色、產品或場景需要維持可辨識時,主體參考可支援圖片引導場景。選擇清楚傳達待保留特徵的視角,並一致命名各參考主體。文件中的圖片引導規格允許最多三個預先準備的元素。請讓參考用途集中,避免結合對主體外觀給出互相衝突指示的素材。
首尾影格為圖片約束的轉變提供視覺邊界。準備主體及預期場景一致的影格,再描述連接它們的動作。原廠支援的影格輸入為 JPG、JPEG 或 PNG,檔案不超過 10 MB、尺寸至少 300 像素,起始圖片長寬比介於 1:2.5 與 2.5:1。影格控制工作與自訂分鏡各有輸入處理方式,撰寫完整簡述前,請先依所選流程整理素材。
原生音訊可結合台詞、氣氛與視覺演出。原廠參考文件預設關閉音訊,製作影音場景時需啟用。3.0 語言規格包括中文、英文、日文、韓文與西班牙文,以及語碼切換和支援的方言或口音處理。原廠指南指出,以其他語言輸入的對話會翻譯成英文。請為每句台詞指定主體,並將對話與背景聲區分,讓音訊簡述清楚說明誰在說話,以及動作周圍有什麼聲音。
一份原創雙角色簡述可識別說話者 A 與說話者 B,各提供簡短台詞,並描述兩者之間可見的反應。對話長度需配合片長,視角改變時也需指明說話者。聲音指示與角色參考用途不同;簡述應交代預期演出,不要假設參考圖片包含應說出的話。
VIDEO 3.0 也改善了圖片引導場景中可見文字的處理。若招牌、標籤或字幕很重要,請在簡述中指出並保留參考外觀。檢查完成短片中文字的拼字、可讀性與移動,尤其是承載產品或行銷訊息時。模型的文字功能用來引導生成,不能取代最後的視覺檢查。
Pro 規格為 1080p,Standard 規格為 720p。原廠另行選擇的 4K 模式是另一種輸出規格,因此不應將 Pro 視為所有更高解析度設定的同義詞。文字引導生成的文件構圖選項包括 16:9、9:16 與 1:1。請依預定版位選擇畫框,並保持構圖清楚可讀。
生成以工作方式執行,成功結果會提供完成影片素材與實際片長。原廠結果文件指出,生成影片會在 30 天後刪除,因此請儘速保存完成短片。將影片、簡述與參考素材一併保留,再檢查主體連續性、指定鏡頭順序、運鏡、對話及文字。選定短片可作為電影感概念、產品場景或短篇敘事,對未達預期的部分則進行集中修改。
Ailoot Ultra · 影片 POST /v1/videos kwaivgi/kling-v3.0-pro
kwaivgi/kling-v3.0-pro入門
Kling VIDEO 3.0 Pro 是 Kuaishou 的 1080p 專業影片設定檔,適用於以文字或圖片引導的場景。它結合三至十五秒片段、原生音訊、引導式邊界畫格,以及單鏡頭或多鏡頭指示,用於電影感概念與短篇製作。
- 接受的輸入
- 文字 · 圖片
- 結果
- 影片
Ailoot 可用 · 輸入與方法
Ailoot Ultra · 影片 POST /v1/videos
- 輸入
text,image- 輸出
video- 輸出格式
- 原始 MP4 位元組;不進行正規化或轉碼
| 欄位 | 類型 | 要求 | 值與限制 | 預設值 |
|---|---|---|---|---|
欄位model | 類型string | 要求必填 | 值與限制 kwaivgi/kling-v3.0-pro | 預設值— |
欄位prompt | 類型string | 要求必填 | 值與限制 | 預設值— |
欄位duration | 類型integer | 要求必填 | 值與限制 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 最小值: 1 最大值: 600 | 預設值— |
欄位resolution | 類型string | 要求選填 | 值與限制 720p | 預設值— |
欄位aspect_ratio | 類型string | 要求選填 | 值與限制 16:9, 9:16, 1:1 | 預設值— |
欄位generate_audio | 類型boolean | 要求選填 | 值與限制 false, true 條件: 省略此選項會選用含音訊的價格。設為 false 則會選用不含音訊的價格。請查看結果中的 has_audio,確認是否回傳音軌。 | 預設值— |
欄位frame_images | 類型array | 要求選填 | 值與限制 項目數下限: 1 項目數上限: 2 輸入內容: 影格物件陣列。每個物件包含 type=image_url、內含 url 的 image_url,以及 frame_type。請使用 HTTPS 圖片 URL,並將 frame_type 設為 first_frame 或 last_frame。每種影格角色最多只能出現一次。 確切鍵名: type, image_url, frame_type 條件: 這些鍵描述每個影格物件;image_url 僅包含 url。僅含文字的請求請省略 frame_images。 | 預設值— |
欄位input_references | 類型array | 要求選填 | 值與限制 | 預設值— |
欄位size | 類型string | 要求選填 | 值與限制 1280x720, 720x1280, 720x720 模式: ^[1-9][0-9]*x[1-9][0-9]*$ | 預設值— |
欄位callback_url | 類型string | 要求選填 | 值與限制 模式: ^https:// | 預設值— |
欄位session_id | 類型string | 要求選填 | 值與限制 | 預設值— |
欄位trace | 類型object | 要求選填 | 值與限制 | 預設值— |
欄位user | 類型string | 要求選填 | 值與限制 | 預設值— |
輸入素材組合
文字生成影片 · 文字提示詞。 · 必填: model, prompt, duration
請以文字提供 prompt,並以整數秒提供 duration。請選擇支援的解析度,並指定長寬比或使用列出的大小。
model: 類型: string · kwaivgi/kling-v3.0-pro
prompt: 類型: string · UTF-8 位元組數上限: 10,000 · 必須包含非空白字元: 是
圖片生成影片 · 文字提示詞與首格圖片。 · 必填: model, prompt, duration, frame_images
frame_images 是陣列。每個影格物件包含 type、image_url 與 frame_type;image_url 內含 url。請將 type 設為 image_url,並使用 first_frame;last_frame 為選填。每種影格角色最多只能出現一次。請為每個影格提供公開的 HTTPS 圖片 URL。請選擇支援的解析度,並指定長寬比或使用列出的大小。
確切鍵名: type, image_url, frame_type
model: 類型: string · kwaivgi/kling-v3.0-pro
prompt: 類型: string · UTF-8 位元組數上限: 10,000 · 必須包含非空白字元: 是
方法參數與生命週期
| 參數 | 規格 |
|---|---|
參數content_type | 規格application/json |
參數required | 規格model, prompt, duration |
參數material_types | 規格text, image |
參數additional_properties | 規格false |
參數optional_controls | 規格resolution, aspect_ratio, generate_audio, frame_images, input_references, size, callback_url, session_id, trace, user |
生命週期: submit_once_poll_original
GET /v1/videos/{public_id}
GET /v1/videos/{public_id}/content
方案
最終費用的計算方式
顯示的費率用於在生成前估算費用。最終費用依原始生成作業記錄的成本計算。實測的輸出時間長度與預估數量並非最終計費數量。
費率資訊不會增加請求選項。支援的參數列於所選方法中。
- 快速模式
- 未指定 選取快速模式時
- flex 模式
- 未指定 選取 flex 模式時
- 最高推理強度
- 未指定 最高推理強度採用 default 調整值時
供比較的預估費率
各設定的價格
請逐一核對各項費用與所列條件。每組互為替代選項的設定只套用一種費率。
| 設定 | 費率表 | 預估數量 | 費用項目 | 參考解析度 | 參考模式 | 參考音訊 | 計費單位 | 計費條件 | 費用 |
|---|---|---|---|---|---|---|---|---|---|
| 設定基礎 token 費率 | 費率表基本費率 | 預估數量— | 費用項目— | 參考解析度— | 參考模式— | 參考音訊— | 計費單位— | 計費條件— | 費用 輸入 · 輸入 Token · 僅供比較的估算 — / 1K Token 輸出 · 輸出 Token · 僅供比較的估算 — / 1K Token 輸入 · 讀取快取 · 僅供比較的估算 — / 1K Token 輸入 · 寫入快取 · 僅供比較的估算 — / 1K Token 輸入 · 寫入快取,1 小時 · 僅供比較的估算 — / 1K Token |
| 設定影片輸出 · 參考費率 | 費率表— | 預估數量— | 費用項目reference_output_rate | 參考解析度— | 參考模式— | 參考音訊— | 計費單位每秒輸出 | 計費條件— | 費用 輸出 · 輸出影片每秒參考費率 · 僅供比較的估算 $0.224 每秒輸出 |
| 設定影片價格 | 費率表— | 預估數量— | 費用項目— | 參考解析度— | 參考模式— | 參考音訊— | 計費單位每秒影片 | 計費條件音訊:with_audio | 費用 輸出 · 影片價格 · 僅供比較的估算 $0.336 每秒影片 |
| 設定圖片生成影片(影格圖片)· 1080p · 參考費率 | 費率表— | 預估數量— | 費用項目reference_output_rate | 參考解析度1080p | 參考模式以圖生影片(影格圖片) | 參考音訊不含音訊 | 計費單位每秒輸出 | 計費條件— | 費用 輸出 · 輸出影片每秒參考費率 · 僅供比較的估算 $0.224 每秒輸出 |
| 設定影片價格 | 費率表— | 預估數量— | 費用項目— | 參考解析度— | 參考模式— | 參考音訊— | 計費單位每秒影片 | 計費條件生成模式:image_to_video;解析度:720p | 費用 輸出 · 影片價格 · 僅供比較的估算 $0.224 每秒影片 |
| 設定文字生成影片 · 1080p · 參考費率 | 費率表— | 預估數量— | 費用項目reference_output_rate | 參考解析度1080p | 參考模式文字生成影片 | 參考音訊不含音訊 | 計費單位每秒輸出 | 計費條件— | 費用 輸出 · 輸出影片每秒參考費率 · 僅供比較的估算 $0.224 每秒輸出 |
| 設定文字生成影片 · 480p · 參考費率 | 費率表— | 預估數量— | 費用項目reference_output_rate | 參考解析度480p | 參考模式文字生成影片 | 參考音訊不含音訊 | 計費單位每秒輸出 | 計費條件— | 費用 輸出 · 輸出影片每秒參考費率 · 僅供比較的估算 $0.224 每秒輸出 |
| 設定影片價格 | 費率表— | 預估數量— | 費用項目— | 參考解析度— | 參考模式— | 參考音訊— | 計費單位每秒影片 | 計費條件生成模式:text_to_video;解析度:720p | 費用 輸出 · 影片價格 · 僅供比較的估算 $0.224 每秒影片 |
| 設定預估生成費用 | 費率表— | 預估數量單次生成估算值 | 費用項目— | 參考解析度— | 參考模式— | 參考音訊— | 計費單位— | 計費條件— | 費用 輸出 · 預估生成費用 · 僅供比較的估算 $0.672 生成前估算 此估算並非額外費用,也不是本次生成完成後的固定費率。 |
Ailoot 會在請求前預留估算金額。取得結果後,依實測用量結算最終費用。串流結算採用最終用量紀錄。預留金額與結算的運作方式 →
參考費率詳情
模型層級的參考費率表不會變更方法選擇、報價或費用。實際計費採用所選 Ailoot 方法的費率。
影片設定的價格參考
各設定的價格
請逐一核對各項費用與所列條件。每組互為替代選項的設定只套用一種費率。
| 設定 | 計費條件 | 費用 |
|---|---|---|
| 設定影片價格 | 計費條件此定價鍵未宣告額外條件。 | 費用 輸出 · 影片價格 $0.224 每秒影片 所示設定的公開價格參考。最終費用依實際計費設定計算。 |
| 設定影片價格 | 計費條件音訊:with_audio | 費用 輸出 · 影片價格 $0.336 每秒影片 所示設定的公開價格參考。最終費用依實際計費設定計算。 |
| 設定影片價格 | 計費條件生成模式:text_to_video;解析度:480p | 費用 輸出 · 影片價格 $0.224 每秒影片 所示設定的公開價格參考。最終費用依實際計費設定計算。 |
| 設定影片價格 | 計費條件生成模式:text_to_video;解析度:720p | 費用 輸出 · 影片價格 $0.224 每秒影片 所示設定的公開價格參考。最終費用依實際計費設定計算。 |
| 設定影片價格 | 計費條件生成模式:image_to_video;解析度:720p | 費用 輸出 · 影片價格 $0.224 每秒影片 所示設定的公開價格參考。最終費用依實際計費設定計算。 |
| 設定影片價格 | 計費條件生成模式:text_to_video;解析度:1080p | 費用 輸出 · 影片價格 $0.224 每秒影片 所示設定的公開價格參考。最終費用依實際計費設定計算。 |
| 設定影片價格 | 計費條件生成模式:image_to_video;解析度:1080p | 費用 輸出 · 影片價格 $0.224 每秒影片 所示設定的公開價格參考。最終費用依實際計費設定計算。 |
請求範例
Ailoot Ultra · 影片
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_REQUEST'
from pathlib import Path
Path('request.json').write_text('{"aspect_ratio":"16:9","duration":8,"model":"kwaivgi/kling-v3.0-pro","prompt":"A serene mountain landscape at sunset","resolution":"720p"}', encoding='utf-8')
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/videos \
-H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
--data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
r=json.loads(Path('result.json').read_text())
print(json.dumps(r,ensure_ascii=False,indent=2))
print('Keep the complete JSON and response headers; do not resubmit an unknown creation.')
PY_RESULT
接收並儲存結果
Ailoot Ultra · 影片
自有內容的簽署 URL
GET /v1/videos/{public_id}GET /v1/videos/{public_id}/content
查看工作狀態
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_STATUS_URL'
import json
from pathlib import Path
from urllib.parse import quote
r=json.loads(Path('result.json').read_text())
if not isinstance(r.get('id'),str) or not r['id']:raise SystemExit('Keep the original response and headers for reconciliation; no returned ID')
Path('status-url.txt').write_text('https://api.ailoot.ai/v1/videos/'+quote(r['id'],safe=''))
PY_STATUS_URL
curl --fail-with-body --silent --show-error "$(cat status-url.txt)" \
-H "Authorization: Bearer $AILOOT_API_KEY" -D status-headers.txt -o status.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
r=json.loads(Path('status.json').read_text())
print(json.dumps(r,ensure_ascii=False,indent=2))
print('Keep the complete JSON and response headers; do not resubmit an unknown creation.')
PY_RESULT
其他內容讀取方式
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
export AILOOT_API_KEY
python3 - <<'PY_ASSETS'
import json,os,subprocess
from pathlib import Path
from urllib.parse import urljoin,urlsplit
r=json.loads(Path('status.json').read_text())
if r.get('status')!='completed':raise SystemExit('Keep the original ID and read its status; never recreate an unknown job')
if not isinstance(r.get('data'),list) or not r['data']:raise SystemExit('Keep the complete original status; no completed outputs supplied')
urls=[]
for i,u in enumerate(r.get('data',[])):
if not isinstance(u,str):raise SystemExit('Keep the original response; unexpected asset shape')
urls.append((str(i),u))
for label,path in urls:
u=urljoin('https://api.ailoot.ai',path);z=urlsplit(u)
if z.scheme!='https' or z.netloc!='api.ailoot.ai' or z.username or z.password:raise SystemExit('Use the actual returned Ailoot owned content URL')
target=Path('owned-'+label+'.bin')
subprocess.run(['curl','--fail-with-body','--silent','--show-error',u,'-H','Authorization: Bearer '+os.environ['AILOOT_API_KEY'],'-D',str(target)+'.headers','-o',str(target)],check=True)
print('All returned owned URLs saved; complete metadata, timing and usage remain in the JSON.')
PY_ASSETS
保留所有已完成的結果
請儲存每部已完成的影片或傳回的檔案,並從實際傳回的每個素材 URL 取得素材。
請保留每個實際的自有輸出,以及回傳的實測中繼資料。
需要檢查原始回應時
503 result_pending_check + 原始 id + X-Should-Retry:false;切勿重送原始請求
回應欄位
| 欄位 | 類型 | 含義 |
|---|---|---|
欄位index | 類型integer | 含義此影片在輸出清單中的位置,索引從零開始。 |
欄位content_url | 類型string | 含義此已完成影片的簽署 HTTPS 下載 URL。 |
欄位sha256 | 類型string | null | 含義原始影片位元組的 SHA-256 摘要;無法取得時為 null。 |
欄位size_bytes | 類型integer | null | 含義原始影片檔案大小,以位元組為單位;無法取得時為 null。 |
欄位duration_ms | 類型integer | null | 含義實測的影片長度,以毫秒為單位;無法取得時為 null。 |
欄位width | 類型integer | null | 含義影片寬度,以像素為單位;無法取得時為 null。 |
欄位height | 類型integer | null | 含義影片高度,以像素為單位;無法取得時為 null。 |
欄位video_codec | 類型string | null | 含義影片編碼識別碼;未記錄時為 null。 |
欄位has_audio | 類型boolean | null | 含義影片是否包含音軌;未測量時為 null。 |
欄位audio_codec | 類型string | null | 含義音訊編碼識別碼;未記錄識別碼時為 null。 |
錯誤與後續步驟
| 回應 | 條件 | 下一步 |
|---|---|---|
回應404 · not_found_error | 條件無法存取影片,或找不到此影片 ID。 | 下一步請確認影片存取權限。若影片已存在,請使用其原始公開 ID 與相同的 API 金鑰。 |
回應401 · authentication_error | 條件API 金鑰與已驗證的帳號不符。 | 下一步提交前,請先確認 API 金鑰與帳號存取權限。 |
回應400 · invalid_request_error | 條件無法讀取請求,或下載索引無效。 | 下一步請修正請求本文。若要下載,請選擇原始工作回傳的輸出索引。 |
回應422 · price_unavailable | 條件所選影片設定無法定價。 | 下一步請選擇支援的影片設定,填妥其必要選項,再提交修正後的請求。 |
回應422 · invalid_request_error | 條件影片輸入或原始延續工作無效。 | 下一步請使用有效的 HTTPS 輸入。若要延續影片,請使用已完成原始影片的公開影片 ID,以及相同的 API 金鑰。 |
回應402 · billing_error | 條件可用餘額或限制不允許預留額度。 | 下一步傳送新的請求前,請先確認可用餘額與限制。 |
回應503 · server_error | 條件影片驗證、儲存系統或服務存取暫時無法使用。 | 下一步請等待服務恢復可用。若已有影片 ID,請查詢該原始工作,切勿另行建立生成工作。 |
回應503 · result_pending_check | 條件原始影片結果與費用需要查核。 | 下一步請保留回傳的影片 ID,並查詢該工作。查詢期間切勿傳送替代的生成請求。 |
回應503 · owned_result_unavailable | 條件現有影片暫時無法下載。 | 下一步請稍後查詢同一影片工作,並下載其現有輸出。新的生成請求會建立獨立操作。 |
回應409 · video_not_ready | 條件影片內容尚未發布。 | 下一步請查詢原始工作狀態。回報 completed 後再下載;若回報 failed,請依其費用查核通知處理。 |
別名
模型別名
Ailoot Ultra kwaivgi/kling-v3.0-pro
方法路徑別名
請使用上方列出的 API 方法路徑。
相關呼叫用 ID
FAQ · Kling: Video v3.0 Pro
- 可以使用哪些輸入與結果?
POST /v1/videos·kwaivgi/kling-v3.0-pro:text,image→video- 請求使用哪些欄位?
POST /v1/videos·kwaivgi/kling-v3.0-pro:model,prompt,duration,resolution,aspect_ratio,generate_audio,frame_images,input_references,size,callback_url,session_id,trace,user- 適用哪些限制?
POST /v1/videos·kwaivgi/kling-v3.0-pro:duration.minimum:1;duration.maximum:600;frame_images.max_items:2;frame_images.min_items:1