Nhiệm vụ: Thêm tính năng nhận diện giọng nói đơn từ trên trình duyệt cho câu trả lời của trẻ

Thêm tính năng nhận diện giọng nói đơn từ trên trình duyệt cho câu trả lời của trẻ

Nhận diện câu trả lời bằng giọng nói ngắn gọn của trẻ qua Web Speech API trong các bài tập dạng "Cái gì hiển thị trong hình ảnh?".

Mục tiêu

Thêm kịch bản trả lời bằng giọng nói đơn giản cho trẻ trong các bài tập có hình ảnh.

Ví dụ:

  1. Hình ảnh con chó hiển thị trên màn hình.
  2. Trẻ nhấn nút micrô.
  3. Nói: "Chó".
  4. Trình duyệt nhận diện những gì đã nói.
  5. Ứng dụng nhận văn bản và so sánh với câu trả lời mong đợi.

Tương tự cho các câu trả lời ngắn như "cá", "mèo", "nhà", v.v.

Nền tảng kỹ thuật

Sử dụng Web Speech API của trình duyệt:

  • SpeechRecognition hoặc webkitSpeechRecognition;
  • recognition.lang = 'ru-RU';
  • đối với câu trả lời đơn, dùng continuous = false;
  • có thể dùng interimResults = false cho phiên bản đầu tiên đơn giản nhất;
  • lấy kết quả từ event.results / transcript.

Những gì cần hỗ trợ

  • nút bắt đầu ghi âm;
  • trạng thái trực quan "đang nghe";
  • dừng lại sau một câu trả lời ngắn;
  • nhận văn bản được nhận diện cuối cùng;
  • chuẩn hóa văn bản trước khi so sánh: chữ thường, cắt khoảng trắng (trim), xóa dấu câu nếu cần thiết;
  • so sánh với từ mong đợi;
  • các trạng thái: chính xác / không nhận diện được / lỗi truy cập micrô / API không khả dụng;
  • khả năng thử lại.

Hạn chế

SpeechRecognition được hỗ trợ không đồng đều giữa các trình duyệt và có thể sử dụng dịch vụ nhận diện giọng nói bên ngoài của trình duyệt/nền tảng. Điều này có thể chấp nhận được đối với kịch bản này: nhiệm vụ không phải là nhận diện ngữ âm cục bộ hay dùng LLM, mà là câu trả lời một từ thực tế, ngắn gọn của trẻ.

Ở giai đoạn đầu, không cố gắng nhận diện lời nói tự do, câu hoàn chỉnh hay đánh giá phát âm âm vị.