1. Trang chủ
  2. » Luận Văn - Báo Cáo

Bài tập quá trình Điện toán Đám mây integrating azure bots with azure cognitive services

32 0 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 32
Dung lượng 5,9 MB

Nội dung

Trong bài báo cáo này, chúng tôi sử sẽ tạo một bot Azure và tích hợp nó với AzureCognitive Services API để cho phép nó dự đoán cảm tính của người dùng cuối và côngkhai bot lên dịch vụ Az

Trang 1

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN KHOA HỆ THỐNG THÔNG TIN

BÀI TẬP QUÁ TRÌNH

ĐIỆN TOÁN ĐÁM MÂY

INTEGRATING AZURE BOTS WITH AZURE

Trang 2

MỤC LỤC

TỔNG QUAN VỀ ĐỀ TÀI 4

1 Bot là gì? 4

2 Mục tiêu của đề tài 5

CƠ SỞ LÝ THUYẾT 6

1 Công cụ Yoeman 6

1.1 Yoeman là gì 6

1.2 Các chức năng chính chủa Yoeman 7

2 Azure Bot Service 8

2.1 Azure Bot Service là gì? 8

2.2 Những lợi ích quan trọng khi sử dụng Azure Bot Service: 8

3 Microsoft Bot Framework 9

4 Azure Cognitive Services 10

4.1 Giới thiệu về Azure Cognitive Services 10

4.2 Các APIs của Azure Cognitive Services 11

4.3 Lợi ích của việc sử dụng Azure Cognitive Services 14

HƯỚNG DẪN TÍCH HỢP AZURE BOT VỚI AZURE COGNITIVE SERVICES 16

1 Quy trình tạo Azure Bot trong môi trường Node.js bằng công cụ Yeoman 16 2 Tạo Azure AI Language Service 19

3 Xây dựng chức năng phân tích cảm tính cho bot 22

4 Tạo Azure Bot Service để có thể deploy bot 25

5 Push code lên Github 26

6 Tạo service Web App 27

7 Kiểm tra và cài đặt các biến environment cho bot 29

TÀI LIỆU THAM KHẢO 30

BẢNG PHÂN CÔNG CÔNG VIỆC 31

Trang 3

DANH MỤC HÌNH

Hình 1: Hỉnh ảnh Logo của công cụ Yoeman 6

Hình 2 Hình ảnh minh hoạ của Yoeman 7

Hình 3 Hình ảnh về Azure Bot Service 8

Hình 4 Hình ảnh mô tả các thành phần của Bot Framework 10

Hình 5 Hình ảnh logo của Azure Cognitive Services 10

Hình 6 Hình ảnh về các nhóm API của Azure Cognitive Services 11

Hình 7 Hình ảnh về tạo folder chứa project bot 16

Hình 8 Hình ảnh về tải công cụ Yeoman và generator 16

Hình 9 Hình ảnh về quá trình thực hiện build project 17

Hình 10 Hình ảnh về build project thành công 17

Hình 11 Hình ảnh các log thông báo khi chạy bot 17

Hình 12 Hình ảnh Github BotFramework-Emulator của Microsoft 18

Hình 13 Hình ảnh giao diện của ứng dụng BotFrameworkEmulator 18

Hình 14 Hình ảnh chat với bot sau khi connect 19

Hình 15 Hình ảnh Giao diện Azure Portal 19

Hình 16 Giao diện cảu Azure Language serrvice 20

Hình 17 Hình ảnh trang Chọn option language 20

Hình 18 Hình ảnh Chọn các thông tin cơ bản cho Language 21

Hình 19: Hình ảnh thông báo tạo TextAnalytics Language thành công 21

Hình 20: Hình ảnh trang Keys and endpoint của textAnalytics service 22

Hình 21 Hình ảnh code chức năng phân tích cảm tính 22

Hình 22 Hình ảnh biến endpoint và key được gán giá trị 23

Hình 23 Hình ảnh code xây dựng function cho bot 23

Hình 24 Hình ảnh khai báo chức năng phân tích trong bot 23

Trang 4

