0
0
Lập trình
TT

Khám Phá Bộ Công Cụ Ngôn Ngữ Tự Nhiên trên HarmonyOS NEXT

Đăng vào 2 tuần trước

• 5 phút đọc

Chủ đề:

KungFuTech

Giới Thiệu

HarmonyOS NEXT giới thiệu một công cụ mạnh mẽ cho việc hiểu văn bản: Bộ Công Cụ Ngôn Ngữ Tự Nhiên. Dành cho các nhà phát triển muốn tích hợp các tính năng ngôn ngữ thông minh vào ứng dụng của họ, bộ công cụ này cung cấp các khả năng Xử Lý Ngôn Ngữ Tự Nhiên (NLP) cốt lõi hoạt động tự nhiên trong hệ sinh thái Harmony.

Bộ Công Cụ Ngôn Ngữ Tự Nhiên không chỉ đơn thuần là một tiện ích văn bản — nó tạo nền tảng cho việc xây dựng các ứng dụng thông minh, hiểu biết ngữ cảnh. Dù bạn đang phát triển một công cụ tìm kiếm, chatbot, ứng dụng đọc tin tức, hay một trợ lý thông minh, bộ công cụ này có thể giúp ứng dụng của bạn hiểu văn bản về mặt ngữ nghĩa và cấu trúc, trong thời gian thực.

Hiện tại, nó cung cấp hai tính năng cơ bản:

  1. Phân Tách Từ: Phân tách văn bản thô thành các đơn vị từ riêng lẻ, rất quan trọng cho các nhiệm vụ NLP tiếp theo như trích xuất từ khóa, phân tích ngữ nghĩa và tối ưu hóa đầu vào tìm kiếm.
  2. Trích Xuất Thực Thể: Phát hiện các phần tử có ý nghĩa trong văn bản như tên, địa điểm, ngày tháng, email, số điện thoại, và nhiều hơn nữa — cho phép các trường hợp sử dụng như tự động điền biểu mẫu, cải thiện trải nghiệm đọc, hoặc hỗ trợ trong dịch vụ khách hàng.

Với những tính năng này, các nhà phát triển có thể:

  • Trích xuất thông tin có cấu trúc từ đầu vào không có cấu trúc.
  • Xây dựng các giao diện người dùng thông minh hiểu những gì người dùng viết.
  • Nâng cao các tính năng ứng dụng như tự động hoàn thành, đánh dấu văn bản, xác thực dữ liệu, và phản hồi theo ngữ cảnh.

Điều tuyệt vời nhất? Tất cả đều được thực hiện bằng các cuộc gọi API đơn giản, mà không cần mô hình ML bên ngoài hay thư viện phức tạp.

Bây giờ, hãy cùng tìm hiểu chi tiết về từng tính năng — cách chúng hoạt động, cách sử dụng và nơi chúng tỏa sáng.

🔍 Phân Tách Từ

Định Nghĩa:
Phân tách từ phân chia một câu thành các đơn vị có nghĩa như từ hoặc cụm từ. Điều này đặc biệt quan trọng trong các ngôn ngữ như tiếng Trung, nơi các từ không được ngăn cách bởi khoảng trắng. Nó cũng hữu ích trong tiếng Anh cho việc trích xuất từ khóa và phân tích ngữ nghĩa.

Ví Dụ Về Trường Hợp Sử Dụng:
Khi một người dùng nhập một câu vào ô tìm kiếm, hệ thống phân tách câu thành các từ để trích xuất từ khóa liên quan.

Ngôn Ngữ Hỗ Trợ: Tiếng Trung giản thể, Tiếng Trung phồn thể, Tiếng Anh
Độ Dài Văn Bản Tối Đa: 1000 ký tự
Lưu Ý: Không hỗ trợ trên các trình giả lập.

Luồng Phát Triển

  1. Nhập bộ công cụ
javascript Copy
import { textProcessing } from '@kit.NaturalLanguageKit';
  1. Nhập dữ liệu thông qua TextInput.

  2. Sử dụng textProcessing.getWordSegment(inputText) để nhận kết quả phân tách.

javascript Copy
let result = await textProcessing.getWordSegment(this.inputText);
  1. Định dạng phản hồi để hiển thị:
javascript Copy
Word[0]: HarmonyOS, Tag: Danh từ 
Word[1]: là, Tag: Động từ 
Word[2]: tuyệt vời, Tag: Tính từ

Mẹo: Bạn có thể dễ dàng liên kết chức năng này với một nút để xử lý theo thời gian thực trong giao diện người dùng.

🧠 Trích Xuất Thực Thể

Định Nghĩa:

