Skip to main content

A Python library for Vietnamese text normalization and processing

Project description

VnAuto

VnAuto là một thư viện Python mạnh mẽ dành cho xử lý ngôn ngữ tự nhiên tiếng Việt. Thư viện này được thiết kế để hỗ trợ các nhà phát triển trong việc chuẩn hóa văn bản, loại bỏ stopwords, xử lý emoji, chuyển đổi số thành chữ, chuẩn hóa ngày tháng, và nhiều tính năng khác.


Tính năng nổi bật

  • Chuẩn hóa văn bản tiếng Việt: Chuyển đổi văn bản không dấu, viết tắt, teencode về dạng chuẩn.
  • Xử lý stopwords: Loại bỏ các từ không cần thiết trong tiếng Việt.
  • Chuyển đổi số thành chữ: Hỗ trợ chuyển đổi các số (bao gồm ngày, tháng, năm) sang dạng chữ.
  • Xử lý emoji: Phát hiện và chuẩn hóa emoji trong văn bản.
  • Xử lý ký tự đặc biệt: Loại bỏ hoặc chuẩn hóa các ký tự đặc biệt và dấu câu.
  • Tùy chỉnh linh hoạt: Người dùng có thể bật/tắt từng tính năng theo nhu cầu.

Cài đặt

Cài đặt thư viện dễ dàng bằng pip:

pip install vnauto

Hướng dẫn sử dụng

Khởi tạo thư viện

from vnauto import get_vnauto_instance

# Tạo đối tượng xử lý
vnauto = get_vnauto_instance()

# Văn bản cần chuẩn hóa
text = "Xin chào mn! Hnay là ngày 21/10/2024 :D"

# Chuẩn hóa văn bản
result = vnauto.normalize(text)
print(result)

Đầu vào mẫu:

"Xin chào mn! Hnay là ngày 21/10/2024 :D"

Kết quả đầu ra:

"xin chào mọi người! hôm nay là ngày hai mốt tháng mười năm hai nghìn không trăm hai mươi bốn :D"

Các chức năng chi tiết

1. Chuẩn hóa văn bản

Chuyển đổi teencode, từ viết tắt, và các từ sai chính tả về dạng chuẩn.

text = "Ko bít mai có đi học k?"
result = vnauto.normalize(text)
# Kết quả: "không biết mai có đi học không?"

2. Chuyển đổi số thành chữ

Chuyển đổi số sang dạng chữ tiếng Việt.

text = "Hôm nay là ngày 21 tháng 10 năm 2024"
result = vnauto.normalize(text)
# Kết quả: "hôm nay là ngày hai mốt tháng mười năm hai nghìn không trăm hai mươi bốn"

3. Xử lý stopwords

Loại bỏ các từ không cần thiết (ví dụ: "là", "của", "và", ...).

text = "Đây là một ví dụ về stopwords"
result = vnauto.normalize(text)
# Kết quả: "Đây ví dụ stopwords"

4. Xử lý emoji

Chuẩn hóa hoặc loại bỏ emoji trong văn bản.

text = "Xin chào 😊! Tôi rất vui 😍"
result = vnauto.normalize(text)
# Kết quả: "xin chào! tôi rất vui"

5. Chuẩn hóa ký tự đặc biệt

Loại bỏ hoặc chuẩn hóa các ký tự không cần thiết như dấu chấm câu liên tiếp, khoảng trắng thừa.

text = "Hello!!!    Đây là văn   bản  . ."
result = vnauto.normalize(text)
# Kết quả: "hello đây là văn bản"

Tùy chỉnh tính năng

Thư viện cho phép bật/tắt từng tính năng qua tham số features trong phương thức normalize.

features = {
    "unicode": True,
    "lowercase": True,
    "currencyUnit": True, 
    "acronyms": True,
    "acronymsShorten": True,
    "teencode": True,
    "date": True,
    "numbers": True,
    "stopwords": False,
    "symbols": True,
    "prefixUnit": True,
    "token": True,
    "character": True,
    "emoji": True,
    "fix_punct_space": True,
    "dedup_punct": True,
    "trim_extra_chars": True,
    "remove_punct": True,
    "fix_whitespace": True,
    "clean_underscores": True,
}
result = vnauto.normalize(text, features=features)

Tài liệu

Tham khảo tài liệu đầy đủ tại GitHub VnAuto.


Đóng góp

Nếu bạn có ý tưởng hoặc muốn đóng góp cho thư viện, hãy mở Pull Request hoặc Issue tại GitHub Repository.


Thông tin liên hệ


Hãy sử dụng VnAuto để chuẩn hóa và xử lý văn bản tiếng Việt dễ dàng hơn bao giờ hết! 😊

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

vnauto-1.0.0.tar.gz (93.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

vnauto-1.0.0-py3-none-any.whl (95.0 kB view details)

Uploaded Python 3

File details

Details for the file vnauto-1.0.0.tar.gz.

File metadata

  • Download URL: vnauto-1.0.0.tar.gz
  • Upload date:
  • Size: 93.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.10.12

File hashes

Hashes for vnauto-1.0.0.tar.gz
Algorithm Hash digest
SHA256 e96201d7a94a99967b76da9aac64c9b7dc9f99667d6ffe5d78b0982533fb846d
MD5 fca3605c6f1ecf20646d30afb427753e
BLAKE2b-256 60695e243ddc70d27c12172d5d285542b92f14e0e0c53bcefa700487faa1f7e0

See more details on using hashes here.

File details

Details for the file vnauto-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: vnauto-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 95.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.10.12

File hashes

Hashes for vnauto-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 46c606e87860bb091c5700266a8c4d7767b64ac6c54a718c2e8cd74326ef0f8d
MD5 2c1d81fabe12dc873ca4b79d1aaaadb6
BLAKE2b-256 d68f90c0ed8e00259ed4023f39c3d718ea248ae833168774bd936bb815b35ecb

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page