Hình 26 Hình ảnh thông tin dữ liệu trả về và tốc độ xử lý 24

Hình 27 Hình ảnh giao diện Bot services của Azure 25

Hình 28 Hình ảnh trang tạo Azure bot 25

Hình 29 Hình ảnh trang thông báo khi tạo bot thành công 26

Hình 30 Hình ảnh trang repo github được tạo 26

Hình 31 Hình ảnh các log khi thực hiện quá trình đẩy code project lên github 27

Hình 32 Hình ảnh github sau khi đẩy code thành công 27

Hình 33 Hình ảnh tạo web application 28

Hình 34.Hình ảnh tạo liên kết với repo github đã được tạo 29

Hình 35, Hình ảnh tạo web application thành công 29

Hình 36 Hình ảnh trang Enviroment variables 30

Hình 37 Hình ảnh setup các biến 30

Trang 5

Các nhóm sử dụng Azure một phần vì khả năng tích hợp chặc chẽ mà chũng cung cấpvới hầu hết các dịch vụ Azure khác Một ví dụ phổ biến là kết hợp bot với các dịch vụ AI,

để kết hợp các bot thông minh có khả năng hiểu và phản hồi thong minh nhận xét củangười dùng cuối

Trong bài báo cáo này, chúng tôi sử sẽ tạo một bot Azure và tích hợp nó với AzureCognitive Services API để cho phép nó dự đoán cảm tính của người dùng cuối và côngkhai bot lên dịch vụ Azure Bot Service

Trang 6

2 Mục tiêu của đề tài

Mục tiêu của đề tài là trang bị cho học viên kiến thức và kĩ năng cần thiết để xây dựng và triển khai bot trên nền tảng Azure Bằng cách sử dụng các công cụ như Yoeman, Bot Framework Emulator và Azure Cognitive Services API trong môi trường Node.js Qua đó học được cách tạo ra những bot thông minh và linh hoạt, có khả năng tương tác với người dùng một cách tự nhiên

Trong bài báo cáo này, chúng tôi sẽ tập trung vào bốn mục tiêu chính:

- Xây dụng bot trên Azure: Chúng tôi sẽ tạo bot trên nền tảng Azure, sử dụng môi trường lập trình là Node.js và cong cụ Yoeman để bắt đầu khởi tạo dự án của mình

- Tương tác cục bộ với Bot Framework Emulator: Bằng cách sử dụng Bot Emulator,chúng tôi có thể thử nghiệm và kiểm tra bot của mình một cách dễ dàng trên máy tính cá nhân trước khi triển khai

- Tích hợp bot với Azure Cognitive Services API: Chúng ta sẽ tích hợp bot với các dịch vụ Azure Cognitive Services, từ đó mở rộng kahr năng của bot thông qua các tính năng nhận dạng ngôn ngữ tự nhiên, nhận dạng hình ản và nhiều tính năng khác

- Triển khai bot lên Azure Bot Service: Cuối cùng, học cách triển khai bot của mìnhtrên Azure Bot, sử dụng Azure CLI và Azure Resoure Manager để tự động hoá quy trình triển khai và quản lý bot trên nền tảng đám mây

Với những kĩ năng này, chúng ta có khả năng xây dụng và triển khai các bo có hiệu suất cao, mang lại trải nghiệm tương tác thông minh và đáng tin cậy cho người dùng

Trang 7

tự động) đêr tạo ra các phần của dự án, như cấu hình, cấu trúc thư mục và mã nguồn

Hình 1: Hỉnh ảnh Logo của công cụ Yoeman

- Yoeman còn hỗ trợ generate các script, frameworks bằng Node.js, Angular.js,…Yoeman không chỉ là tool mà còn được sử dụng như một workflow, tập hợp các “best

Trang 8

dàng tạo phần khung sườn cho những dự án mới với các template tuỳ chỉnh được thôngqua dòng lệnh

Hình 2 Hình ảnh minh hoạ của Yoeman

1.2 Các chức năng chính chủa Yoeman

