Tách từ tiếng Việt API
Tách văn bản tiếng Việt thành từ (học sinh, thành phố, trí tuệ nhân tạo) thay vì từng âm tiết, nhận diện tên riêng, địa danh và trích từ khoá.
Tiếng Việt viết cách mỗi âm tiết, nên “học sinh” trông như hai từ với công cụ tìm kiếm và xử lý văn bản. API tách từ gộp các âm tiết thành từ dựa trên từ điển khoảng 25.000 từ nhiều âm tiết cùng tên các tỉnh thành, phường xã, và chọn cách tách có ít token nhất: “Học sinh trường Nguyễn Trãi … tại Thành phố Hồ Chí Minh” → Học_sinh trường Nguyễn_Trãi … tại Thành_phố Hồ_Chí_Minh.
Các âm tiết viết hoa liên tiếp được gộp thành tên riêng (người, tổ chức), không nuốt các từ xưng hô như Ông, Bà hay chữ viết tắt như THPT. segmented trả về văn bản với các từ nối bằng _ (hoặc ký tự separator của bạn), định dạng mà đa số công cụ NLP tiếng Việt dùng; details=true thêm từng token kèm loại (từ, âm tiết, tên riêng, số, dấu câu) và vị trí ký tự.
action=keywords xếp hạng các từ nhiều âm tiết và tên riêng của văn bản theo tần suất, độ dài và vị trí, bỏ qua các cụm từ chức năng thông dụng, dùng để gắn tag, chọn từ khoá SEO hay làm bộ lọc tìm kiếm. Từ điển được tự động cập nhật hằng tuần từ nguồn gốc.
Tham số
| Tên | Vị trí | Kiểu | Bắt buộc | Mặc định | |
|---|---|---|---|---|---|
text | body|query | string | có | Văn bản tiếng Việt (tối đa 200.000 ký tự). | |
action | body|query | string | không | tokenize | tokenize hoặc keywords. |
separator | body|query | string | không | _ | Ký tự nối các âm tiết của một từ. |
details | body|query | boolean | không | false | Trả về từng token kèm loại và vị trí. |
names | body|query | boolean | không | true | Gộp âm tiết viết hoa thành tên riêng. |
limit | body|query | number | không | 10 | Số từ khoá (1–100). |
Ví dụ
curl -X POST "https://apibox.io.vn/v1/vn-tokenize" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"Chính phủ yêu cầu các bộ ngành đẩy mạnh chuyển đổi số và phát triển trí tuệ nhân tạo trong doanh nghiệp."}'const res = await fetch('https://apibox.io.vn/v1/vn-tokenize', {
method: 'POST',
headers: {
Authorization: 'Bearer YOUR_API_KEY',
'Content-Type': 'application/json',
},
body: JSON.stringify({
"text": "Chính phủ yêu cầu các bộ ngành đẩy mạnh chuyển đổi số và phát triển trí tuệ nhân tạo trong doanh nghiệp."
}),
});
const data = await res.json();
console.log(data);import requests
res = requests.post(
"https://apibox.io.vn/v1/vn-tokenize",
headers={"Authorization": "Bearer YOUR_API_KEY"},
json={"text": "Chính phủ yêu cầu các bộ ngành đẩy mạnh chuyển đổi số và phát triển trí tuệ nhân tạo trong doanh nghiệp."},
timeout=30,
)
print(res.json())<?php
$ch = curl_init('https://apibox.io.vn/v1/vn-tokenize');
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_HTTPHEADER => ['Authorization: Bearer YOUR_API_KEY', 'Content-Type: application/json'],
CURLOPT_POSTFIELDS => '{"text":"Chính phủ yêu cầu các bộ ngành đẩy mạnh chuyển đổi số và phát triển trí tuệ nhân tạo trong doanh nghiệp."}',
]);
$response = curl_exec($ch);
print_r(json_decode($response, true));Kết quả trả về
{
"action": "tokenize",
"count": 13,
"multi_syllable": 7,
"segmented": "Chính_phủ yêu_cầu các bộ ngành đẩy_mạnh chuyển_đổi số và phát_triển trí_tuệ_nhân_tạo trong doanh_nghiệp.",
"note": "Dictionary-based segmentation …"
}
Ứng dụng
- Tìm kiếm tốt hơn: đánh chỉ mục theo từ thay vì âm tiết
- Gắn tag, từ khoá SEO cho bài viết, sản phẩm
- Tiền xử lý cho học máy, phân tích dữ liệu
- Đếm từ, tô sáng từ trong trình soạn thảo
Hỏi đáp
Độ chính xác thế nào?
Tách từ theo từ điển xử lý đúng phần lớn văn bản thông thường; thuật ngữ mới, tiếng lóng và tên hiếm vẫn để từng âm tiết. Mô hình thống kê xử lý cụm nhập nhằng tốt hơn nhưng nặng hơn nhiều.
Vì sao có dấu gạch dưới?
Nối âm tiết bằng _ là quy ước của các kho ngữ liệu NLP tiếng Việt (VLSP, underthesea, pyvi), nên kết quả dùng được ngay với các công cụ đó. Dùng separator= để đổi ký tự.
Có nhận diện tên riêng không?
Có, các âm tiết viết hoa liên tiếp được gộp (Nguyễn Văn An), còn địa danh lấy từ danh mục tỉnh thành, phường xã chính thức.
API liên quan
So sánh văn bản
So sánh hai đoạn văn bản theo dòng, từ, ký tự, câu hoặc JSON; nhận danh sách thay đổi, tỉ lệ giống nhau và bản diff dạng unified.
a-bTạo slug
Chuyển tiêu đề thành slug URL gọn gàng: bỏ dấu tiếng Việt (cả chữ đ), tuỳ chọn ký tự phân cách, giữ chữ hoa và giới hạn độ dài.
123Thống kê văn bản
Đếm số từ, ký tự, câu, đoạn và dòng; ước tính thời gian đọc và thời gian nói; liệt kê các từ xuất hiện nhiều nhất trong văn bản.