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

Đăng bởi: Admin | Lượt xem: 1706 | Chuyên mục: 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

vncoder logo

Theo dõi VnCoder trên Facebook, để cập nhật những bài viết, tin tức và khoá học mới nhất!



Khóa học liên quan

Khóa học: Android

Học Kotlin cơ bản
Số bài học:
Lượt xem: 17611
Đăng bởi: Admin
Chuyên mục: Android

Học lập trình Flutter cơ bản
Số bài học:
Lượt xem: 58506
Đăng bởi: Admin
Chuyên mục: Android

Lập trình Android cơ bản
Số bài học:
Lượt xem: 22990
Đăng bởi: Admin
Chuyên mục: Android