- Tạo dự án (Project Generation): Yoeman Tạo dự án (Project Generation): Yeomancung cấp các generator để tạo ra cấu trúc dự án (project structure) cho các loại ứngdụng web khác nhau như AngularJS, React, Vue.js, và nhiều framework khác.Người dùng có thể chọn từ các generator có sẵn để bắt đầu một dự án mới

- Quản lý dependencies (Dependency Management): Yeoman tích hợp với các

công cụ quản lý gói như npm và Bower để giúp cài đặt và quản lý cácdependencies của dự án một cách dễ dàng Điều này giúp đơn giản hóa quá trình

sử dụng các thư viện và framework bên thứ ba

- Cấu hình tùy chỉnh (Customization): Yeoman cho phép người dùng tùy chỉnh

các generator và các file mẫu (templates) để phù hợp với nhu cầu cụ thể của dự án

- Tạo các mẫu (Code scaffolding): Yeoman cung cấp các mẫu mã (boilerplate

code) để giúp nhà phát triển bắt đầu với các dự án mới một cách nhanh chóng

2 Azure Bot Service

2.1 Azure Bot Service là gì?

Trang 9

- Azure Bot Service là một Bot Service được triển khai (deploy) trên nền tảng đámmây Azure Nó cung cấp một môi trường tích hợp các dịch vụ của Azure cho mụcđích phát triển bot, cho phép xây dựng (build), kết nối (connect), thử nghiêm(test), triển khai (deploy) và quản lý bot ở một nơi duy nhất.

Hình 3 Hình ảnh về Azure Bot Service

2.2 Những lợi ích quan trọng khi sử dụng Azure Bot Service:

- Xây dựng Bot nhanh chóng: Thực hiện, kiểm tra và xuất bản bot bằng giao diện

- Azure Bot Service còn kết nối với các thành phần khác như:

o Trình xử lí ngôn ngữ tự nhiên (Ví dụ: LUIS, QnAMaker)

o Hệ thống giám sát (Ví dụ: Application Insights)

o Persistency & State Layer (Ví dụ: Blob, CosmosDB)

o Kênh kết nối (Ví dụ: Alexa, Microsoft Teams, Facebook, Telegram)

o Platform (Ví dụ: App Service)

Trang 10

3 Microsoft Bot Framework

- Microsoft Bot Framework là một khung làm việc được phát triển bởi Microsoft đểxây dựng các ứng dụng bot và trải nghiệm thông qua các kênh khác nhau Bot Framwork cung cấp các công cụ, thư viện và dịch vụ để phát triển, triển khai và quản lý các bot thông minh có khả năng tương tác với người dùng

- Microsoft Bot Framework bao gồm các thành phần sau;

o Bot Framework SDK: Một SDK cung cấp các công cụ cần thiết để xây dựng bot Được phát triển hỗ trợ cho nhiều ngôn ngữ như C#, Javascript,…

o Bot Framework Emulator: Là một ứng dụng của Microsoft để triển khai, quản

lý và mở rộng bot Cho phép xây dựng kiểm tra gỡ lỗi các bot xây dựng bằng Bot Frame SDK

- Các thành phần của Microsoft Bot Framework trong quá trình trải nghiệm

o Đầu vào (Input): Được biểu diễn bằng các biểu tượng cho việc nhấn, thẻ điều

chỉnh, gõ và nói

o Thiết bị (Devices): Được mô tả bằng các biểu tượng đại diện cho các loại

thiết bị điện tử khác nhau bao gồm máy tính, máy tính bảng và điện thoại thông minh

o Kênh (Channels): Bao gồm nhiều nền tảng truyền thông được thể hiện bằng

các biểu tượng tương ứng của chúng

o Azure Bot Service: Nằm ở trung tâm của sơ đồ, kết nối Input, Thiết bị và

Kênh với Cognitive Services

o Cognitive Services: Bao gồm các khả năng Nhận biết Ngôn ngữ, Thị giác,

QnA (Câu hỏi và Trả lời) và Phát biểu Nó được cá nhân hóa như “Trợ lý của bạn” với tính cách thương hiệu của bạn

