Logo Zephyrnet

Cách công cụ tìm kiếm chatbot của Citibot sử dụng AI để tìm thêm câu trả lời

Ngày:

Đây là bài đăng trên blog của khách của Francisco Zamora và Nicholas Burden tại TensorIoT và Bratton Riley tại Citibot. Nói theo cách riêng của họ, “TensorIoT là Đối tác tư vấn nâng cao của AWS với năng lực về IoT, Machine Learning, IoT công nghiệp và Bán lẻ. Được thành lập bởi các cựu thành viên AWS, họ đã cung cấp các giải pháp IoT và Machine Learning toàn diện cho khách hàng trên toàn cầu. Citibot cung cấp các công cụ để người dân và chính phủ của họ sử dụng để giao tiếp hiệu quả và thay đổi công dân.”

Citibot là một công ty công nghệ xây dựng các giải pháp trò chuyện được hỗ trợ bởi AI cho chính quyền địa phương từ Fort Worth, Texas đến Arlington, Virginia. Với Citibot, người dân địa phương có thể nhanh chóng nhận được câu trả lời cho các câu hỏi liên quan đến thành phố, báo cáo các vấn đề và nhận thông báo theo thời gian thực thông qua phản hồi bằng văn bản. Để hỗ trợ những tương tác này, Citibot sử dụng Amazon, một dịch vụ xây dựng giao diện đàm thoại cho các ứng dụng văn bản và giọng nói. Citibot đã xây dựng một chatbot để xử lý các truy vấn cuộc gọi cơ bản, cho phép nhân viên chính phủ phân bổ nhiều thời gian hơn cho các hành động cộng đồng có tác động cao hơn.

Những thách thức do đại dịch COVID-19 đặt ra đã làm nảy sinh nhu cầu đối với các tổ chức công phải có các công cụ tự phục vụ, có thể mở rộng để có thể nhanh chóng cung cấp thông tin đáng tin cậy cho các thành phần của mình. Với COVID-19, các trung tâm cuộc gọi của Citibot đã chứng kiến ​​​​sự gia tăng đáng kể về thời gian chờ đợi và tình trạng hủy cuộc gọi khi người dân cố gắng lấy thông tin về phòng chống vi-rút và bảo hiểm thất nghiệp. Để tăng tính linh hoạt và mạnh mẽ của chatbot đối với các loại truy vấn mới, Citibot đã tìm cách bổ sung khả năng tìm kiếm chung. Citibot muốn một giải pháp có thể hoạt động tốt hơn các giải pháp của bên thứ ba và sử dụng hiệu quả nội dung Câu hỏi thường gặp được tuyển chọn cũng như dữ liệu được công bố gần đây từ nhiều trang web như CDC và chính quyền liên bang, tiểu bang và địa phương.

Hình ảnh sau đây hiển thị ảnh chụp màn hình của các cuộc hội thoại Citibot mẫu.

Để thiết kế giải pháp tìm kiếm tổng hợp này, Citibot đã chọn TenorIoT, Đối tác tư vấn nâng cao của AWS chuyên phát triển ứng dụng serverless. TensorIot đã phát triển một giải pháp bao gồm Công cụ kết nối web của TensorIoT và Amazon Kendra, một dịch vụ tìm kiếm doanh nghiệp. Công cụ kết nối web của TensorIoT, được xây dựng nguyên bản trên AWS, cho phép Amazon Kendra lập chỉ mục nội dung của các trang web mục tiêu và trở thành mục đích tìm kiếm dự phòng khi ý định của Amazon Lex không thể đưa ra câu trả lời.

Giải pháp tìm kiếm chatbot mới này đã giúp người dân địa phương nhanh chóng tìm thấy câu trả lời họ cần và giảm thời gian chờ đợi tới 90%. Ngược lại, điều này làm giảm khối lượng tương tác do các quan chức thành phố xử lý, giảm bớt sự không chắc chắn trong cộng đồng và cho phép chính quyền thành phố tập trung vào việc giữ an toàn cho cộng đồng của họ. Khi các văn phòng đóng cửa do đại dịch, giải pháp này cung cấp một phương thức không tiếp xúc cho những cư dân không có quyền truy cập Internet để tìm kiếm thông tin trên các trang web của chính phủ bất kỳ lúc nào thông qua điện thoại của họ.

