Firebase ML Kit: Trả lời thông minh ( Smart Reply) trong Android

Firebase ML Kit: Trả lời thông minh ( Smart Reply) trong Android

Trả lời thông minh là một API cho phép bạn tạo các phản hồi có liên quan đến tin nhắn. API trả lời thông minh của ML Kit hoạt động trên chính thiết bị và không yêu cầu bạn gửi dữ liệu đến máy chủ từ xa.

1. Giới thiệu

Trả lời thông minh là một API cho phép bạn tạo các phản hồi có liên quan đến tin nhắn.

Bạn hẳn đã thấy một số ứng dụng như LinkedIn và Gmail sử dụng sức mạnh của Machine Learning để tạo ra các câu trả lời phù hợp dựa trên bối cảnh của cuộc trò chuyện. Nó làm cho việc trả lời dễ dàng hơn nhiều.

API trả lời thông minh của ML Kit hoạt động trên chính thiết bị và không yêu cầu bạn gửi dữ liệu đến máy chủ từ xa.

2. Cài đặt

Bước 1: Thêm Firebase vào ứng dụng của bạn

Bạn có thể thêm Firebase vào ứng dụng của mình bằng cách làm theo các bước được đề cập ở đây .

Bước 2: Thêm các phụ thuộc

Bạn cần thêm các phụ thuộc ML Kit tệp build.gradle

dependencies {
  // ...
implementation 'com.google.firebase:firebase-ml-natural-language:18.2.0'
  implementation 'com.google.firebase:firebase-ml-natural-language-smart-reply-model:18.0.0'
}

Bước 3:

Smart Reply model đòi hỏi một List  đối tượng FirebaseTextMessage để tạo các câu trả lời thông minh.

khi người dùng gửi tin nhắn

conversation.add(FirebaseTextMessage.createForLocalUser("Hi, how are you?", System.currentTimeMillis()))

khi người dùng nhận được tin nhắn

conversation.add(FirebaseTextMessage.createForRemoteUser("I'm good", System.currentTimeMillis(), userId))

userId là một chuỗi xác định duy nhất người gửi trong cuộc hội thoại đó.

Bước 4:

Chuẩn bị mô hình Trả lời thông minh.

val smartReply = FirebaseNaturalLanguage.getInstance().smartReply

Bước 5: 

Cuối cùng, chúng ta có thể chuyển cuộc hội thoại đến mô hình để tạo phản hồi thông minh.

smartReply.suggestReplies(conversation)
        .addOnSuccessListener { result ->
            if (result.status == STATUS_SUCCESS) {
                // Task completed successfully
            }
        }
        .addOnFailureListener {
            // Task failed with an exception
        }

Bước 6: Trích xuất thông tin

Nếu trả lời thông minh thành công, ta sẽ nhận được một đối tượng SmartReplySuggestionResult, trong đó có danh sách 3 câu trả lời được đề xuất hàng đầu.

Bạn có thể trích xuất thông tin này như thế này.

for (suggestion in result.suggestions) {
    val reply = suggestion.text
}

Kết quả

 

Mã nguồn đầy đủ:

https://github.com/hitanshu-dhawan/FirebaseMLKit/tree/master/app/src/main/java/com/hitanshudhawan/firebasemlkitexample/smartreply

admin

Leave a Reply

Your email address will not be published. Required fields are marked *