o Dispatch: Trợ lý này gửi thông tin đến các nguồn kiến thức như cơ sở dữ liệu

kiến thức chung hoặc hướng dẫn (PDF) hoặc Nguồn dữ liệu (Knowledge).

o Kỹ năng (Tùy chỉnh): Có thể được điều chỉnh cho các nhiệm vụ cụ thể như

xử lý thư, lịch, nhiệm vụ, điểm đặc biệt, ô tô, Bot khác, API tùy chỉnh, Office Graph, Directory, v.v., hoặc được tùy chỉnh theo nhu cầu

o Trợ lý 3P: Có thể đại diện cho các dịch vụ trợ lý bên thứ ba được tích hợp

vào framework

Trang 11

-Hình 4 -Hình ảnh mô tả các thành phần của Bot Framework

4 Azure Cognitive Services

4.1 Giới thiệu về Azure Cognitive Services

- Azure Cognitive Services là một bộ các dịch vụ trí tuệ nhân tạo (AI) đucowj cung cấp bởi Microsoft trên nền tảng đám mây Azure Các dịch vụ này được thiết kế để giúp các nhà phát triển tích hợp các khả năng trí tuệ nhân tạo vào ứng dụng của họ

mà không cần có kiến thức chuyên sau về lĩnh vực AI Azure Cognitive Services cung cấp các API dễ sử dụng để xử lý và hiểu dữ liệu hình ảnh, văn bản, giọng nói, ngôn ngữ tự nhiên và nhiều khía cạnh khác của thông tin

- Các API của Cognitive Services được viết dưới dạng REST API do vậy lập trình viên có thể tích hợp các API này trên nhiều nền tảng như iOS, Android hay Window chỉ cần có kết nối internet

Hình 5 Hình ảnh logo của Azure Cognitive Services

Trang 12

4.2 Các APIs của Azure Cognitive Services

- Tính đến thời điểm hiện tại, Microsoft Cognitive Services bao gồm 21 API được chia thành 5 nhóm: Vision, Speech, Language, Knowledge và Search

Hình 6 Hình ảnh về các nhóm API của Azure Cognitive Services

a Vision API

Computer Vision API: API này cho phép trích xuất những thông tin có giá

trị từ bức ảnh của bạn với khả năng xác định được kiểu đối tượng trong ảnh (là bánh mỳ, con chó, con mèo hay cây cối, …) hay nếu là người thì API này cũng xác định được giới tính của nhân vật trong ảnh Ngoài ra, API này cũng hỗ trợ nhận diện được những nhận vật nổi tiếng hay trích xuất chữ có trong bức hình của bạn

Face API: Cái tên nói lên tất cả, đây là API cho phép phát hiện khuôn mặt

có trong bức hình của bạn Ngoài ra, API này cũng trả về các thuộc tính của khuôn mặt như tuổi, giới tính, độ rạng ngời của nụ cười hay thậm chí là chiều dài của tóc, … Ngoài phát hiện khuôn mặt, Face

Trang 13

API còn cho phép so sánh 2 khuôn mặt có phải là của cùng một người hay không

Emotion API: API này cho phép xác định tâm trạng của người có trong bức

hình xem họ đang vui, đang buồn hay đang giận dữ

Video API: API này là một tập hợp các thuật toán xử lý video tân tiến của

Microsoft Với Video API, các nhà phát triển có thể tích hợp các tính năng chỉnh sửa video bao gồm chống rung, phát hiện khuôn mặt người, phát hiện chuyển động hay tạo video thumbnail

b Speech API

Bing Speech API: API này cho phép trích xuất một tập tin âm thanh sang dạng chữ,

chuyển đổi định dạng chữ sang âm thanh (tức là đọc chữ) hay đoán ý của một câu nói

Custom Recognition Intelligent Service (CRIS): CRIS cho phép bạn có thể tùy

biến language model và acoustic model sao cho phù hợp với ứng dụng hoặc người dùng của bạn

Speaker Recognition API: Với những thuật toán nhận dạng giọng nói tân tiến

