Đếm token GPT-4o / GPT-5 online

Đếm token chính xác theo encoding OpenAI (o200k_base, cl100k_base), ước lượng cho model khác, cắt văn bản đúng N token và chia chunk cho RAG.

Công cụ miễn phí: 20 request mỗi phút.

Kết quả

Bấm “Chạy” để xem kết quả.

Đếm token bằng đúng bộ tách token của OpenAI: o200k_base (GPT-4o, GPT-4.1, GPT-5, o1 / o3 / o4) và cl100k_base (GPT-4, GPT-3.5, text-embedding-3), dùng bảng ranks của tiktoken qua thư viện gpt-tokenizer. Truyền model (ví dụ gpt-4o) để tự chọn encoding. Kết quả còn có số ký tự, số từ, số token mỗi từ, chi phí ước tính (price_per_million) và kiểm tra giới hạn (max_tokens). Với Claude, Gemini, Llama, Mistral, Qwen và DeepSeek, vốn không công bố hoặc không đóng gói được bộ tách token, API trả về con số ước lượng có ghi rõ và kèm khoảng sai số, không bao giờ coi là chính xác.

action=truncate cắt văn bản còn tối đa max_tokens token (giữ phần đầu, hoặc giữ phần cuối với keep=end) mà không làm vỡ ký tự. action=chunk chia văn bản dài để làm RAG: ưu tiên ranh giới heading Markdown, rồi đoạn văn, dòng, câu (xử lý đúng câu tiếng Việt với các chữ viết tắt như "TP.", "ThS."), rồi đến từ; gom các mảnh đến max_tokens và thêm phần overlap gồm các câu trọn vẹn. Mỗi chunk có vị trí ký tự start / end chính xác trong văn bản gốc. action=encode / decode chuyển qua lại giữa văn bản và mã token.

Với văn bản tiếng Việt, kết quả cho biết tốn hơn tiếng Anh bao nhiêu (vietnamese_vs_english, đo trên cùng một đoạn văn ở hai ngôn ngữ). Token đặc biệt như <|endoftext|> được tính như văn bản thường, trừ khi special=true. Giới hạn: 1 triệu ký tự (500.000 ký tự khi chia chunk). Văn bản chỉ được xử lý trong bộ nhớ, không lưu lại.

Dùng trong code của bạn

curl -X POST "https://apibox.io.vn/v1/llm-tokens" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"text":"Xin chào! Hôm nay trời đẹp, chúng ta đi dạo nhé."}'

Tài liệu API → Nhận API key miễn phí

Hỏi đáp

Số token của Claude và Gemini có chính xác không?

Không. Bộ tách token của các hãng này không công khai nên đó là con số ước lượng, tính từ số token chính xác của OpenAI nhân hệ số theo loại chữ, kèm khoảng sai số. Khi cần số chính xác hãy dùng API đếm token của chính hãng.

Vì sao tiếng Việt tốn token hơn tiếng Anh?

Bộ tách token được huấn luyện chủ yếu trên tiếng Anh nên âm tiết tiếng Việt có dấu bị tách thành nhiều mảnh hơn. Với o200k_base chênh lệch nhỏ (khoảng 1,15 lần trên đoạn văn mẫu); cl100k_base cũ hơn thì tốn hơn nhiều.

Chunk có cắt ngang câu không?

Chỉ khi một câu dài hơn max_tokens. Còn lại chunk luôn kết thúc ở ranh giới heading, đoạn, dòng hoặc câu, và vị trí start / end giúp ánh xạ chunk về văn bản gốc.