Source: https://ailoot.ai/models/zh-hant-tw/kling-v1-5/
Canonical: https://ailoot.ai/models/zh-hant-tw/kling-v1-5/
Language: zh-hant-tw

# Kling v1.5

[Markdown](https://ailoot.ai/models/zh-hant-tw/kling-v1-5/index.md) · [JSON](https://ailoot.ai/models/zh-hant-tw/kling-v1-5/facts.json)

## [Kling v1.5](https://ailoot.ai/models/zh-hant-tw/kling-v1-5/)

Kling v1.5 是影片模型，文件中提供圖片轉影片工作流程。從準備好的靜態圖像出發，描述動作、視角與最終構圖，製作簡短的人物、物件或環境鏡頭。

- [**Ailoot Ultra · Video** `POST /v1/videos` `kling-v1-5`](https://ailoot.ai/models/zh-hant-tw/kling-v1-5/#method-0)

關於模型

此說明介紹模型的能力。Ailoot 可用的輸入、輸出與選項，依所選方法列於下方。

Kling v1.5 是 Kling 影片生成版本，文件中的模型目錄列有圖片轉影片能力。提供的靜態圖像作為視覺起點，文字創作說明則描述場景如何動起來。可從構圖已符合鏡頭需求的圖片，發展人物動作、移動中的物件，或持續變化的環境。

準備圖片時，以主體的重要細節為重點。人物需要清楚可辨的臉部、姿勢與服裝；物件需要明確的輪廓和可見的材質特徵。構圖中應為預期動作保留空間。將原始靜態圖像與完成的片段一起保存，便於直接評估外觀的變化。

將動作寫成可觀察的事件。例如，描述坐著的人轉向窗戶，或布質緞帶在微風中飄動。說明方向與預期的結束狀態。畫面中有多個物件時，指出哪一個執行動作，以及哪些保持原位。

說明攝影機的作用。固定視角能讓小幅度動作更容易檢查，移動視角則能揭示場景的另一面。描述運鏡與主體的關係。要求攝影機靠近主體，與要求主體靠近攝影機，表達的是不同的視覺意圖。

文件中的圖片轉影片項目列有 5 秒與 10 秒片長選項、std 與 pro 模式，以及橫式、直式與方形畫面。在評估結果之前，先選擇所用工作流程提供的設定。比較候選鏡頭時，將實際模式、片長與畫面形狀，連同來源圖片與提示詞一起保存。

展示物件時，定義動態過程應揭示的視覺特徵，例如反光表面、材質的摺痕，或把手的形狀。動作應足夠聚焦，讓重要特徵持續可見。評估物件在整個動態過程中的表現，以及剪輯所用的最後畫面。

製作人物場景時，描述一個有意義的動作，以及人物與附近物件的關係。隨時間檢視臉部、雙手、服裝與身體比例。確認動作是否達到預期的結束狀態，以及場景前景與背景元素的配置是否保持一致。

保留完整生成的影片片段及其來源素材。將開場、主要動作與結尾視為一個連續片段檢視，再針對具體不符之處修改。例如「人物轉向遠離窗戶的方向」這類紀錄，能為下一份創作說明提供明確的修正，同時保留場景的其餘部分。

**Ailoot Ultra · Video** `POST /v1/videos` `kling-v1-5`

[`kling-v1-5`](https://ailoot.ai/models/zh-hant-tw/#m=kling-v1-5&route=Ultra&caller=kling-v1-5&fmt=videos)

Kling /`kling-v1-5`

### 入門

Kling v1.5 是影片模型，文件中提供圖片轉影片工作流程。從準備好的靜態圖像出發，描述動作、視角與最終構圖，製作簡短的人物、物件或環境鏡頭。

接受的輸入

文字 · 圖片

結果

影片

### Ailoot 可用 · 輸入與方法

**Ailoot Ultra · Video** `POST /v1/videos`

輸入

`text`, `image`

輸出

`video`

| 欄位 | 類型 | 要求 | 值與限制 | 預設值 |
| --- | --- | --- | --- | --- |
| 欄位`model` | 類型`string` | 要求必填 | 值與限制 kling-v1-5 條件: 請原樣使用這個 Ailoot 路由選擇值。 | 預設值— |
| 欄位`mode` | 類型`string` | 要求選填 | 值與限制 std, pro 條件: 請使用所選模型文件記載的欄位與列出的選項；未指定的選填值請省略。 | 預設值std |
| 欄位`aspect_ratio` | 類型`string` | 要求選填 | 值與限制 16:9, 9:16, 1:1 條件: 請使用所選模型文件記載的欄位與列出的選項；未指定的選填值請省略。 | 預設值— |
| 欄位`duration` | 類型`integer` | 要求選填 | 值與限制 5, 10 條件: 請使用所選模型文件記載的欄位與列出的選項；未指定的選填值請省略。 | 預設值— |
| 欄位`end_image` | 類型`string` | 要求選填 | 值與限制 條件: 請使用所選模型文件記載的欄位與列出的選項；未指定的選填值請省略。 | 預設值— |
| 欄位`image` | 類型`string or array<string>` | 要求必填 | 值與限制 條件: 請提供您實際可存取的圖片 URL。只有參數結構描述列出陣列時，才接受清單。 | 預設值— |
| 欄位`negative_prompt` | 類型`string` | 要求選填 | 值與限制 條件: 請使用所選模型文件記載的欄位與列出的選項；未指定的選填值請省略。 | 預設值— |
| 欄位`prompt` | 類型`string` | 要求必填 | 值與限制 條件: 請使用所選模型文件記載的欄位與列出的選項；未指定的選填值請省略。 | 預設值— |

方法參數與生命週期

| 參數 | 規格 |
| --- | --- |
| 參數`content_type` | 規格application/json |
| 參數`required` | 規格model, prompt, image |
| 參數`optional` | 規格mode, aspect\_ratio, duration, end\_image, negative\_prompt |
| 參數`material_types` | 規格text, image |
| 參數`conditions` | 規格請原樣使用這個 Ailoot 路由選擇值。, 請使用所選模型文件記載的欄位與列出的選項；未指定的選填值請省略。, 請使用所選模型文件記載的欄位與列出的選項；未指定的選填值請省略。, 請使用所選模型文件記載的欄位與列出的選項；未指定的選填值請省略。, 請使用所選模型文件記載的欄位與列出的選項；未指定的選填值請省略。, 請提供您實際可存取的圖片 URL。只有參數結構描述列出陣列時，才接受清單。, 請使用所選模型文件記載的欄位與列出的選項；未指定的選填值請省略。, 請使用所選模型文件記載的欄位與列出的選項；未指定的選填值請省略。 |

方法別名： `/v1/videos/generations`

生命週期： `submit_once_poll_original`

`GET /v1/videos/{request_id}`

`GET /v1/videos/generations/{request_id}`

`GET /v1/videos/{request_id}/content`

`GET /v1/media/assets`

`GET /v1/media/assets/{asset_id}`

### 方案

##### 最終費用的計算方式

顯示的費率用於在生成前估算費用。最終費用依原始生成作業記錄的成本計算。實測的輸出時間長度與預估數量並非最終計費數量。

費率資訊不會增加請求選項。支援的參數列於所選方法中。

快速模式

未指定 選取快速模式時

flex 模式

未指定 選取 flex 模式時

最高推理強度

未指定 最高推理強度採用 default 調整值時

#### 供比較的預估費率

#### 各設定的價格

請逐一核對各項費用與所列條件。每組互為替代選項的設定只套用一種費率。

| 設定 | 費率表 | 預估數量 | 費用 |
| --- | --- | --- | --- |
| 設定基礎 token 費率 | 費率表基本費率 | 預估數量— | 費用 輸入 · 輸入 Token · 僅供比較的估算 **—** / 1K Token 輸出 · 輸出 Token · 僅供比較的估算 **—** / 1K Token 輸入 · 讀取快取 · 僅供比較的估算 **—** / 1K Token 輸入 · 寫入快取 · 僅供比較的估算 **—** / 1K Token 輸入 · 寫入快取，1 小時 · 僅供比較的估算 **—** / 1K Token |
| 設定預估生成費用 | 費率表— | 預估數量單次生成估算值 | 費用 輸出 · 預估生成費用 · 僅供比較的估算 **$6** 生成前估算 此估算並非額外費用，也不是本次生成完成後的固定費率。 |

Ailoot 會在請求前預留估算金額。取得結果後，依實測用量結算最終費用。串流結算採用最終用量紀錄。[預留金額與結算的運作方式 →](https://ailoot.ai/docs/zh-hant-tw/billing/reserve/)

### 請求範例

#### Ailoot Ultra · Video

curl · 僅建立一次並保留完整結果讀取原始任務儲存您擁有的每個已完成素材

```bash
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
export AILOOT_API_KEY
: "${AILOOT_IMAGE_URL:?Set an actual customer material or documented value}"
export AILOOT_IMAGE_URL
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "kling-v1-5", "prompt": "A cat is walking on grass.", "image": "YOUR_ACCESSIBLE_IMAGE_URL"}')
p['image']=os.environ['AILOOT_IMAGE_URL']
Path("request.json").write_text(json.dumps(p,ensure_ascii=False))
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
# Submit once. Retain the complete result, original identifiers and every response header.
```

```bash
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
export AILOOT_API_KEY
python3 - <<'PY_STATUS'
import json,os,subprocess
from pathlib import Path
from urllib.parse import urljoin,urlsplit
r=json.loads(Path("result.json").read_text())
u=urljoin("https://api.ailoot.ai",r["polling_url"])
p=urlsplit(u)
if p.scheme!="https" or p.netloc!="api.ailoot.ai" or p.username or p.password:
    raise SystemExit("Unexpected returned polling URL; preserve the response")
subprocess.run(["curl","--fail-with-body","--silent","--show-error",u,"-H","Authorization: Bearer "+os.environ["AILOOT_API_KEY"],"-D","status-headers.txt","-o","status.json"],check=True)
# Read this same original polling_url again while pending.
# Preserve unknown/result_pending_check; do not repeat creation.
PY_STATUS
```

```bash
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())
roles={}
def visit(v,path=""):
    if isinstance(v,dict):
        for k,x in v.items(): visit(x,path+"/"+k)
    elif isinstance(v,list):
        for i,x in enumerate(v): visit(x,path+"/"+str(i))
    elif isinstance(v,str):
        u=urljoin("https://api.ailoot.ai",v); p=urlsplit(u)
        if p.scheme=="https" and p.netloc=="api.ailoot.ai" and not p.username and not p.password and p.path.startswith("/v1/media/assets/") and p.path.endswith("/content"):
            roles.setdefault(u,[]).append(path)
visit(r)
if not roles: raise SystemExit("No completed owned assets; retain the original status")
manifest=[]
for i,(u,paths) in enumerate(roles.items()):
    target=Path(f"asset-{i}.bin")
    subprocess.run(["curl","--fail-with-body","--silent","--show-error",u,"-H","Authorization: Bearer "+os.environ["AILOOT_API_KEY"],"-o",str(target)],check=True)
    raw=target.read_bytes()
    if not raw: raise SystemExit("Empty asset; retain original status and metadata")
    ext="glb" if raw[:4]==b"glTF" else "png" if raw[:8]==b"\x89PNG\r\n\x1a\n" else "jpg" if raw[:3]==b"\xff\xd8\xff" else "webp" if raw[:4]==b"RIFF" and raw[8:12]==b"WEBP" else "mp4" if raw[4:8]==b"ftyp" else "bin"
    name=f"asset-{i}.{ext}"
    if target.name!=name: target.rename(name)
    manifest.append({"file":name,"response_paths":paths,"bytes":len(raw)})
Path("asset-manifest.json").write_text(json.dumps(manifest,indent=2))
print("Saved",len(manifest),"unique owned assets; every response role retained")
PY_ASSETS
```

### 接收並儲存結果

#### Ailoot Ultra · Video

- `GET /v1/videos/{request_id}`
- `GET /v1/videos/generations/{request_id}`
- `GET /v1/videos/{request_id}/content`
- `GET /v1/media/assets`
- `GET /v1/media/assets/{asset_id}`

##### 保留所有已完成的結果

請儲存每部已完成的影片或傳回的檔案，並從實際傳回的每個素材 URL 取得素材。

請保留完整回應與標頭、原始識別碼、每個實際輸出，以及所有用量／帳務欄位。請儲存每個不重複的自有資產，並保留指向該資產的每個角色。

##### 需要檢查原始回應時

請保留回傳的公開工作或操作 id，以及所有標頭。僅讀取原始工作；unknown 或 result\_pending\_check 均不代表可以再次建立。

回應欄位

| 欄位 | 類型 |
| --- | --- |
| 欄位`id` | 類型string |
| 欄位`polling_url` | 類型string |
| 欄位`provider_task_id` | 類型string |
| 欄位`task_id` | 類型string |
| 欄位`status` | 類型string |
| 欄位`video_url` | 類型string |

錯誤與後續步驟

| 回應 | 條件 | 下一步 |
| --- | --- | --- |
| 回應400 · `invalid_request_error` | 條件必要欄位、模型選擇值、型別或輸入表示格式無效。 | 下一步準備另一個獨立請求前，請檢視傳回的驗證詳情。 |
| 回應`` | 條件原始請求或結果不明，或需要檢查。 | 下一步請保留原始識別碼與標頭，僅讀取支援的狀態資料或媒體庫紀錄。請勿再次提交建立請求。 |

### 別名

#### 模型別名

**Ailoot Ultra** [`kling-v1-5`](https://ailoot.ai/models/zh-hant-tw/#m=kling-v1-5&route=Ultra&caller=kling-v1-5&fmt=videos)

#### 方法路徑別名

`/v1/videos/generations`

#### 相關呼叫用 ID

[`kling-v1-5`](https://ailoot.ai/models/zh-hant-tw/#m=kling-v1-5&route=Ultra&caller=kling-v1-5&fmt=videos)

FAQ · Kling v1.5

可以使用哪些輸入與結果？

`POST /v1/videos` · `kling-v1-5`: `text`, `image` → `video`

請求使用哪些欄位？

`POST /v1/videos` · `kling-v1-5`: `model`, `mode`, `aspect_ratio`, `duration`, `end_image`, `image`, `negative_prompt`, `prompt`

將 Ailoot 串接 Claude Code、OpenCode、Hermes 或自己的應用程式。

## 公司及其專案組合

公司及其專案組合：數百萬客戶，每月銷售額達數十億。

## 優惠購買 token。

訂閱優惠適合持續工作，折扣碼購買 token 最高可折 50%。

訂閱

為定期請求選擇優惠方案。

最高 50% 折扣碼

購買時輸入代碼，價格依活動重算。

歷史中的費用

每次請求保存模型、token 與金額。

[選擇訂閱](https://ailoot.ai/docs/zh-hant-tw/billing/subscriptions/) · [查看模型價格](https://ailoot.ai/models/zh-hant-tw/)

## 將 API 加入 你銷售的產品。

依 Ailoot 正式服務條款與授權合約串接 SaaS、應用程式與機器人；轉售請申請經銷授權。

商用應用程式

在付費功能加入文字、圖片、影片與聲音生成。

經銷授權

提供專案說明與存取方式，要求書面使用和轉售條件。

網站文件

串接前可閱讀正式服務條款、授權合約與資料處理政策。

[申請經銷授權](mailto:support@ailoot.ai) · [正式服務條款與授權合約](https://ailoot.ai/legal/offer?lang=zh-hant-tw)

## Ailoot · 公司及其專案組合





Ailoot以累積的營運經驗、廣大的客戶群、穩定的服務及持續的KPI管理為基礎。





公司及其專案組合：數百萬客戶，每月銷售額達數十億。





Ailoot將這些營運經驗用於API存取，讓客戶的產品、代理、應用程式及自動化流程使用AI功能。