của Microsoft, API này cho phép nhận dạng giọng nói của người nói trong một tập tin âm thanh API này bao gồm 2 thành phần: speaker verification

và speaker identification tạm dịch tương ứng là xác nhận người nói và xác định người nói

c Language API

Bing Spell Check API: API này cho phép phát hiện và sửa các lỗi chính tả có trong

một đoạn văn bản mà bạn cung cấp API còn có khả năng phát hiện từ lóng, sửa lỗi tên riêng hay sửa các từ đồng âm, …

Trang 14

Web Language Model API: API này giúp hỗ trợ xử lý ngôn ngữ tự nhiên, với khả năng chèn

khoảng cách vào 1 đoạn văn bản được viết liền nhau như hashtag hay đường dẫn

: The Linguistic Analysis API giúp bạn hiểu sâu hơn

Linguistic Analysis API

văn bản của mình API này sẽ giúp phân tích cú pháp của ngôn ngữ tự nhiên để dễdàng xác định được các thực thể (danh từ) hay các hành động (động từ) có trong văn bản Việc xử lý văn bản này có thể hữu ích cho các công việc phân tích như phân tích tâm lý

Language Understanding Intelligent Service (LUIS): LUIS cho phép lập trình

viên xây dựng các model hiểu được ngôn ngữ tự nhiên cũng như hiểu được các câu lệnh riêng được thiết kế riêng cho ứng dụng của bạn

Text Analytics API: API này giúp xác định các ẩn ý, từ khóa, chủ đề hay ngôn

ngữ được sử dụng có trong một đoạn văn bản

d Knowledge API

Academic Knowledge API: API này cho phép lập trình viên xây dựng những

giải pháp tìm kiếm tài liệu học thuật với tính năng Interpret, trả về kết quả gợi ý cho từ khóa mà người dùng nhập vào dựa vào nguồn dữ liệu phong phú từ hệ thống Microsoft Academic Graph (MAG)

Knowledge Exploration Service API: API này cho phép lập trình viên xây

dựng những giải pháp tìm kiếm sử dụng ngôn ngữ tự nhiên bằng cách dịch ngôn ngữ tự nhiên mà người dùng nhập vào sang các biểu thức truy vấn có cấu trúc mà máy tính có thể dễ dàng hiểu và xử lý được

Entity Linking Intelligence Service API: Với một đoạn văn bản, Entity Linking

Intelligence Service sẽ nhận dạng và xác định từng thực thể (entity) có trong đoạnvăn dựa vào ngữ cảnh của đoạn văn đó và sẽ liên kết những entity này tới Wikipedia Lấy ví dụ rằng bạn có một đoạn văn bản trong đó chứa từ cloud, từcloud này có thể hiểu sang thành “Cloud Computing” (điện toán đám mây) hay

“Cloud” (đám mây trên trời), dựa vào ngữ cảnh mà API này sẽ xác định được rằng từ cloud có ý nghĩa như thế nào

Recommendations API: API này cho phép xây dựng các giải pháp khuyến nghị

cho người dùng Chẳng hạn như bạn xây dựng một ứng dụng bán hàng, sử dụng

Trang 15

API này cho phép bạn dễ dàng xây dựng ra các tính năng khuyến nghị mua hàng như “Các sản phẩm được bán chạy”, “Các sản phẩm được mua cùng” hay “Những sản phẩm hàng đầu trong mặt hàng Đồ gia dụng” chẳng hạn, từ đó sẽ khuyến khích người dùng mua nhiều hơn.

e Search API

Bing Web Search API: Đây là API chủ lực của gói Search API Chỉ với một cú

pháp lệnh gọi đến API này, lập trình viên có thể lấy được các kết quả trả về cho trang web, hình ảnh, video hay tin tức tương ứng Nó khá tương tự với việc bạn tìm kiếm trên các công cụ tìm kiếm như Bing.com hay Google.com Ngoài ra, lập trình viên cũng sẽ nhận được những tính năng mạnh mẽ từ công cụ tìm kiếm Bing Search như ranking kết quả tìm kiếm, phân loại kết quả tìm kiếm theo vùng, …

