Token là gì?
Token là đơn vị mà mô hình AI dùng để đọc và viết chữ. Một token có thể là một từ ngắn, một phần của từ, dấu câu hoặc khoảng trắng. Tiếng Việt có dấu thường tốn nhiều token hơn tiếng Anh cho cùng một ý, vì các ký tự có dấu hay bị tách nhỏ hơn.
Bạn không cần tự đếm token. Mỗi lần gọi API, kết quả trả về có trường usage cho biết số token đầu vào và đầu ra, và mục Mức dùng trong bảng điều khiển cũng ghi lại các con số này.
Công thức tính chi phí
Giá trên trang mô hình là giá cho mỗi 1 triệu token, đầu vào và đầu ra tính riêng:
Chi phí = (token vào / 1.000.000 x giá vào) + (token ra / 1.000.000 x giá ra)
Ví dụ dưới đây dùng số minh họa, không phải giá thật: giả sử một mô hình có giá đầu vào 100.000 ₫ và giá đầu ra 400.000 ₫ cho mỗi 1 triệu token. Một lượt chat có 2.000 token đầu vào và 800 token đầu ra:
| Phần | Phép tính (số minh họa) | Kết quả |
|---|---|---|
| Đầu vào | 2.000 / 1.000.000 x 100.000 ₫ | 200 ₫ |
| Đầu ra | 800 / 1.000.000 x 400.000 ₫ | 320 ₫ |
| Tổng một lượt | 520 ₫ |
Giá thật của từng mô hình, hiển thị bằng đồng:
Giá thực tế hiện tại
Ước tính theo giá ở trang mô hình: mỗi lượt chat 2.000 token input và 500 token output. Số tiền trừ thực tế xem trong bảng điều khiển.
| Mô hình | Mỗi lượt chat | 1.000 lượt chat |
|---|---|---|
| GEM 3.8 Flash | 6 ₫ | 6.307 ₫ |
| TT-6 Luna | 15 ₫ | 15.140 ₫ |
| TT-6.1 Terra | 10 ₫ | 10.333 ₫ |
| HK-5.5 | 5 ₫ | 4.960 ₫ |
| GEM 4 Argon | 120 ₫ | 120.427 ₫ |
| TT-6.1 Sol | 21 ₫ | 20.665 ₫ |
Vì sao token đầu ra thường đắt hơn?
Với hầu hết mô hình, giá đầu ra cao hơn giá đầu vào vì mô hình phải sinh từng token một. Vì vậy câu trả lời dài tốn tiền nhanh hơn câu hỏi dài. Nếu bạn chỉ cần câu trả lời ngắn, hãy nói rõ trong prompt ("trả lời tối đa 3 câu") và đặt max_tokens để giới hạn.
Vì sao hội thoại càng dài càng tốn?
API không tự nhớ hội thoại. Muốn AI nhớ những gì đã nói, ứng dụng phải gửi lại toàn bộ lịch sử ở mỗi lượt. Lượt thứ 10 sẽ gửi cả 9 lượt trước, nên token đầu vào tăng dần dù câu hỏi mới rất ngắn.
| Lượt | Gửi đi | Token đầu vào (ước lượng) |
|---|---|---|
| 1 | Câu hỏi 1 | khoảng 300 |
| 5 | Câu hỏi 1 đến 5 và 4 câu trả lời | khoảng 3.000 |
| 10 | Câu hỏi 1 đến 10 và 9 câu trả lời | khoảng 6.500 |
Điều này cũng đúng với Claude Code: mỗi bước gửi lại nội dung file và lịch sử phiên, nên phiên dài tốn hơn hẳn. Mẹo tiết kiệm có trong bắt đầu với Claude Code.
Cách ước tính chi phí trước khi chạy thật
- Chọn vài trường hợp điển hình của bạn, ví dụ 20 tin nhắn khách hỏi shop online.
- Gửi thử qua API hoặc /chat với mô hình định dùng.
- Vào bảng điều khiển → Mức dùng, ghi lại token đầu vào, đầu ra và chi phí của từng lần.
- Lấy chi phí trung bình mỗi lần nhân với số lần dự kiến mỗi tháng.
- So sánh vài mô hình theo cách đó rồi chọn mô hình hợp ngân sách.
Mục Mức dùng ở menu bên trái bảng điều khiển hiện 50 lần gọi gần nhất, mỗi dòng có mô hình, token đầu vào, token đầu ra và chi phí. Đây là số liệu chính xác nhất, dùng nó thay cho ước lượng.
Muốn xem token ngay trong code:
import os
from openai import OpenAI
client = OpenAI(base_url="https://api.macloudai.com/v1", api_key=os.environ["MACLOUD_API_KEY"])
r = client.chat.completions.create(
model="tt-6-luna",
messages=[{"role": "user", "content": "Giải thích token là gì trong 2 câu."}],
max_tokens=200,
)
print(r.choices[0].message.content)
print("Token vào:", r.usage.prompt_tokens, "| Token ra:", r.usage.completion_tokens)
Theo dõi chi phí theo dự án
Nếu bạn là freelancer làm cho nhiều khách hoặc một nhóm nhỏ chạy nhiều ứng dụng, hãy tạo mỗi dự án một API key với tên dễ nhận ra, ví dụ shop-quan-ao-q1, bot-zalo-spa, claude-code. Mọi key dùng chung một số dư, nhưng nhờ tên key bạn biết ứng dụng nào đang tốn nhiều để tối ưu, và có số liệu để báo giá cho khách.
Khi báo giá một dự án có AI cho khách hàng, hãy chạy thử với dữ liệu thật trước, lấy chi phí trung bình mỗi lần gọi trong mục Mức dùng, rồi cộng thêm một khoản dự phòng vì độ dài câu trả lời mỗi lần mỗi khác.
Mẹo giảm chi phí token
- Chọn đúng mô hình: việc đơn giản dùng mô hình rẻ, xem nên chọn mô hình nào.
- Giữ system prompt ngắn gọn, vì nó bị gửi lại ở mọi lượt.
- Chỉ giữ vài lượt hội thoại gần nhất, hoặc tóm tắt lịch sử cũ thành một đoạn ngắn.
- Đặt
max_tokensvà yêu cầu độ dài trả lời rõ ràng. - Đừng gửi cả tài liệu dài nếu chỉ cần một phần; cắt đúng đoạn liên quan.
Tiền được trừ vào số dư sau mỗi lần gọi; không có phí tháng hay mức chi tối thiểu. So sánh với gói tháng xem trả theo mức dùng có rẻ hơn gói tháng không.