Sơ đồ sau minh họa kiến ​​trúc cho giải pháp tìm kiếm chung của Citibot.

Làm thế nào tất cả đến với nhau

Đầu tiên, TensorIoT đã triển khai mục đích tìm kiếm Amazon Lex tùy chỉnh được kích hoạt khi chatbot nhận được một câu hỏi hoặc lời nói mà nó không thể trả lời. Đội đã sử dụng AWS Lambda để phát triển hộp thoại của ý định và các móc mã thực hiện nhằm quản lý luồng hội thoại và các API thực hiện. Mục đích tìm kiếm mới này đã được phát triển, thử nghiệm và hợp nhất vào phiên bản nhà phát triển của Citibot để đảm bảo tất cả các mục đích ban đầu đều hoạt động bình thường.

Thứ hai, TensorIoT cần thiết để tạo chỉ mục truy vấn tìm kiếm. Họ chọn Amazon Kendra vì nó có thể tích hợp nhiều nguồn dữ liệu và loại dữ liệu khác nhau vào kho công nghệ hiện có của Citibot. Nhóm phát triển TensorIoT và Citibot đã xác định nhóm mục tiêu gồm các nguồn dữ liệu của chính phủ, bao gồm trang web CDC về dữ liệu COVID-19 và nhiều trang web của thành phố về dữ liệu thành phố, được kiểm tra thường xuyên. Điều này giúp chatbot truy cập các hướng dẫn mới nhất về vi-rút và cách ly xã hội.

Sơ đồ sau minh họa các nguồn dữ liệu được sử dụng cho giải pháp tìm kiếm chung của Citibot.

Tiếp theo, các nhóm nghiên cứu loại định dạng và vùng lưu trữ dữ liệu tối ưu để lưu thông tin và kết nối với Amazon Kendra. TensorIoT biết rằng Amazon Kendra được đào tạo để xử lý và lập chỉ mục các nguồn dữ liệu một cách có hệ thống nhằm rút ra ý nghĩa từ nhiều định dạng dữ liệu khác nhau, chẳng hạn như tệp .pdf, .csv và .html. Để tăng hiệu quả xử lý của Amazon Kendra, nhóm TensorIoT đã phân vùng dữ liệu một cách thông minh thành các khối thông tin có thể truy vấn được và có thể chuyển tiếp lại cho người dùng. Phương pháp TensorIoT sử dụng kết hợp các tệp .csv, .pdf và .html để cung cấp dữ liệu hoàn chỉnh, tạo nền tảng vững chắc cho việc xây dựng và phát triển sản phẩm.

Sau đó, nhóm TensorIoT đã phát triển Trình kết nối web đa năng sử dụng NodeJS và thư viện Javascript Cheerio để thu thập dữ liệu các trang web đáng tin cậy và gửi thông tin đó vào kho lưu trữ dữ liệu. Vì thông tin liên quan đến COVID-19 thay đổi thường xuyên nên TensorIoT đã tạo ra một Máy phát điện Amazon table để lưu trữ tất cả các trang web để lập chỉ mục thường xuyên cho thông tin cập nhật.

Với thông tin bổ sung từ các trang web được nhắm mục tiêu, nhóm TensorIoT và Citibot đã quyết định sử dụng Dịch vụ lưu trữ đơn giản của Amazon (Amazon S3) để lưu trữ dữ liệu. Amazon Kendra cung cấp khả năng tìm kiếm dựa trên machine learning (ML) cho tất cả dữ liệu phi cấu trúc được lưu trữ trong AWS và cung cấp các trình kết nối gốc dễ sử dụng cho các nguồn phổ biến như Amazon S3, SharePoint, Salesforce, ServiceNow, cơ sở dữ liệu RDS và OneDrive. Bằng cách hợp nhất các trang .html và tệp .pdf được trích xuất từ ​​trang web CDC trong cùng một bộ chứa S3, nhóm phát triển có thể đồng bộ hóa chỉ mục với nguồn dữ liệu, cung cấp dữ liệu sẵn có. Họ cũng sử dụng Amazon Kendra để trích xuất các tệp siêu dữ liệu từ các trang .html cóp nhặt, cung cấp các thuộc tính tệp bổ sung như tên thành phố để cải thiện hơn nữa kết quả trả lời.