Bing Autosuggest API: API này cho phép lập trình viên có thể xây dựng tính

năng đề xuất các từ khóa tìm kiếm liên quan kể cả khi từ khóa tìm kiếm chưa được điền đầy đủ Ví dụ nếu người dùng gõ từ khóa tìm kiếm là “Thời tiết tại H”, API sẽ trả về danh sách các từ khóa gợi ý như “Thời tiết tại Hà Nội”, “Thời tiết tại

Hồ Chí Minh” hay “Thời tiết tại Hà Giang” chẳng hạn

Bing Image Search API: API này cho phép lập trình viên có thể tìm kiếm các

hình ảnh tương ứng với từ khóa nhập vào Ngoài trả về đường dẫn của hình ảnh, API này cũng trả về các metadata hữu ích như kích thước ảnh, màu chủ đạo của ảnh, …

Bing Video Search API: API này cho phép lập trình viên có thể tìm kiếm

các video tương ứng với từ khóa nhập vào Ngoài trả về đường dẫn của video, APInày cũng trả về các metadata hữu ích khác như tên nhà sản xuất, định dạng mã hóa, ảnh thumbnail, …

Bing News Search API: API này cho phép lập trình viên có thể tìm kiếm các tin

tức, bài báo tương ứng với từ khóa nhập vào Ngoài ra, API cũng trả về các metadata hữu ích khác như thể loại, thông tin nhà xuất bản, ngày xuất bản, …

- Có thể thấy với bộ 21 API mà dịch vụ Microsoft Cognitive Services cung cấp, lập trình viên có thể thỏa sức xây dựng các ứng dụng tích hợp các tính năng thông minh sử dụng sức mạnh từ machine learning mà dịch vụ này mang lại một cách dễ dàng chỉ bằng việc gọi API và xử lý kết quả trả về với định dạng JSON Trong đó, Dịch vụ Text Analytics có giới hạn 5.120 ký tự (khoảng 5 KB) cho mỗi yêu cầu phân tích cảm xúc hoặc phân loại văn bản

Trang 16

4.3 Lợi ích của việc sử dụng Azure Cognitive Services

- Dễ dàng tích hợp: Azure Cognitive Services cung cấp các API và các SDK dễ dàng sử dung, giúp việc tích hợp công nghệ trí tuệ nhân tạo trở nên dễ dàng

- Tiết kiệm thời gian và chi phí: Giảm độ phức tạp của việc xây dung và quy mô AI

từ đầu Điều này giúp tiết kiêm thời gian và chi phí so với việc tự xây dựng AI

- Hiệu suất cao: Dịch vụ AI của Azure được xây dung trên nền tảng đám mây mạnh

mẽ, có khả năng mở rộng linh hoạt để đáp ứng như cầu của người dùng Điều này đảm bảo hiệu suất ổn định độ tin cậy cao cho ứng dung

- Cập nhật liên tục: Azure Cognitive Serivces được Microsoft cập nhật liên tục và được phát triển những cải tiến mới nhất trong lĩnh vực trí tuệ nhân tạo

- Độ bảo mật cao: Microsoft và các dịch vụ Azure có những tiêu chuẩn bảo mật cao, đảm bảo sự an toàn dữ liệu Azure Cognitive Services cung cấp các tính năng bảo mật như mã hoá, quản lý quyền truy cập…

- Hỗ trợ đa ngôn ngữ: các dịch vụ như Translator Text API của Azure Cognitive Service được hỗ trợ đa ngôn ngữ, giúp sự mở rộng và tiếp cận với người dùng toàn cầu

- Độ linh hoạt và sự đa dạng: Với nhiều dịch vụ khác nhau như xử lý ảnh, nhận diệngiọng nói, ngôn ngữ tự nhiên và khá nhiều chức năng khác Giúp các doanh nghiệp có thể đáp ứng được nhu cầu đa dạng

Ngày đăng: 09/12/2024, 17:32

TÀI LIỆU CÙNG NGƯỜI DÙNG

  • Đang cập nhật ...

TÀI LIỆU LIÊN QUAN

w