Thủ thuật thay thế bảng điều khiển dữ liệu bằng chatbot
Truyền thông - Ngày đăng : 10:40, 09/05/2019
Bảng điều khiển dữ liệu đã là một bổ sung hữu ích cho bộ công cụ doanh nghiệp, cho phép tất cả các bên liên quan tuân thủ việc ra quyết định dựa trên dữ liệu. Tuy nhiên, chúng có một vài nhược điểm:
- Bảng điều khiển yêu cầu mọi người đăng nhập để truy cập dữ liệu, và không phải lúc nào cũng có thể truy cập từ xa.
- Việc tìm kiếm dữ liệu phù hợp trong bảng điều khiến sẽ tốn nhiều thời gian và công sức. Người dùng cần khá nhiều kỹ thuật cần thiết để tận dụng triệt để các bảng điều khiển này. Đồng thời cũng cần những khoản thời gian nhất định để mọi người có thể sử dụng chúng một cách thành thạo.
Vì tất cả những lý do đó, hầu hết các bên liên quan của doanh nghiệp đã ngừng hoàn toàn việc sử dụng bảng điều khiển dữ liệu.
Và giờ đây, việc truy cập phức tạp đã khiến một khối lượng dữ liệu có cấu trúc tốt có nguy cơ bị lãng phí.
Một công ty trong lĩnh vực sản xuất đã phải đối mặt với những thách thức trên. Họ đã được đề xuất giải pháp: thay thế bảng điều khiển dữ liệu bằng chatbot để truy cập dữ liệu.
Chatbot được thiết kế để mang lại những lợi ích sau:
Thông tin nhanh chóng và dễ hiểu
Chatbot hoạt động theo cách tiếp cận “hỏi và trả lời” (asked and answered). Điều này đã loại bỏ sự cần thiết phải đăng nhập vào bảng điều khiển và bộ lọc, cũng như thao tác các điều khiển để tìm dữ liệu bạn cần. Khách hàng có thể chỉ cần hỏi một truy vấn và bot sẽ phân tích tất cả dữ liệu cần thiết để đưa ra câu trả lời rõ ràng.
Ví dụ: bằng cách hỏi chatbot: “Các máy của khách hàng X hoạt động như thế nào?”, người dùng có thể biết được:
- Tất cả các máy được giao cho khách hàng X ở bất kỳ khu vực nào.
- Chỉ số hiệu suất cho từng máy
- Bảng tóm tắt hoạt động của từng máy, những máy ở vị trí nào cần bảo trì trong thời gian tới.
Những loại thông tin mà bot có thể cung cấp:
- Chỉ số hiệu suất thiết bị
- Tình trạng của thiết bị
- Tiết kiệm tiềm năng
- Sử dụng thiết bị nào trong kịch bản nào
Truy cập thông tin đơn giản
Chatbot được cung cấp qua các ứng dụng di động và có thể được sử dụng mọi lúc, mọi nơi để truy cập thông tin cần thiết.
Bot rất dễ sử dụng và không yêu cầu mọi người phải phân tích nhiều dữ liệu, do đó nó đã được chấp nhận, bởi cả khách hàng và khách hàng của họ.
Vì sao bot có thể làm được như vậy?
Các chatbot được cung cấp dưới dạng các ứng dụng web và iOS, được xây dựng hoàn toàn bằng các sản phẩm AWS (Amazon Web Service - nền tảng dịch vụ đám mây an toàn, mang đến khả năng tính toán, lưu trữ cơ sở dữ liệu, phân phối nội dung và các chức năng khác nhằm giúp các doanh nghiệp mở rộng và phát triển). Điều này chủ yếu là do khách hàng đã sử dụng AWS Cloud cho các dịch vụ lưu trữ và việc xây dựng các giải pháp mới trong cùng một hệ sinh thái là điều hợp lý.
Kiến trúc giải pháp
Dưới đây là cách thức quy trình một chatbot hoàn chỉnh được thiết kế:
- Thông tin đầu vào truy vấn người dùng trong chabot được đưa đến API Gateway (Giao diện lập trình ứng dụng – Application Programming Interface)
- Thông tin được truyền đến AWS Lambda, xác định vị trí nơi truy vấn bắt nguồn để xác định ngôn ngữ
- AWS Translate chuyển đổi truy vấn sang ngôn ngữ tiếng Anh và chuyển nó sang Amazon Lex
- Lex hiểu truy vấn người dùng và xác định mục đích hoặc dữ liệu mà người dùng muốn
- Dữ liệu này được truyền tới AWS Lambda, truy vấn cơ sở dữ liệu PostgreSQL để tìm câu trả lời phù hợp.
- Phản hồi cuối cùng một lần nữa được dịch trở lại ngôn ngữ gốc bởi AWS Translate
- Thông tin sau đó được truyền tới Amazon Lex, cuối cùng sẽ được cung cấp cho người dùng trên ứng dụng
Giải pháp AWS tại Play
Amazon Lex
Amazon Lex là một khung giao diện đàm thoại, được sử dụng để thiết kế một chatbot có thể hiểu các câu hỏi tự nhiên và có khả năng tiếp tục cuộc trò chuyện. Các chức năng học sâu cho phép chatbot xác định ý định đằng sau một câu hỏi cụ thể, hiểu ngữ cảnh và đưa ra câu trả lời phù hợp.
Các yếu tố cơ bản liên quan đến việc thiết kế các luồng tương tác là cách nói, ý định và vị trí. Đối với một dự án cụ thể, cách thức các yếu tố này được xác định bao gồm:
- Utterances (Phát ngôn): Đây là những câu hỏi mẫu mà người dùng có thể hỏi các chatbot. Dữ liệu này, cùng với dữ liệu về một số biến thể của mọi câu hỏi đã được đưa vào Amazon Lex. Dữ liệu đào tạo này đã giúp Lex hiểu phạm vi của những câu hỏi ngôn ngữ tự nhiên. Ngoài ra, khả năng học sâu cho phép Lex suy diễn từ các biến thể đã cho của câu hỏi, và mở rộng vốn từ vựng để hiểu các biến thể mới hơn của câu hỏi.
- Intent (Mục đích): Lex được đào tạo để phân tách từng dữ liệu theo một mục đích cơ bản. Đây là thông tin chính xác hoặc phần dữ liệu mà người dùng muốn biết. Mục đích chính của câu hỏi được chuyển tiếp và xử lý để trích xuất câu trả lời có liên quan.
- Slots (Giá trị bổ sung): Đây là những giá trị bổ sung cho những phát ngôn hoặc ý định cụ thể. Chúng cần thiết cho các câu hỏi cần dữ liệu bổ sung, để có thể trả lời chính xác.
Ví dụ: nếu câu hỏi là: “Có bao nhiêu thiết bị được bật?”, thì chatbot cần đặt câu hỏi tiếp theo về khu vực, vị trí, khung thời gian v.v... Tất cả những điều này - khu vực, vị trí, khung thời gian - có thể được định nghĩa là các giá trị bổ sung (slots) đối với câu hỏi mục đích về các thiết bị được bật.
Huấn luyện dữ liệu xung quanh các giá trị bổ sung, khả năng hoán vị và kết hợp của các giá trị bổ sung cũng được đưa vào Amazon Lex. Điều này cho phép chatbot xác định chính xác các câu hỏi và cũng phát hiện ra các giá trị bổ sung mới khi chúng xảy ra.
Amazon Cognito
Amazon Cognito là một giải pháp để quản lý một cách an toàn việc đăng ký, đăng nhập và kiểm soát truy cập của người dùng trong một ứng dụng. Đối với khách hàng, Srijan đã sử dụng Amazon Cognito và AWS Identity and Access Manager (IAM) để tạo người dùng, lưu trữ dữ liệu người dùng, tạo nhóm người dùng và tạo kiểm soát truy cập dựa trên ủy quyền.
AWS Lambda
AWS Lambda là một nền tảng điện toán không có máy chủ, có thể chạy mã để đáp ứng với các trình kích hoạt sự kiện. Nó cũng tự động quản lý tất cả các tài nguyên cần thiết để quản lý và mở rộng mã của người dùng.
Đối với dự án này, mục đích của người dùng và các giá trị bổ sung được thu thập bởi Amazon Lex là yếu tố kích hoạt cho Lambda. Dựa trên những điều này, Lambda sẽ kích hoạt để tạo ra một câu trả lời thích hợp. Các câu trả lời có thể là:
- Thông điệp giới thiệu đơn giản hoặc câu hỏi có thể được trả lời mà không cần truy vấn cơ sở dữ liệu.
- Dựa trên logic nghiệp vụ: Tất cả các câu hỏi xung quanh hiệu suất tài sản được trả lời bằng cách truy vấn cơ sở dữ liệu, trích xuất câu trả lời, định dạng lại thành định dạng dễ hiểu cho người dùng và chuyển nó cho người dùng thông qua Amazon Lex.
Đối với khách hàng, tất cả hiệu suất tài sản và dữ liệu liên quan đã được lưu trữ trong PostgreSQL. Logic nghiệp vụ được xác định trên Lambda chi phối cách dữ liệu thô từ cơ sở dữ liệu được tính toán và diễn giải. Và điều đó hình thành nên cơ sở về cách Lambda tạo ra một câu trả lời có liên quan đến câu hỏi của người dùng, thay vì chỉ đưa ra các thông tin dữ liệu thôi.
Ví dụ, đối với một mục đích cụ thể có tiêu đề “hiệu suất thiết bị”, thì logic kinh doanh là việc xác định ba giá trị KPI - hiệu suất cao, hiệu suất bình thường và tắt - với mỗi giá trị bao trùm một phạm vi nhất định của chỉ số hiệu suất. Để trả lời truy vấn này, Lambda sẽ lấy số liệu này cho tất cả các thiết bị, và sau đó sắp xếp chúng vào KPI theo logic kinh doanh đã xác định. Và câu trả lời mà người dùng nhận được sẽ là: máy X có hiệu suất cao, máy Y có hiệu suất bình thường và máy Z bị tắt.
Logic kinh doanh của tất cả các mục đích được xác định trong sự tư vấn chặt chẽ với khách hàng, tùy thuộc vào nhu cầu hoạt động của họ.
AWS Translate
AWS Translate là một dịch vụ dịch thuật hỗ trợ học sâu. Giả định đặt ra là các thiết bị và các bên liên quan của khách hàng được trải đều trên các khu vực địa lý khác nhau, Translate được tận dụng để thực hiện các hoạt động đa ngôn ngữ.
AWS Translate đã làm việc với AWS Lambda để xác định khu vực địa lý, nơi bắt nguồn các câu hỏi. Các câu hỏi sau đó đã được dịch sang tiếng Anh trước khi được chuyển sang Amazon Lex.
Tương tự, một khi câu trả lời được tạo bởi Lambda bằng tiếng Anh, nó đã được chuyển qua AWS Translate để chuyển đổi nó trở lại ngôn ngữ gốc.
Amazon S3
Amazon S3 là một dịch vụ lưu trữ an toàn và có thể mở rộng. Hình ảnh thiết bị tĩnh, các biểu đồ và đồ thị khác được tạo để đi kèm câu trả lời của chatbot đã được lưu trữ trên Amazon S3. Nó được thiết lập để chỉ giao tiếp với Amazon Lambda, và các ứng dụng khác hoặc truy vấn trực tiếp không thể truy cập được.
Trong trường hợp người dùng muốn xem một kiểu thiết bị cụ thể hoặc dữ liệu hình ảnh khác, AWS Lambda sẽ lấy các hình ảnh liên quan từ S3 dưới dạng một URL tạm thời. Điều này sau đó đã được chuyển lên Amazon Lex và hình ảnh được hiển thị cho người dùng.
Tất cả những điều này cùng nhau tạo thành một chatbot mang dữ liệu về hiệu suất tài sản đến các nhân viên khách hàng.
Còn bạn thì sao? Bạn đang làm việc trên các dự án chatbot tương tự cho các doanh nghiệp? Chúng tôi rất muốn biết nếu bạn tiếp cận một số thách thức khác nhau, và về nền tảng và giải pháp bạn sử dụng để xây dựng các chatbot.