Hình ảnh sau đây là ví dụ về các thuộc tính mà Citibot có thể sử dụng để điều chỉnh kết quả tìm kiếm.

Không cần đào tạo mô hình, TensorIoT và Citibot có thể hướng Amazon Kendra tới các cửa hàng nội dung của họ và bắt đầu nhận câu trả lời cụ thể cho các truy vấn ngôn ngữ tự nhiên (chẳng hạn như “Làm cách nào để bảo vệ bản thân khỏi Covid-19?”) bằng cách trích xuất câu trả lời từ những câu hỏi phù hợp nhất tài liệu.

Để kiểm tra giải pháp, các kỹ sư đã chạy tập lệnh sự kiện mẫu với thông tin đầu vào kiểm tra cho phép họ xác minh xem tất cả các câu hỏi mẫu có được trả lời thành công hay không. TensorIoT đã kiểm tra và xác nhận rằng mỗi câu hỏi hoặc câu nói đều trả về câu trả lời kèm theo đoạn trích văn bản và liên kết hợp lệ. Ngoài ra, nhóm đã sử dụng API phản hồi tiêu cực để gắn cờ các câu trả lời mà người dùng đã đánh giá thấp và cung cấp cho Citibot khả năng xem lại các câu trả lời tìm kiếm được cho là không hữu ích. Dữ liệu này giúp thúc đẩy sự cải tiến liên tục xung quanh các câu trả lời do chỉ mục cung cấp cho các câu hỏi cụ thể.

Để tìm kiếm nội dung được tuyển chọn, nhà phát triển cũng có thể tải lên tệp .csv chứa Câu hỏi thường gặp để cung cấp câu trả lời trực tiếp cho các câu hỏi thường gặp nhất. Đối với Citibot, TensorIoT đã sử dụng tính năng này để điền vào các câu trả lời cụ thể cho các câu hỏi về thông tin thành phố, đồng thời thêm tệp .csv chứa các câu hỏi và câu trả lời (Q&A) có liên quan yêu cầu một dịch vụ vi mô hoàn chỉnh của công cụ tìm kiếm. Việc sử dụng các tính năng này mang lại nhiều lợi ích, bao gồm độ chính xác, đơn giản và khả năng kết nối.

Chỉ trong vài tuần, TensorIoT cũng đã xây dựng và bổ sung các API gửi phản hồi và logic truy vấn tùy chỉnh vào bot Amazon Lex, mang đến cho người dùng những câu trả lời tốt hơn mà không cần sự tương tác của con người hoặc tìm kiếm rộng rãi. Amazon Kendra hiển thị các dịch vụ của họ thông qua API, chẳng hạn như API gửi phản hồi, cho phép người dùng cuối tương tác với kết quả tìm kiếm. Nhóm đã sử dụng ý định tùy chỉnh của Amazon Lex và Lambda để xử lý các truy vấn đến và tạo ra một dịch vụ tìm kiếm mạnh mẽ.

Hình ảnh sau đây cho thấy cách giải pháp sử dụng Amazon Lex và Lambda.

Giải pháp TensorIoT được thiết kế để Citibot có thể dễ dàng thêm các thành phố mới vào dịch vụ và phổ biến thông tin đến các cộng đồng tương ứng của họ. Thử thách tiếp theo đối với nhóm TensorIoT là sử dụng thông tin cụ thể của thành phố để cung cấp kết quả tìm kiếm phù hợp hơn. Kết hợp với các thuộc tính yêu cầu và phiên bổ sung của Amazon Lex, TensorIoT đã cung cấp cho Amazon Kendra các bộ lọc tìm kiếm để tinh chỉnh truy vấn dữ liệu với thông tin thành phố cụ thể. Nếu không có thành phố nào được nêu, hệ thống sẽ mặc định vị trí cuộc gọi của người dùng. Với mục đích tìm kiếm tùy chỉnh của TensorIoT được triển khai, bộ lọc tìm kiếm được áp dụng, nguồn dữ liệu được điền và API được xây dựng, nhóm bắt đầu tích hợp công cụ tìm kiếm này vào sản phẩm chatbot hiện có.

