Kling tạo video từ văn bản
curl --request POST \
--url https://api.aiid.edu.kg/kling/v1/videos/text2video \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"model": "kling-v1",
"prompt": "宇航员站起身走了",
"duration": 5,
"width": 1280,
"height": 720,
"fps": 30
}
'import requests
url = "https://api.aiid.edu.kg/kling/v1/videos/text2video"
payload = {
"model": "kling-v1",
"prompt": "宇航员站起身走了",
"duration": 5,
"width": 1280,
"height": 720,
"fps": 30
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
model: 'kling-v1',
prompt: '宇航员站起身走了',
duration: 5,
width: 1280,
height: 720,
fps: 30
})
};
fetch('https://api.aiid.edu.kg/kling/v1/videos/text2video', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.aiid.edu.kg/kling/v1/videos/text2video",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'model' => 'kling-v1',
'prompt' => '宇航员站起身走了',
'duration' => 5,
'width' => 1280,
'height' => 720,
'fps' => 30
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.aiid.edu.kg/kling/v1/videos/text2video"
payload := strings.NewReader("{\n \"model\": \"kling-v1\",\n \"prompt\": \"宇航员站起身走了\",\n \"duration\": 5,\n \"width\": 1280,\n \"height\": 720,\n \"fps\": 30\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.aiid.edu.kg/kling/v1/videos/text2video")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"model\": \"kling-v1\",\n \"prompt\": \"宇航员站起身走了\",\n \"duration\": 5,\n \"width\": 1280,\n \"height\": 720,\n \"fps\": 30\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.aiid.edu.kg/kling/v1/videos/text2video")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"model\": \"kling-v1\",\n \"prompt\": \"宇航员站起身走了\",\n \"duration\": 5,\n \"width\": 1280,\n \"height\": 720,\n \"fps\": 30\n}"
response = http.request(request)
puts response.read_body{
"task_id": "abcd1234efgh",
"status": "queued"
}{
"error": {
"message": "<string>",
"type": "<string>",
"param": "<string>",
"code": "<string>"
}
}Định dạngKling tạo video
Kling tạo video từ văn bản
Dòng này hỗ trợ định dạng tạo video OpenAI (xem chi tiết tại liên kết Định dạng tương thích với Sora tạo video).
Sử dụng mô hình Kling để tạo video từ mô tả văn bản.
Các mô hình hỗ trợ: kling-v1, kling-v1-5, v.v.
POST
/
kling
/
v1
/
videos
/
text2video
Kling tạo video từ văn bản
curl --request POST \
--url https://api.aiid.edu.kg/kling/v1/videos/text2video \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"model": "kling-v1",
"prompt": "宇航员站起身走了",
"duration": 5,
"width": 1280,
"height": 720,
"fps": 30
}
'import requests
url = "https://api.aiid.edu.kg/kling/v1/videos/text2video"
payload = {
"model": "kling-v1",
"prompt": "宇航员站起身走了",
"duration": 5,
"width": 1280,
"height": 720,
"fps": 30
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
model: 'kling-v1',
prompt: '宇航员站起身走了',
duration: 5,
width: 1280,
height: 720,
fps: 30
})
};
fetch('https://api.aiid.edu.kg/kling/v1/videos/text2video', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.aiid.edu.kg/kling/v1/videos/text2video",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'model' => 'kling-v1',
'prompt' => '宇航员站起身走了',
'duration' => 5,
'width' => 1280,
'height' => 720,
'fps' => 30
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.aiid.edu.kg/kling/v1/videos/text2video"
payload := strings.NewReader("{\n \"model\": \"kling-v1\",\n \"prompt\": \"宇航员站起身走了\",\n \"duration\": 5,\n \"width\": 1280,\n \"height\": 720,\n \"fps\": 30\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.aiid.edu.kg/kling/v1/videos/text2video")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"model\": \"kling-v1\",\n \"prompt\": \"宇航员站起身走了\",\n \"duration\": 5,\n \"width\": 1280,\n \"height\": 720,\n \"fps\": 30\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.aiid.edu.kg/kling/v1/videos/text2video")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"model\": \"kling-v1\",\n \"prompt\": \"宇航员站起身走了\",\n \"duration\": 5,\n \"width\": 1280,\n \"height\": 720,\n \"fps\": 30\n}"
response = http.request(request)
puts response.read_body{
"task_id": "abcd1234efgh",
"status": "queued"
}{
"error": {
"message": "<string>",
"type": "<string>",
"param": "<string>",
"code": "<string>"
}
}Ủy quyền
Sử dụng xác thực Bearer Token.
Định dạng: Authorization: Bearer sk-xxxxxx
Nội dung
application/json
Yêu cầu tạo video
ID Mô hình/Phong cách
Ví dụ:
"kling-v1"
Lời nhắc mô tả văn bản
Ví dụ:
"宇航员站起身走了"
Đầu vào hình ảnh (URL hoặc Base64)
Ví dụ:
"https://example.com/image.jpg"
Thời lượng video (giây)
Ví dụ:
5
Chiều rộng video
Ví dụ:
1280
Chiều cao video
Ví dụ:
720
Tốc độ khung hình video
Ví dụ:
30
Seed ngẫu nhiên
Ví dụ:
20231234
Số lượng video đã tạo
Ví dụ:
1
Định dạng phản hồi
Ví dụ:
"url"
ID người dùng
Ví dụ:
"user-1234"
Tham số mở rộng (như negative_prompt, style, quality_level, v.v.)
