Source: https://ailoot.ai/models/vi/vidu-2-0-reference/
Canonical: https://ailoot.ai/models/vi/vidu-2-0-reference/
Language: vi

# Vidu 2.0 Reference

[Markdown](https://ailoot.ai/models/vi/vidu-2-0-reference/index.md) · [JSON](https://ailoot.ai/models/vi/vidu-2-0-reference/facts.json)

## [Vidu 2.0 Reference](https://ailoot.ai/models/vi/vidu-2-0-reference/)

Vidu 2.0 Reference kết hợp bản mô tả video bằng văn bản với ảnh tham chiếu và ảnh kết thúc tùy chọn. Chọn khung hình, độ phân giải và thời lượng bốn hoặc tám giây qua Ailoot.

- [**Ailoot Ultra · Video** `POST /v1/videos` `vidu-2.0-reference`](https://ailoot.ai/models/vi/vidu-2-0-reference/#method-0)

Về mô hình

Mô tả này trình bày khả năng của mô hình. Đầu vào, đầu ra và tùy chọn có trên Ailoot được liệt kê bên dưới cho phương thức đã chọn.

Dùng vidu-2.0-reference với model và prompt tại /v1/videos. Yêu cầu cung cấp image là một chuỗi hoặc một mảng tối đa mười chuỗi, end\_image, aspect\_ratio, duration và resolution. Chọn bốn hoặc tám giây, 360p, 720p hoặc 1080p, cùng khung hình 16:9, 1:1 hoặc 9:16.

Mô tả cảnh quay mới được dẫn dắt bởi các tham chiếu chủ thể đã chọn. Khi cung cấp ảnh, xác định vai trò từng tham chiếu và chi tiết chủ thể cần giữ. Đưa hành động và hướng máy quay thành chỉ dẫn riêng, rồi xác định tư thế hoặc khung hình kết thúc. Giữ ảnh đã chọn, prompt và ảnh kết thúc tùy chọn cùng yêu cầu để so sánh video hoàn tất với đúng tài liệu đó.

Gửi cảnh quay một lần qua /v1/videos và giữ ID yêu cầu trả về. Truy vấn trạng thái của đúng thao tác đó qua /v1/videos/{request\_id}, rồi lưu mọi đầu ra video hoàn tất và toàn bộ phản hồi. Soát toàn bộ hành động và bố cục cuối theo tài liệu được cung cấp và bản mô tả.

**Ailoot Ultra · Video** `POST /v1/videos` `vidu-2.0-reference`

[`vidu-2.0-reference`](https://ailoot.ai/models/vi/#m=vidu-2.0-reference&route=Ultra&caller=vidu-2.0-reference&fmt=videos)

Khác /`vidu-2.0-reference`

### Bắt đầu

Vidu 2.0 Reference kết hợp bản mô tả video bằng văn bản với ảnh tham chiếu và ảnh kết thúc tùy chọn. Chọn khung hình, độ phân giải và thời lượng bốn hoặc tám giây qua Ailoot.

Đầu vào được chấp nhận

Văn bản · Ảnh

Kết quả

Video

### Có trên Ailoot · đầu vào & phương thức

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

Đầu vào

`text`, `image`

Đầu ra

`video`

| Trường | Loại | Yêu cầu | Giá trị & giới hạn | Mặc định |
| --- | --- | --- | --- | --- |
| Trường`model` | Loại`string` | Yêu cầuBắt buộc | Giá trị & giới hạn vidu-2.0-reference Điều kiện: Dùng chính xác bộ chọn định tuyến Ailoot này. | Mặc định— |
| Trường`aspect_ratio` | Loại`string` | Yêu cầuKhông bắt buộc | Giá trị & giới hạn 16:9, 1:1, 9:16 Điều kiện: Dùng trường được tài liệu mô tả và các lựa chọn được liệt kê cho mô hình đã chọn; bỏ qua giá trị tùy chọn chưa được chỉ định. | Mặc định— |
| Trường`duration` | Loại`integer` | Yêu cầuKhông bắt buộc | Giá trị & giới hạn 4, 8 Điều kiện: Dùng trường được tài liệu mô tả và các lựa chọn được liệt kê cho mô hình đã chọn; bỏ qua giá trị tùy chọn chưa được chỉ định. | Mặc định— |
| Trường`end_image` | Loại`string` | Yêu cầuKhông bắt buộc | Giá trị & giới hạn Điều kiện: Dùng trường được tài liệu mô tả và các lựa chọn được liệt kê cho mô hình đã chọn; bỏ qua giá trị tùy chọn chưa được chỉ định. | Mặc định— |
| Trường`image` | Loại`string or array<string>` | Yêu cầuKhông bắt buộc | Giá trị & giới hạn Điều kiện: Cung cấp URL hình ảnh thực tế của bạn có thể truy cập được. Danh sách chỉ được chấp nhận khi lược đồ tham số quy định kiểu mảng. | Mặc định— |
| Trường`prompt` | Loại`string` | Yêu cầuBắt buộc | Giá trị & giới hạn Điều kiện: Dùng trường được tài liệu mô tả và các lựa chọn được liệt kê cho mô hình đã chọn; bỏ qua giá trị tùy chọn chưa được chỉ định. | Mặc định— |
| Trường`resolution` | Loại`string` | Yêu cầuKhông bắt buộc | Giá trị & giới hạn 360p, 720p, 1080p Điều kiện: Dùng trường được tài liệu mô tả và các lựa chọn được liệt kê cho mô hình đã chọn; bỏ qua giá trị tùy chọn chưa được chỉ định. | Mặc định— |

Tham số phương thức và vòng đời

| Tham số | Hợp đồng |
| --- | --- |
| Tham số`content_type` | Hợp đồngapplication/json |
| Tham số`required` | Hợp đồngmodel, prompt |
| Tham số`optional` | Hợp đồngaspect\_ratio, duration, end\_image, image, resolution |
| Tham số`material_types` | Hợp đồngtext, image |
| Tham số`conditions` | Hợp đồngDùng chính xác bộ chọn định tuyến Ailoot này., Dùng trường được tài liệu mô tả và các lựa chọn được liệt kê cho mô hình đã chọn; bỏ qua giá trị tùy chọn chưa được chỉ định., Dùng trường được tài liệu mô tả và các lựa chọn được liệt kê cho mô hình đã chọn; bỏ qua giá trị tùy chọn chưa được chỉ định., Dùng trường được tài liệu mô tả và các lựa chọn được liệt kê cho mô hình đã chọn; bỏ qua giá trị tùy chọn chưa được chỉ định., Cung cấp URL hình ảnh thực tế của bạn có thể truy cập được. Danh sách chỉ được chấp nhận khi lược đồ tham số quy định kiểu mảng., Dùng trường được tài liệu mô tả và các lựa chọn được liệt kê cho mô hình đã chọn; bỏ qua giá trị tùy chọn chưa được chỉ định., Dùng trường được tài liệu mô tả và các lựa chọn được liệt kê cho mô hình đã chọn; bỏ qua giá trị tùy chọn chưa được chỉ định. |

Bí danh phương thức: `/v1/videos/generations`

Vòng đời: `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}`

### Bảng giá

##### Cách tính phí cuối cùng

Các đơn giá hiển thị dùng để ước tính chi phí trước khi tạo. Khoản phí cuối cùng được tính dựa trên chi phí ghi nhận cho lượt tạo gốc. Thời lượng đầu ra đo được và số lượng dự kiến không phải là số lượng cuối cùng dùng để tính phí.

Thông tin biểu giá không bổ sung tùy chọn yêu cầu. Các tham số được hỗ trợ nằm trong phương thức đã chọn.

Chế độ nhanh

Chưa chỉ định Khi chọn chế độ nhanh

Chế độ Flex

Chưa chỉ định Khi chọn chế độ flex

Mức độ suy luận tối đa

Chưa chỉ định Khi áp dụng mức điều chỉnh mặc định (default) cho mức độ suy luận tối đa

#### Mức phí ước tính để so sánh

#### Giá theo cấu hình

Đối chiếu từng khoản phí với điều kiện hiển thị. Dùng một mức phí cho mỗi nhóm cấu hình thay thế.

| Cấu hình | Biểu mức phí | Số lượng dự báo | Lượng dùng để tính phí | Phí |
| --- | --- | --- | --- | --- |
| Cấu hìnhGiá cơ sở cho token | Biểu mức phíMức phí cơ bản | Số lượng dự báo— | Lượng dùng để tính phí— | Phí Đầu vào · Token đầu vào · Ước tính chỉ để so sánh **—** / 1K token Đầu ra · Token đầu ra · Ước tính chỉ để so sánh **—** / 1K token Đầu vào · Đọc bộ nhớ đệm · Ước tính chỉ để so sánh **—** / 1K token Đầu vào · Ghi bộ nhớ đệm · Ước tính chỉ để so sánh **—** / 1K token Đầu vào · Ghi bộ nhớ đệm, 1 giờ · Ước tính chỉ để so sánh **—** / 1K token |
| Cấu hìnhMỗi yêu cầu | Biểu mức phí— | Số lượng dự báo— | Lượng dùng để tính phímột yêu cầu | Phí Đầu vào · Ước tính chỉ để so sánh **$0.8** mỗi yêu cầu |
| Cấu hìnhChi phí tạo ước tính | Biểu mức phí— | Số lượng dự báoước tính cho một lần tạo | Lượng dùng để tính phí— | Phí Đầu ra · Chi phí tạo ước tính · Ước tính chỉ để so sánh **$0.8** ước tính trước khi tạo Ước tính này không phải là khoản phí bổ sung hay mức giá cố định cho lượt tạo đã hoàn tất. |

Ailoot tạm giữ một khoản ước tính trước yêu cầu. Sau khi có kết quả, phí cuối cùng được quyết toán theo mức sử dụng đo được. Việc quyết toán khi truyền luồng dùng bản ghi mức sử dụng cuối cùng. [Cách hoạt động của cơ chế tạm giữ và quyết toán →](https://ailoot.ai/docs/vi/billing/reserve/)

### Ví dụ yêu cầu

#### Ailoot Ultra · Video

curl · chỉ tạo một lần và giữ lại kết quả đầy đủĐọc tác vụ gốcLưu từng tài nguyên đã hoàn tất thuộc quyền sở hữu của bạn

```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": "vidu-2.0-reference", "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
```

### Nhận và lưu kết quả

#### 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}`

##### Lưu tất cả kết quả đã hoàn tất

Lưu mọi video đã hoàn tất hoặc tệp trả về; truy xuất từng URL tài nguyên thực tế được trả về.

Giữ lại toàn bộ phản hồi và tiêu đề, các mã định danh gốc, mọi đầu ra thực tế và tất cả trường mức sử dụng/hạch toán. Lưu từng tài sản duy nhất thuộc quyền sở hữu và giữ lại mọi vai trò tham chiếu đến tài sản đó.

##### Nếu cần kiểm tra phản hồi gốc

Giữ lại id tác vụ hoặc thao tác công khai được trả về và tất cả tiêu đề. Chỉ đọc tác vụ ban đầu; unknown hoặc result\_pending\_check không cho phép tạo thêm tác vụ.

Trường phản hồi

| Trường | Loại |
| --- | --- |
| Trường`id` | Loạistring |
| Trường`polling_url` | Loạistring |
| Trường`provider_task_id` | Loạistring |
| Trường`task_id` | Loạistring |
| Trường`status` | Loạistring |
| Trường`video_url` | Loạistring |

Lỗi và bước tiếp theo

| Phản hồi | Điều kiện | Bước tiếp theo |
| --- | --- | --- |
| Phản hồi400 · `invalid_request_error` | Điều kiệnTrường bắt buộc, bộ chọn mô hình, kiểu dữ liệu hoặc cách biểu diễn đầu vào không hợp lệ. | Bước tiếp theoXem chi tiết kết quả kiểm tra tính hợp lệ được trả về trước khi chuẩn bị một yêu cầu riêng. |
| Phản hồi`` | Điều kiệnYêu cầu hoặc kết quả gốc chưa xác định hoặc cần kiểm tra. | Bước tiếp theoGiữ nguyên các mã định danh và trường tiêu đề gốc; chỉ đọc các bản ghi trạng thái/thư viện được hỗ trợ. Không gửi lại yêu cầu tạo. |

### Bí danh

#### Bí danh mô hình

**Ailoot Ultra** [`vidu-2.0-reference`](https://ailoot.ai/models/vi/#m=vidu-2.0-reference&route=Ultra&caller=vidu-2.0-reference&fmt=videos)

#### Bí danh đường dẫn phương thức

`/v1/videos/generations`

#### ID gọi liên quan

[`vidu-2.0-reference`](https://ailoot.ai/models/vi/#m=vidu-2.0-reference&route=Ultra&caller=vidu-2.0-reference&fmt=videos)

FAQ · Vidu 2.0 Reference

Có những đầu vào và kết quả nào?

`POST /v1/videos` · `vidu-2.0-reference`: `text`, `image` → `video`

Yêu cầu sử dụng những trường nào?

`POST /v1/videos` · `vidu-2.0-reference`: `model`, `aspect_ratio`, `duration`, `end_image`, `image`, `prompt`, `resolution`

Kết nối Ailoot với Claude Code, OpenCode, Hermes hoặc ứng dụng của bạn.

## Công ty và danh mục dự án của công ty

Công ty và danh mục dự án của công ty: hàng triệu khách hàng; doanh số hàng tỷ mỗi tháng.

## Mua token với giá ưu đãi.

Ưu đãi thuê bao cho nhu cầu thường xuyên. Mã khuyến mãi giảm đến 50% khi mua token.

Thuê bao

Chọn gói ưu đãi cho các yêu cầu thường xuyên của bạn.

Mã giảm đến 50%

Nhập mã khi mua. Giá được tính lại theo chương trình đang áp dụng.

Chi phí trong lịch sử

Mô hình, token và số tiền được lưu cho mỗi yêu cầu.

[Chọn gói thuê bao](https://ailoot.ai/docs/vi/billing/subscriptions/) · [Xem giá mô hình](https://ailoot.ai/models/vi/)

## Kết nối API vào sản phẩm bạn đang bán.

SaaS, ứng dụng và bot — theo đề nghị giao kết chính thức và thỏa thuận cấp phép Ailoot. Muốn bán lại, hãy yêu cầu giấy phép bán lại.

Ứng dụng thương mại

Tích hợp tạo văn bản, ảnh, video và âm thanh vào các tính năng trả phí của dịch vụ.

Giấy phép bán lại

Gửi mô tả dự án và cách cung cấp quyền truy cập. Yêu cầu điều khoản sử dụng và bán lại bằng văn bản.

Tài liệu trên website

Đề nghị giao kết, thỏa thuận cấp phép và chính sách xử lý dữ liệu có sẵn trước khi kết nối.

[Yêu cầu giấy phép bán lại](mailto:support@ailoot.ai) · [Đề nghị giao kết và thỏa thuận cấp phép](https://ailoot.ai/legal/offer?lang=vi)

## Ailoot · Công ty và danh mục dự án của công ty





Ailoot dựa trên kinh nghiệm vận hành tích lũy, cơ sở khách hàng lớn, dịch vụ ổn định và việc kiểm soát KPI liên tục.





Công ty và danh mục dự án của công ty: hàng triệu khách hàng; doanh số hàng tỷ mỗi tháng.





Ailoot áp dụng kinh nghiệm vận hành này để cung cấp quyền truy cập API vào các tính năng AI trong sản phẩm của khách hàng, tác tử, ứng dụng và quy trình tự động hóa.