Triển khai

Để triển khai giải pháp TensorIot này, nhóm phát triển đã tích hợp mục đích tìm kiếm tùy chỉnh mới của Amazon Lex với Citibot và kiểm tra khả năng trả lời thành công các truy vấn của bot. Bằng cách sử dụng số điện thoại mẫu do Citibot cung cấp thông qua Twilio, TensorIoT đã sử dụng SMS để xác thực kết quả trả về cho mỗi lần phát biểu.

Với Amazon Kendra, nhóm TensorIoT đã loại bỏ nhu cầu về công cụ tìm kiếm của bên thứ ba và có thể tập trung vào việc tạo ra giải pháp tự động để thu thập thông tin. Sau khi cập nhật chatbot, nhóm đã triển khai lại dịch vụ với bản nâng cấp phiên bản của bộ công cụ phát triển phần mềm. Chatbot được nâng cấp hiện sử dụng sức mạnh tìm kiếm của Amazon Kendra để trả lời nhiều câu hỏi hơn cho người dùng dựa trên việc quản lý nội dung tài liệu. Kết quả là Citibot cung cấp thông tin vượt trội hơn các công cụ trước đây mà các thành phố đã sử dụng.

Việc lưu trữ thông tin ở dạng nội dung được tuyển chọn đặc biệt hữu ích khi kết hợp Amazon Lex và Amazon Kendra. Amazon Kendra là giải pháp hoàn hảo cho việc truy xuất thông tin tùy chỉnh mà cuối cùng được truyền đạt tới người dùng cuối thông qua tương tác giọng nói không cần tác nhân của Amazon Lex.

Kết luận

Trường hợp sử dụng này minh họa cách TensorIot sử dụng nhiều dịch vụ AWS để tăng thêm giá trị trong quá trình phát triển giải pháp. Ngoài COVID-19, các thành phố có thể tiếp tục sử dụng chatbot do Amazon Kendra cung cấp để cung cấp khả năng truy cập nhanh vào thông tin về giờ hoạt động của cơ sở công cộng, việc cấm đường và các sự kiện. Tùy thuộc vào trường hợp sử dụng của bạn, bạn có thể dễ dàng tùy chỉnh chủ đề của chỉ mục AWS Kendra để cung cấp thông tin cho nhu cầu mới nổi của người dùng.

Sản phẩm Công cụ tìm kiếm TensorIoT đã được chứng minh là một giải pháp mạnh mẽ cho một vấn đề thời hiện đại, cho phép cộng đồng được cập nhật thông tin và kết nối thông qua văn bản. Mặc dù mục đích chính của ứng dụng này là nâng cao dịch vụ hỗ trợ khách hàng nhưng giải pháp này có thể áp dụng để tìm kiếm cơ sở tri thức nội bộ cho trường học, ngân hàng, doanh nghiệp địa phương và tổ chức phi lợi nhuận. Với AWS và TensorIoT, các công ty như Citibot có thể sử dụng các công nghệ mới và mạnh mẽ như Amazon Kendra để cải thiện các giải pháp chatbot hiện có của họ.


Về các tác giả

Francisco Zamora là Kỹ sư phần mềm tại TensorIoT.

Nicholas Burden là Nhà truyền giáo kỹ thuật tại TensorIoT.

Bratton Riley là Giám đốc điều hành của Citibot.

Nguồn: https://aws.amazon.com/blogs/machine-learning/how-citibots-chatbot-search-engine-uses-ai-to-find-more-answers/

tại chỗ_img

Tin tức mới nhất

tại chỗ_img