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á.

GETPOSThttps://apibox.io.vn/v1/vn-tokenize

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ênVị tríKiểuBắt buộcMặc định
textbody|querystringcóVăn bản tiếng Việt (tối đa 200.000 ký tự).
actionbody|querystringkhôngtokenizetokenize hoặc keywords.
separatorbody|querystringkhông_Ký tự nối các âm tiết của một từ.
detailsbody|querybooleankhôngfalseTrả về từng token kèm loại và vị trí.
namesbody|querybooleankhôngtrueGộp âm tiết viết hoa thành tên riêng.
limitbody|querynumberkhông10Số 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."}'

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

Bắt đầu với 1.000 request miễn phí mỗi tháng. Nhận API key miễn phí →