Giới thiệu
Bạn chắc hẳn đã sử dụng chatbot ít nhất một lần trong đời để đặt câu hỏi trên một trang web hoặc có thể chỉ để giải trí! Hôm nay chúng ta sẽ làm một cái của riêng mình.
Đầu tiên chúng ta sẽ nhập một số câu hỏi và câu trả lời. Sau đó, khi chatbot chạy, nó sẽ nhận dạng giọng nói của bạn và chuyển nó thành văn bản bằng Tiện ích mở rộng nhận dạng giọng nói của PictoBlox, sau đó trả lời các câu hỏi của bạn tương ứng.
Điều kiện tiên quyết để tạo Chatbot
Bạn sẽ cần những thứ sau:
- Một máy tính xách tay hoặc một máy tính có máy ảnh.
- Phiên bản mới nhất của PictoBlox
- Một kết nối Internet tốt.
Thiết lập dự án
Hãy bắt đầu bằng cách thêm tiện ích mở rộng Trí tuệ nhân tạo và Chuyển văn bản thành giọng nói. Thực hiện theo các bước bên dưới để thêm tiện ích mở rộng:
- Mở PictoBlox.
- Tiếp theo, nhấp vào nút Thêm tiện ích mở rộng. Bạn cần ghi nhớ hai điều khi làm việc với tiện ích mở rộng này:
- Bạn cần đăng nhập vào tài khoản PictoBlox của mình để sử dụng.
- Rằng máy tính của bạn được kết nối với internet.
- Chọn Tiện ích mở rộng trí tuệ nhân tạo.
- Tiếp theo, hãy thêm tiện ích mở rộng Chuyển văn bản thành giọng nói. Tiện ích mở rộng này cho phép bạn chuyển đổi Âm thanh thành tin nhắn văn bản. Nhấp lại vào nút Thêm tiện ích mở rộng và cuộn xuống cho đến khi bạn tìm thấy tiện ích mở rộng chuyển văn bản thành giọng nói.
Thiết lập sân khấu
Bây giờ, hãy thiết lập Giai đoạn bằng cách thêm Sprite và Phông nền.
- Hãy bắt đầu bằng cách thêm Abby, nhân vật sẽ là nhân vật của chatbot vào dự án của chúng ta,
- Bấm vào nút Chọn một Sprite .
- Chọn Abby từ thư viện.
- Khi Abby được thêm vào, hãy xóa hình Tobi.
- Bây giờ, hãy thêm một phông nền đẹp. Nhấp vào nút Chọn phông nền và chọn phông nền Lối đi lót ván từ thư viện.
Bạn có thể thêm bất kỳ sprite hoặc phông nền nào bạn chọn.
Viết kịch bản cho AI Chatbot
Thực hiện theo các bước dưới đây để viết kịch bản.
Vì chúng ta muốn thực thi chương trình mỗi khi cờ xanh được nhấp vào, do đó hãy đặt khối mũ khi cờ được nhấp vào vùng tập lệnh từ bảng Sự kiện.
Giới thiệu lẫn nhau
Bây giờ để giúp người dùng làm quen với Chatbot của chúng tôi, chúng tôi sẽ giới thiệu Abby với người dùng và hỏi tên của người dùng để thêm nét cá nhân hóa cho nó
- Do đó, lấy khối speak() từ Text ext sang bảng Speech. Khối này chuyển đổi bất kỳ văn bản nào được viết bằng khoảng trắng thành dạng âm thanh để phát trên loa PC/máy tính xách tay của bạn.
- Viết “Xin chào, tôi là Abby bạn của bạn!” để giới thiệu Abby với người dùng.
- Một lần nữa, thêm khối speak () và hỏi tên người dùng Viết ”Tên bạn là gì? ” vào không gian nhất định.
- Khối này sẽ không lưu trữ tên người dùng cho chúng tôi. Vì vậy, để lưu trữ tên người dùng, chúng ta cần thêm nhiều khối hơn. Nhận giọng nói nhận dạng trong () giây trong khối () từ các khối mở rộng trí tuệ nhân tạo . Khối này ghi lại âm thanh và gửi lên web để giải mã và chuyển đổi lời nói thành dạng văn bản.
- Kết quả của nó tức là tên người dùng được lưu trong khối kết quả nhận dạng giọng nói .
- Bây giờ để sử dụng tên trong giao tiếp sâu hơn, chúng ta sẽ lưu trữ nó trong một biến. Chuyển đến tab Biến , nhấp vào Tạo một biến mới và tạo một biến loại Chuỗi có tên “ Tên ” để lưu tên của người dùng.
- Nhận khối set () đến () từ bảng Biến , chọn Tên từ trình đơn thả xuống và thêm kết quả nhận dạng giọng nói bên trong nó.
- Bây giờ để làm cho chatbot của chúng tôi chào mừng người dùng, hãy nhận khối speak (). Đặt một khối nối () () bên trong nó từ bảng Toán tử . Viết “Chào mừng” vào khoảng trống đầu tiên của khối nối. Và thêm khối người báo cáo Tên vào khoảng trống thứ hai.
Trò chuyện với Bot
- Để liên tục trò chuyện với chatbot, chúng tôi sẽ thêm khối vĩnh viễn từ bảng khối Điều khiển bên dưới khối nói.
- Bây giờ trước tiên chúng ta sẽ nhắc người dùng đặt câu hỏi. Để làm như vậy, hãy lấy khối speak() và thêm khối join()() vào trong đó.
Lưu ý: Chúng tôi sẽ luôn thêm khối tham gia để Abby nói tên người dùng.
- Viết “Bạn đang nghĩ gì” vào khoảng trống đầu tiên của khối nối. Và thêm khối người báo cáo Tên vào khoảng trống thứ hai.
- Bây giờ để nhận dạng lại câu hỏi của người dùng, chúng tôi sẽ thêm khối nhận dạng giọng nói trong () giây trong () từ bảng trí tuệ nhân tạo để ghi lại bất cứ điều gì người dùng đang nói.
Thêm câu hỏi và câu trả lời của họ
Chatbot thường trả lời các câu hỏi được xác định trước trong đó. Vì vậy, bây giờ, chúng tôi sẽ thêm các câu hỏi phổ biến mà nếu khớp thì chatbot có thể trả lời bằng câu trả lời tương ứng.
- Bây giờ hãy lấy khối if-else từ bảng khối Điều khiển để kiểm tra xem giọng nói được nhận dạng có khớp với câu hỏi hay không.
- Bên trong nhánh if, chúng ta sẽ thêm khối () = () để kiểm tra kết quả.
- Bây giờ, vào ô trống đầu tiên bằng khối, đặt khối kết quả nhận dạng giọng nói và nhập câu hỏi “Tôi là ai? ” trong không gian thứ hai.
- Chúng tôi sẽ muốn chatbot của mình trả lời là “Bạn là ai và tên của người dùng”. Do đó, hãy lấy khối speak() từ bảng chuyển văn bản thành giọng nói vào phần if và thêm khối join()() bên trong nó từ khối vòm của người vận hành.
- Viết “Bạn là” vào khoảng trống đầu tiên của khối nối. Và thêm khối người báo cáo Tên vào khoảng trống thứ hai.
- Tương tự mình sẽ thêm một số câu hỏi mẫu, các bạn có thể thêm câu hỏi và đáp án tùy theo lựa chọn của mình.
- Nhân đôi cánh tay if và đặt nó bên dưới cánh tay khác.
- Chúng tôi sẽ chỉnh sửa nội dung với các câu hỏi và câu trả lời phù hợp.
- Bạn có thể thêm bao nhiêu câu hỏi tùy thích.
Làm cho Chatbot làm được điều gì đó phi thường
Ngoài việc chơi đùa với những câu hỏi và câu trả lời đơn giản, bạn thậm chí có thể thêm một số tính năng đặc biệt vào chatbot của mình như chúc mừng sinh nhật, kể chuyện cười, khiến nó phát một bài hát, v.v. Chúng tôi sẽ tổ chức một sự kiện tùy chỉnh như vậy cho Bday.
- Nhân đôi khối if-else như chúng ta đã làm trước đây và thay đổi phần câu hỏi bằng câu lệnh “Hôm nay là sinh nhật của tôi”.
- Bây giờ khi bài phát biểu đã khớp, chúng ta sẽ thay đổi phông nền theo chủ đề sinh nhật. Do đó, hãy thêm phông nền Bữa tiệc từ tùy chọn thêm phông nền.
- Đặt phông nền chuyển đổi thành khối () từ bảng khối Giao diện và chọn nhóm từ trình đơn thả xuống.
- Bây giờ, để mong muốn người dùng nhận được khối speak () và thêm khối join () () bên trong khối đó bên trong khoảng trống đầu tiên, hãy viết “Chúc mừng sinh nhật ” và thêm khối Tên phóng viên vào khoảng trống thứ hai.
- Bây giờ, để phát bài hát sinh nhật, hãy chuyển đến tab Âm thanh từ trên cùng và nhấp vào nút chọn âm thanh . Và âm thanh sinh nhật .
- Hãy quay lại với kịch bản.
- Từ khối âm thanh, hãy thêm âm thanh phát cho đến khi hoàn thành bên dưới khối nói và chọn ngày sinh nhật từ trình đơn thả xuống.
Thêm trường hợp mặc định
Bây giờ, hãy thêm trường hợp mặc định, nếu kết quả được nhận dạng không khớp với bất kỳ câu hỏi nào được xác định trước thì chúng tôi sẽ khiến Abby phải nói “Xin lỗi! Tôi vẫn chưa hiểu nó.”
Thêm khối speak () vào nhánh else cuối cùng của câu hỏi và viết “ Xin lỗi! Tôi vẫn chưa hiểu nó .
Nói chuyện với Abby
Bây giờ để làm cho chatbot trông thực tế hơn, chúng tôi sẽ tạo một tập lệnh nhỏ. Kịch bản này sẽ khiến nhân vật cử động mặt và tay để khiến Abby trông giống như đang nói chuyện.
- Đầu tiên, lấy thêm một khối nữa khi cờ được nhấp vào khối và thêm khối mãi mãi bên dưới nó.
- Bây giờ từ bảng khối ngoại hình, hãy lấy khối trang phục tiếp theo.
- Bây giờ, để hiển thị chuyển đổi trang phục, hãy đặt khối chờ () từ bảng khối Điều khiển và thêm thời gian chờ là 0,5 giây.
Với điều này, tập lệnh của bạn đã sẵn sàng, chỉ cần nhấp vào nút gắn cờ để bắt đầu trò chuyện với chatbot.
Kết luận
Từ dự án này, chúng tôi đã học được cách tạo chatbot tùy chỉnh của riêng mình. Chúng tôi đã sử dụng PictoBlox để tạo chương trình cơ bản nhằm tạo chatbot của mình. Hơn nữa, chúng tôi đã sử dụng các tiện ích mở rộng Trí tuệ nhân tạo và Chuyển văn bản thành giọng nói để chuyển lời nói của người dùng thành tin nhắn văn bản. Ngoài ra, chúng tôi cũng viết một tập lệnh cho chatbot lưu trữ các câu hỏi được xác định trước và phản hồi bằng câu trả lời tương ứng. Chúng tôi cũng đã thêm sự kiện tùy chỉnh cho chatbot để chúc mừng sinh nhật người dùng. Vì vậy, với điều này, chúng ta đã tìm hiểu về cách tạo một chatbot tùy chỉnh và cách thiết lập tiện ích mở rộng Nhận dạng giọng nói của PictoBlox.