Bỏ qua để đến nội dung

Tính phí và giới hạn tần suất

Trang này giải thích quá trình trừ phí của một yêu cầu từ lúc gửi đến lúc quyết toán, và việc yêu cầu có bị tính phí hay không khi lỗi, bị hủy hoặc bị giới hạn tần suất. Đơn giá và cách tính phí của từng loại mô hình xem tại Giá mô hình.

Mỗi yêu cầu đều trải qua hai bước “tạm giữ → quyết toán”:

  1. Tạm giữ: trước khi chuyển yêu cầu đến upstream, hệ thống tạm giữ một khoản chi phí ước tính từ quota của key và số dư tài khoản. Nếu một trong hai không đủ, yêu cầu bị từ chối ngay, không được gửi đến upstream.
  2. Quyết toán: sau khi yêu cầu hoàn tất, hệ thống tính chi phí thực tế theo mức sử dụng thực mà upstream trả về. Phần tạm giữ thừa được hoàn lại, phần thiếu được trừ thêm.

Cách tính chi phí ước tính:

Loại mô hìnhCách ước tính
Tính phí theo tokenSố token đầu vào cộng max_tokens trong yêu cầu, ước tính theo đơn giá của mô hình
Mô hình giá bậc thangƯớc tính theo mức giá cao nhất, khi quyết toán mới tính theo bậc thực tế
Tính phí theo lần hoặc theo ảnhTạm giữ trực tiếp đơn giá mỗi lần
Tác vụ bất đồng bộ (video, nhạc, v.v.)Tạm giữ số tiền ước tính khi gửi, quyết toán sau khi tác vụ kết thúc

Nguyên tắc là: không phát sinh mức sử dụng phải tính phí thì không tính phí, số tiền tạm giữ được hoàn lại toàn bộ.

Kịch bảnCó tính phí
Key không hợp lệ, đã hết hạn, hoặc số dư, quota của key không đủKhông tính phí, yêu cầu không được gửi đến upstream
Tham số yêu cầu sai, mô hình không khả dụng, không có kênh khả dụngKhông tính phí
Bị giới hạn tần suất (429)Không tính phí
Upstream trả lỗi (4xx / 5xx)Không tính phí, số tiền tạm giữ được hoàn lại toàn bộ
Upstream trả về thành công nhưng mức sử dụng bằng 0Không tính phí
Upstream bị ngắt hoặc hết thời gian chờ trong lúc streamTính phí theo nội dung đã tạo
Tác vụ bất đồng bộ thất bại hoặc hết thời gian chờ (không hoàn tất trong 24 giờ)Không tính phí, số tiền tạm giữ được hoàn lại toàn bộ

RouteAPI tự động thử lại hoặc chuyển sang kênh khác khi upstream gặp lỗi. Cả quá trình chỉ tạm giữ một lần và quyết toán một lần, các lần thử thất bại không bị tính phí; bạn chỉ trả tiền cho lần thành công cuối cùng. Nếu cuối cùng mô hình dự phòng hoàn tất yêu cầu, phí được tính theo giá của mô hình thực sự phục vụ yêu cầu đó.

Với yêu cầu streaming, một khi đã bắt đầu xuất nội dung cho bạn thì sẽ không thử lại nữa. Khi đó nếu upstream bị ngắt, phí được tính theo phần đã tạo.

Kịch bảnCó tính phí
Yêu cầu không streaming, ngắt kết nối trước khi nhận phản hồiKhông tính phí, số tiền tạm giữ được hoàn lại toàn bộ
Yêu cầu streaming, ngắt kết nối giữa chừngCó tính phí, xem giải thích bên dưới
Tác vụ bất đồng bộ (video, nhạc, Midjourney)Không hỗ trợ hủy sau khi gửi

Khi yêu cầu streaming bị ngắt giữa chừng, upstream thường đã và đang tạo nội dung và sẽ tiếp tục tạo đến khi xong. RouteAPI sẽ tiếp tục đọc đầu ra của upstream cho đến khi quá trình tạo kết thúc, và tính phí theo mức sử dụng thực mà upstream đã tạo chứ không chỉ phần bạn đã nhận. Để kiểm soát khoản chi phí này, hãy dùng max_tokens để giới hạn độ dài đầu ra.

Để bảo vệ sự ổn định của nền tảng và upstream, nền tảng có thể giới hạn tần suất yêu cầu mô hình của mỗi tài khoản. Giới hạn được tính theo tài khoản; mọi API key trong cùng một tài khoản dùng chung hạn mức.

Khi bị giới hạn tần suất, hệ thống trả về 429 Too Many Requests, nội dung phản hồi có cùng định dạng với các lỗi khác:

{
"error": {
"message": "... (request id: ...)",
"type": "error",
"code": ""
}
}
  • Yêu cầu bị giới hạn tần suất bị từ chối trước khi tạm giữ, không tính phí.
  • Khi upstream trả về 429, RouteAPI tự động chuyển sang kênh khác để thử lại. Chỉ khi vẫn bị giới hạn tần suất sau khi thử lại thì 429 mới được trả về cho bạn.
  • Phản hồi không kèm header Retry-After. Khuyến nghị client thử lại theo kiểu backoff mũ, ví dụ 1 giây, 2 giây, 4 giây, kèm ngẫu nhiên (jitter).
  • Tách ra nhiều API key không làm tăng hạn mức giới hạn tần suất. Nếu cần tần suất yêu cầu cao hơn, hãy liên hệ với chúng tôi.

API nền tảng (/api/open/v1) có quy tắc giới hạn tần suất riêng, xem tại Lỗi và giới hạn của API nền tảng.

Trong nhật ký usage, bạn có thể xem chi tiết từng yêu cầu bị trừ phí:

TrườngMô tả
Thời gianThời điểm yêu cầu
KeyTên API key đã gửi yêu cầu
Mô hìnhMô hình thực tế được tính phí
Thời gian xử lý / token đầu tiênTổng thời gian; yêu cầu streaming còn hiển thị độ trễ token đầu tiên
Đầu vàoSố token đầu vào; khi trúng cache, số đọc cache và ghi cache được hiển thị riêng
Đầu raSố token đầu ra
Chi phíSố tiền thực tế bị trừ cho lần này
Chi tiếtĐơn giá, hệ số và quá trình tính phí

Trường usage trong phản hồi API cũng trả về mức token sử dụng của lần này:

TrườngMô tả
prompt_tokensToken đầu vào
completion_tokensToken đầu ra; token lý luận của mô hình lý luận cũng được tính vào đây
total_tokensTổng đầu vào và đầu ra
prompt_tokens_details.cached_tokensToken đầu vào trúng cache

Nếu tài khoản có chiết khấu riêng, chi phí trong nhật ký đã là số tiền sau chiết khấu.