Với tính năng Xử lý ngôn ngữ tự nhiên (NLP), bạn có thể hiểu được và trích xuất thông tin có ý nghĩa (ngày, giờ và nhiều thông tin khác) từ những tin nhắn mà doanh nghiệp của bạn nhận được. Bạn có thể dùng thông tin này để xác định ý định triển khai trải nghiệm nhắn tin cần thiết cho cuộc trò chuyện.
Việc sử dụng NLP tích hợp của Meta sẽ góp phần giảm số lệnh gọi API tính theo giới hạn tốc độ nhắn tin.
Trước khi doanh nghiệp của bạn nhận được một tin nhắn, trước tiên, NLP tích hợp của Meta sẽ phân tích cú pháp tin nhắn để phát hiện ý nghĩa và trích xuất thông tin bằng Wit.ai từ Meta cũng như mức độ tin cậy cho biết xác suất chính xác của trình phân tích cú pháp. Sau đó, tin nhắn này sẽ được chuyển đến doanh nghiệp của bạn như bình thường cùng với mọi thông tin có ý nghĩa, các thực thể và đặc điểm được phát hiện trong tin nhắn. Ví dụ: nếu tin nhắn chứa cụm từ như "hello, tomorrow at 2pm" (xin chào, 14h ngày mai nhé) thì bạn sẽ nhận được một đặc điểm bao gồm lời chào và một thực thể bao gồm nhãn thời gian thực tế.
NLP tích hợp sẽ tự động bật ID ngôn ngữ, cũng như tự động bản địa hóa ngày và giờ dựa theo ngôn ngữ trên trang cá nhân của người dùng.
Wit.ai là ứng dụng phân tích cú pháp tin nhắn và tạo các thực thể từ tin nhắn của một người. Bạn có thể dùng Wit.ai mặc định cho các ngôn ngữ được hỗ trợ hoặc tạo ứng dụng Wit.ai riêng cho từng ngôn ngữ bạn muốn hỗ trợ. Khi nhận được tin nhắn, trước tiên, Nền tảng Messenger sẽ tìm ngôn ngữ được phát hiện nhiều nhất rồi dùng ứng dụng Wit.ai được liên kết để trích xuất các thực thể. Nếu không có ứng dụng Wit.ai nào liên kết với ngôn ngữ được phát hiện nhiều nhất đó, mô hình ngôn ngữ mặc định sẽ được sử dụng.
Hãy truy cập tài liệu về Wit.ai của chúng tôi để biết thêm thông tin liên quan đến ứng dụng Wit.ai, cách tạo và thử nghiệm ứng dụng Wit.ai tùy chỉnh của riêng bạn cũng như danh sách các ngôn ngữ được hỗ trợ .
Bạn có thể thêm NLP vào Trang kinh doanh của mình theo 2 cách: thông qua Bảng điều khiển ứng dụng trên Meta hoặc theo cách lập trình.
Để thêm NLP tích hợp thông qua Bảng điều khiển ứng dụng , trong mục Sản phẩm, bạn cần chuyển đến Messenger > Cài đặt rồi cuộn xuống phần NLP tích hợp. Chọn Trang Facebook trong menu thả xuống rồi gạt nút chuyển sang vị trí BẬT. Sau đó chọn Mô hình ngôn ngữ cho phép bạn thêm nhiều ngôn ngữ. Trong phần Cài đặt nâng cao, bạn có thể chọn phiên bản NLP, cờ chi tiết để xem thêm thông tin về các thực thể, cũng như n giá trị tốt nhất cho từng ý định và đặc điểm mà bạn muốn nhận được. Cài đặt này cũng xác định số lượng ngôn ngữ được phát hiện mà hệ thống sẽ trả về.
Hệ thống sẽ tổng hợp các mẫu ngẫu nhiên từ những cuộc trò chuyện trước đây trong hộp thư trên Trang rồi hiển thị trong ứng dụng Wit mới tạo. Bạn có thể gắn thẻ ngay các mẫu này trong ứng dụng Wit.ai của mình.
Để thêm NLP theo cách lập trình, bạn sẽ cần có:
MESSAGING
trên Trang đó yêu cầupages_messaging
và pages_manage_metadata
Gửi yêu cầu POST
đến điểm cuối /PAGE-ID/nlp_configs
, đồng thời đặt thông số nlp_enabled
là true
để bật NLP cho Trang. Bạn cũng có thể thêm thông số model
để đặt ngôn ngữ khác ngoài ngôn ngữ mặc định là tiếng Anh.
Hãy xem tài liệu tham khảo về NLP cho Trang để biết thêm thông tin.
curl -i -X POST "https://graph.facebook.com/v21.0
/me/nlp_configs
?nlp_enabled=true
&model=PORTUGUESE
&access_token=PAGE-ACCESS-TOKEN"
Bạn có thể sử dụng thông số custom_token
để dùng ứng dụng Wit.ai tùy chỉnh của mình và cập nhật các thông số NLP cùng với yêu cầu POST
. Nếu bạn muốn vô hiệu hóa NLP, hãy gửi yêu cầu POST
, đồng thời đặt thông số nlp_enabled
là false
.
Giờ đây, webhook tin nhắn có chứa 2 trường NLP khi bật NLP tích hợp: nlp
và nlpv2
. Trường nlp
là trường cũ sử dụng quy ước đặt tên không dùng nữa cho tên thực thể và đặc điểm. Trường nlpv2
sử dụng tên đơn giản cho các thực thể và đặc điểm, như minh họa dưới đây.
Chúng tôi sẽ gỡ trường nlp
từ ngày 18/06/2024.
Nếu bạn bật NLP tích hợp, các thực thể và đặc điểm NLP thích hợp sẽ có trong thông báo webhook message
cho từng đối tượng tin nhắn.
Theo mặc định, Nền tảng Messenger sẽ trả về các thực thể sau đây.
Thông tin | Thực thể |
---|---|
Số tiền |
|
Ngày/giờ |
|
Khoảng cách |
|
Khoảng thời gian |
|
Địa chỉ email |
|
Vị trí |
|
Số điện thoại |
|
Số lượng |
|
Nhiệt độ |
|
URL |
|
Khối lượng |
|
Theo mặc định, Nền tảng Messenger sẽ trả về các đặc điểm sau đây.
Thông tin | Đặc điểm |
---|---|
Lời tạm biệt (chỉ tiếng Anh) |
|
Lời chào (chỉ tiếng Anh) |
|
Cảm nghĩ |
|
Lời cảm ơn (chỉ tiếng Anh) |
|
Hãy truy cập tài liệu về Wit.ai của chúng tôi để tìm hiểu thêm về các thực thể, đặc điểm và nhiều thông tin có sẵn khác.
Dưới đây là ví dụ minh họa một tin nhắn chứa cụm từ "see you tomorrow at 4pm" (hẹn gặp bạn lúc 16h ngày mai nhé), đồng thời sẽ bao gồm các thực thể datetime
và sentiment
sau khi phân tích cú pháp:
{...,
"entities": {
"datetime:datetime": [
{
"id": "340464963587159",
"name": "datetime",
"role": "datetime",
"start": 8,
"end": 23,
"body": "tomorrow at 4pm",
"confidence": 0.9704,
"entities": [],
"type": "value",
"grain": "hour",
"value": "2020-06-16T16:00:00.000-07:00",
"values": [
{
"type": "value",
"grain": "hour",
"value": "2020-06-16T16:00:00.000-07:00"
}
]
}
]
},
"traits": {
"sentiment": [
{
"id": "5ac2b50a-44e4-466e-9d49-bad6bd40092c",
"value": "neutral",
"confidence": 0.6162
}
]
}
Trong Webhooks messages
, bạn có thể trả lời một tin nhắn bằng cách tận dụng NLP mặc định. Ví dụ: nếu có hàm handleMessage()
để trả lời từng tin nhắn nhận được, bạn có thể sử dụng thực thể greetings
để gửi một tin trả lời thích hợp:
function firstTrait(nlp, name) {
return nlp && nlp.entities && nlp.traits[name] && nlp.traits[name][0];
}
function handleMessage(message) {
// check greeting is here and is confident
const greeting = firstTrait(message.nlp, 'greetings');
if (greeting && greeting.confidence > 0.8) {
sendResponse('Hi there!');
} else {
// default logic
}
}