wan2.7-i2v
Wan 2.7 I2V tạo video từ ảnh bắt buộc với chỉ dẫn văn bản và hướng dẫn bằng ảnh kết thúc tùy chọn. Chọn thời lượng, độ phân giải và ratio qua Ailoot.
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 wan2.7-i2v với model và image tại /v1/videos. Yêu cầu cung cấp prompt, negative_prompt, end_image, driving_audio, prompt_extend và watermark. Chọn thời lượng từ hai đến mười lăm giây, độ phân giải 720P hoặc 1080P và ratio là 16:9, 9:16, 1:1, 4:3 hoặc 3:4.
Mô tả hành động cần phát triển từ ảnh nguồn và chi tiết cảnh cần giữ. Tách chuyển động chủ thể khỏi đường đi máy quay. Ảnh kết thúc có thể xác định bố cục cuối dự kiến, còn đầu vào âm thanh cần giữ gắn với yêu cầu để xem xét về sau. Giữ ảnh, khung hình kết thúc tùy chọn và các thiết lập đã chọn bên cạnh cảnh quay hoàn tất.
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 wan2.7-i2v
wan2.7-i2vBắt đầu
Wan 2.7 I2V tạo video từ ảnh bắt buộc với chỉ dẫn văn bản và hướng dẫn bằng ảnh kết thúc tùy chọn. Chọn thời lượng, độ phân giải và ratio 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ườngmodel | Loạistring | Yêu cầuBắt buộc | Giá trị & giới hạn wan2.7-i2v Điều kiện: Dùng chính xác bộ chọn định tuyến Ailoot này. | Mặc định— |
Trườngprompt | Loạistring | 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ườngnegative_prompt | Loạistring | 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ườngimage | Loạistring | Yêu cầuBắ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ườngend_image | Loạistring | 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ườngdriving_audio | Loạistring | 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ườngresolution | Loạistring | Yêu cầuKhông bắt buộc | Giá trị & giới hạn 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— |
Trườngratio | Loạistring | Yêu cầuKhông bắt buộc | Giá trị & giới hạn 16:9, 9:16, 1:1, 4:3, 3:4 Đ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ườngduration | Loạiinteger | Yêu cầuKhông bắt buộc | Giá trị & giới hạn 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 Đ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ườngprompt_extend | Loạiboolean | 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ườngwatermark | Loạiboolean | 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— |
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, image |
Tham sốoptional | Hợp đồngprompt, negative_prompt, end_image, driving_audio, resolution, ratio, duration, prompt_extend, watermark |
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., 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., 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., 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 | Độ phân giải đầu ra | Đơn vị tính phí | Điều kiện 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— | Độ phân giải đầu ra— | Đơn vị tính phí— | Điều kiện 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ìnhVideo đầu ra | Biểu mức phí— | Số lượng dự báo— | Độ phân giải đầu ra1080P | Đơn vị tính phímỗi giây video | Điều kiện tính phíƯớc tính tham khảo cho video đầu ra ở độ phân giải 1080P. Phí cuối cùng tính theo hóa đơn gốc đã ghi nhận. | Phí Đầu ra · Video đầu ra · Ước tính chỉ để so sánh $0.3 mỗi giây video Chỉ là ước tính tham khảo; phí cuối cùng tính theo hóa đơn gốc đã ghi nhận. |
| Cấu hìnhVideo đầu ra | Biểu mức phí— | Số lượng dự báo— | Độ phân giải đầu ra720P | Đơn vị tính phímỗi giây video | Điều kiện tính phíƯớc tính tham khảo cho video đầu ra ở độ phân giải 720P. Phí cuối cùng tính theo hóa đơn gốc đã ghi nhận. | Phí Đầu ra · Video đầu ra · Ước tính chỉ để so sánh $0.2 mỗi giây video Chỉ là ước tính tham khảo; phí cuối cùng tính theo hóa đơn gốc đã ghi nhận. |
| 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 | Độ phân giải đầu ra— | Đơn vị tính phí— | Điều kiện tính phí— | Phí Đầu ra · Chi phí tạo ước tính · Ước tính chỉ để so sánh $0.2 ướ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 →
Ví dụ yêu cầu
Ailoot Ultra · Video
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": "wan2.7-i2v", "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.
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
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}/contentGET /v1/media/assetsGET /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ườngid | Loạistring |
Trườngpolling_url | Loạistring |
Trườngprovider_task_id | Loạistring |
Trườngtask_id | Loạistring |
Trườngstatus | Loạistring |
Trườngvideo_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 wan2.7-i2v
Bí danh đường dẫn phương thức
/v1/videos/generations
ID gọi liên quan
FAQ · wan2.7-i2v
- Có những đầu vào và kết quả nào?
POST /v1/videos·wan2.7-i2v:text,image→video- Yêu cầu sử dụng những trường nào?
POST /v1/videos·wan2.7-i2v:model,prompt,negative_prompt,image,end_image,driving_audio,resolution,ratio,duration,prompt_extend,watermark