Trích xuất thực thể tự động phát hiện thông tin có ý nghĩa từ văn bản. Những thông tin này bao gồm các tài sản như tên liên lạc, địa chỉ email, số điện thoại, ngày và giờ. Do đó, nội dung văn bản từ người dùng có thể được chuyển đổi thành dữ liệu có cấu trúc.

📚 Các Loại Thực Thể Có Thể Nhận Diện:

  • 📅 DATETIME : Thông tin ngày và giờ (ví dụ: “18 tháng 6, 2024”)
  • ✉️ EMAIL : Địa chỉ email
  • 📦 EXPRESS_NO : Số theo dõi giao hàng
  • ✈️ FLIGHT_NO : Số chuyến bay
  • 📍 LOCATION : Địa điểm / địa chỉ
  • 👤 NAME : Tên liên lạc
  • 📞 PHONE_NO : Số điện thoại
  • 🌐 URL : Địa chỉ web
  • 🔐 VERIFICATION_CODE : Mã xác minh
  • 🆔 ID_NO : Số ID

Ví Dụ Về Trường Hợp Sử Dụng:

Ứng dụng đọc tin tức: Nhấn mạnh thông tin về người, địa điểm và ngày tháng quan trọng trong văn bản.

Dịch vụ khách hàng: Tự động trích xuất thông tin như điện thoại, giao hàng hoặc mã xác minh từ văn bản do người dùng gửi.

Ứng dụng tài chính: Đơn giản hóa giao dịch bằng cách phát hiện danh tính hoặc mã xác minh.

Ngôn Ngữ Hỗ Trợ: Tiếng Trung giản thể, Tiếng Trung phồn thể, Tiếng Anh
Độ Dài Văn Bản Tối Đa: 1000 ký tự
Lưu Ý: Không hỗ trợ trên các trình giả lập.

Luồng Phát Triển:

  1. Bao gồm thư viện trong dự án:
javascript Copy
import { textProcessing, EntityType } from '@kit.NaturalLanguageKit';
  1. Xác định các loại thực thể bạn muốn phát hiện:
javascript Copy
entityTypes: [EntityType.NAME, EntityType.PHONE_NO]
  1. Khi nút được nhấn, gọi hàm getEntity():
javascript Copy
let result = await textProcessing.getEntity(this.inputText, { entityTypes: [...] });
  1. Xử lý kết quả như sau:
javascript Copy
Entity[0]:
  oriText: John Smith
  charOffset: 5
  entityType: NAME
  jsonObject: {...}

Thực Tiễn Tốt Nhất

  • Đảm bảo kiểm tra các ngôn ngữ được hỗ trợ trước khi triển khai.
  • Tối ưu hóa đầu vào người dùng để giảm thiểu lỗi trong quá trình phân tách và trích xuất.

Những Cạm Bẫy Thường Gặp

  • Không sử dụng trên các trình giả lập có thể dẫn đến kết quả không chính xác.
  • Đảm bảo xử lý trường hợp văn bản vượt quá độ dài tối đa cho phép.

Mẹo Hiệu Suất

  • Sử dụng các cuộc gọi API không đồng bộ để tăng tốc độ xử lý.
  • Kiểm tra các kết quả đầu ra và xử lý lỗi kịp thời.

Khắc Phục Sự Cố

  • Nếu không nhận được kết quả như mong đợi, kiểm tra lại định dạng văn bản đầu vào.
  • Đảm bảo rằng các loại thực thể được chỉ định chính xác trong mã.

Kết Luận

Bộ Công Cụ Ngôn Ngữ Tự Nhiên của HarmonyOS NEXT cung cấp cho các nhà phát triển các công cụ NLP dễ sử dụng và tích hợp sẵn. Nó cho phép bạn thực hiện các thao tác cơ bản, chẳng hạn như phân tách từ và trích xuất tài sản, nhanh chóng và hiệu quả trên thiết bị.

Bộ công cụ này là một bước quan trọng trong xử lý ngôn ngữ tự nhiên trong hệ sinh thái Harmony, cung cấp một cơ sở hạ tầng mạnh mẽ cho các ứng dụng thông minh từ công cụ tìm kiếm đến chatbot, ứng dụng tin tức đến hệ thống hỗ trợ khách hàng.

Hiểu ứng dụng của bạn giờ đây chỉ cần một vài dòng mã.

Tài Liệu Tham Khảo

Bộ Công Cụ Ngôn Ngữ Tự Nhiên

Tác Giả: Baris Tuzemen

Gợi ý câu hỏi phỏng vấn
Không có dữ liệu

Không có dữ liệu

Bài viết được đề xuất
Bài viết cùng tác giả

Bình luận

Chưa có bình luận nào

Chưa có bình luận nào