Trong bản beta của Telegram dành cho macOS, chức năng đọc chính tả (nhập tin nhắn bằng giọng nói trực tiếp vào trường nhập liệu) đã được bổ sung thêm khả năng sửa văn bản được đọc chính tả bằng trình chỉnh sửa AI. Trong bản build 13.1.0.283431 phát hành ngày 1 tháng 11, có một nút «Enhance» với các tùy chọn «Fix Grammar», «Enhance Style» và «AI Editor…», một công tắc bật/tắt tính năng tự động thêm dấu câu và cài đặt cho phím tắt ⌘R trong trường nhập liệu: đọc chính tả văn bản hay ghi âm tin nhắn thoại. Bản thân chức năng đọc chính tả này nằm trong mã nguồn mở của ứng dụng, nhưng chỉ được bật trong các bản build gỡ lỗi, còn tính năng sửa lỗi bằng AI thì hoàn toàn không có trong mã nguồn mở. Điều này áp dụng cho những người dùng Mac. Trong mã nguồn mở, giọng nói được nhận dạng bởi trình nhận dạng tích hợp của Apple, nhưng trong bản beta đã xuất hiện một phương án dự phòng thông qua máy chủ của Telegram — với một giới hạn miễn phí, sau đó sẽ yêu cầu Premium.

Những tính năng mới trong bản beta

Chức năng đọc chính tả trong ứng dụng dành cho macOS được thiết kế như một phần mở rộng của việc ghi âm tin nhắn thoại: sau khi nhấn nút ghi âm, đừng nhả chuột mà hãy kéo sang trái — gợi ý ở phía dưới sẽ hiển thị «← Swipe to dictate». Việc kéo sang trái phải lớn hơn việc kéo lên trên, nếu không tin nhắn sẽ chỉ được ghim lại. Thay vì tin nhắn thoại, giọng nói sẽ được chuyển thành văn bản, và bản ghi âm sẽ bị xóa. Trong quá trình nhận dạng, phía dưới sẽ hiển thị «Transcribing. Click anywhere to stop.»; văn bản đã sẵn sàng trong mã nguồn mở sẽ được hiển thị trong một bảng riêng, từ đó bạn có thể gửi ngay lập tức hoặc thêm vào cuối trường nhập liệu và chỉnh sửa. Ngôn ngữ có thể được chọn thủ công hoặc để «Automatic». Về chức năng đọc chính tả trong bản beta 283318 đã được đề cập từ ngày 15 tháng 10; trên Android, tính năng chuyển đổi giọng nói thành văn bản trước khi gửi tương tự cũng đã được hiển thị và sau đó bị loại bỏ.

Điểm mới trong các bản beta từ ngày 24 tháng 10 (bản build 283377) là khả năng sửa văn bản đã được đọc chính tả. Các chuỗi trong bản 283431:

ChuỗiÝ nghĩa
«Enhance»nút bên cạnh văn bản được đọc chính tả; gợi ý cho nút này là «Fix punctuation and grammar in the dictated text»
«Fix Grammar»sửa lỗi dấu câu và ngữ pháp
«Enhance Style»viết lại văn bản theo một trong các phong cách
«AI Editor…»mở trình chỉnh sửa AI đầy đủ
«Enhancing…»văn bản đang được xử lý
«Automatic Punctuation»công tắc bật/tắt tính năng tự động thêm dấu câu
«What ⌘R does in the message field. Automatic dictates when the field has text and records a message when it is empty.»cài đặt ⌘R: ở chế độ «Automatic», phím tắt này sẽ đọc chính tả nếu trường nhập liệu đã có văn bản, và ghi âm tin nhắn thoại nếu trường trống
«The language you speak while dictating. Automatic uses this chat's language and your system languages.»ngôn ngữ đọc chính tả: «Automatic» sẽ sử dụng ngôn ngữ của cuộc trò chuyện này và ngôn ngữ hệ thống của bạn

Ứng dụng sẽ ghi nhớ phong cách đã chọn (kChatDictationEnhanceStyle). Dựa trên tùy chọn «AI Editor…», đây có vẻ là các phong cách tương tự như trình chỉnh sửa AI trong trường nhập liệu mà Telegram đã phát hành vào tháng 4: sửa ngữ pháp, dịch, viết lại theo phong cách «Formal», «Short», «Zen», «Corp» và các phong cách khác. Chú thích trong bài đăng chính thức cho biết các chức năng AI hoạt động trên mạng Cocoon.

Hiện tại, không thể xác định liệu nút này đã hiển thị hay chưa dựa trên bản build. Trong mã nguồn mở, chức năng đọc chính tả bị tắt trong các bản build beta và release theo điều kiện biên dịch và chỉ hoạt động trong bản gỡ lỗi; việc nó có được bật trong bản 283431 hay không không thể suy ra từ tệp nhị phân, mặc dù các chuỗi và lớp đều đã có mặt.

Cách sử dụng

  • Tìm ở đâu. Bản beta được cập nhật tự động cho phiên bản beta của Telegram dành cho macOS; danh sách các bản build có trong nguồn cấp dữ liệu cập nhật. Trong bản ổn định 13.1.0 (283357) từ ngày 20 tháng 10, công cụ đọc chính tả đã có, nhưng không có các chuỗi «Enhance», «Automatic Punctuation» và cài đặt ⌘R, và gợi ý khi ghi âm là «← Swipe to transcribe».
  • Cấp quyền. Chức năng đọc chính tả yêu cầu hai quyền của macOS: System Settings → Privacy & Security → Microphone và Speech Recognition. Nếu không có quyền thứ hai, ứng dụng sẽ hiển thị «Telegram needs Speech Recognition access to turn your voice into text».
  • Kiểm tra ngôn ngữ. Nếu không có ngôn ngữ hệ thống nào được trình nhận dạng của Apple hỗ trợ, chức năng đọc chính tả sẽ trả lời «Dictation is not available for your current input language.» Ngôn ngữ có thể được chọn thủ công thay vì «Automatic».
  • Lưu ý về ⌘R. Hiện tại, ⌘R trong Telegram dành cho macOS bắt đầu ghi âm tin nhắn thoại hoặc video; trong bản beta, phím tắt này sẽ có thêm lựa chọn, và ở chế độ «Automatic» khi trường nhập liệu không trống, nó sẽ bắt đầu đọc chính tả chứ không phải ghi âm.

Cách nhận dạng giọng nói

Nhận dạng trong mã nguồn mở hoàn toàn được thực hiện bởi Apple. Trên macOS 26, ứng dụng sẽ sử dụng công cụ SpeechAnalyzer mới nếu mô hình ngôn ngữ đã được cài đặt; nếu chưa, nó sẽ bắt đầu tải xuống trong nền và giao việc đọc chính tả này cho SFSpeechRecognizer cũ. Trên các hệ thống cũ hơn, chỉ SFSpeechRecognizer hoạt động. Yêu cầu được đánh dấu là đọc chính tả, và nếu có mô hình ngôn ngữ trên thiết bị, ứng dụng chỉ yêu cầu nhận dạng trên Mac; trên macOS 13 trở lên, dấu câu sẽ được trình nhận dạng tự động thêm vào.

Ở chế độ «Automatic», ngôn ngữ không được đoán trước: từ các ngôn ngữ hệ thống, ứng dụng chọn tối đa hai ngôn ngữ mà trình nhận dạng của Apple biết, và chạy cả hai cùng lúc trên cùng một âm thanh; ngôn ngữ thứ hai chỉ được chạy nếu mô hình của nó hoạt động mà không cần mạng. Mỗi ứng cử viên được tính một điểm số — một nửa là độ ổn định của văn bản giữa các bản cập nhật, một nửa là độ tin cậy của trình nhận dạng, cộng thêm một chút ưu tiên cho ngôn ngữ đầu tiên. Sau 1,5 giây kể từ những từ đầu tiên được nhận dạng, ứng cử viên dẫn trước ứng cử viên thứ hai 0,12 điểm sẽ thắng, và sau 3 giây — người dẫn đầu sẽ thắng trong mọi trường hợp; người thua cuộc sẽ dừng lại, sau đó âm thanh sẽ được xử lý bởi một ứng cử viên duy nhất. Trong bản beta, ngôn ngữ của cuộc trò chuyện cũng được thêm vào danh sách này.

Trong các cuộc trò chuyện bí mật, mã nguồn mở chỉ chạy các trình nhận dạng hoạt động trên thiết bị. Nếu không có mô hình như vậy cho ngôn ngữ, chức năng đọc chính tả sẽ không bắt đầu trong cuộc trò chuyện bí mật. Trong cuộc trò chuyện thông thường, ngôn ngữ đầu tiên có thể được nhận dạng mà không cần mô hình cục bộ — khi đó bản ghi âm sẽ được gửi đến máy chủ của Apple, giống như chức năng đọc chính tả hệ thống của macOS.

Phương án dự phòng qua máy chủ Telegram

Trong bản beta, chức năng chuyển đổi giọng nói thành văn bản trên máy chủ của Telegram đã được thêm vào. Trong nhật ký của ứng dụng có các chuỗi «server fallback selected» và «nativeAvailable», và trong tệp nhị phân có phương thức messages.transcribeAudioFile: nó chấp nhận một tệp âm thanh đã tải lên, chứ không phải một tin nhắn, và trả về văn bản dưới dạng phản hồi chuyển đổi giọng nói thông thường hoặc sau đó, thông qua cập nhật updateTranscribedAudioFile. Phương thức messages.transcribeAudio trước đây chỉ chuyển đổi giọng nói của tin nhắn thoại đã có trong cuộc trò chuyện — bản ghi âm chưa gửi không có số tin nhắn. Phương thức mới và bản cập nhật có trong sơ đồ API, được trích xuất từ các bản beta của macOS, nhưng không có trong tài liệu đã xuất bản.

Các giới hạn được thể hiện qua các thông báo lỗi của bản beta: bản ghi âm dài hơn 30 phút hoặc lớn hơn 1 MB sẽ không được chuyển đổi giọng nói, và sau khi sử dụng hết số lần chuyển đổi giọng nói miễn phí, sẽ xuất hiện thông báo «Your free transcriptions have been used. Telegram Premium is required to transcribe more audio.» Trong bản ổn định 13.1.0, không có phương thức hay các chuỗi này. Cách bản beta chọn giữa Apple và máy chủ Telegram và cách nó hoạt động trong các cuộc trò chuyện bí mật không thể thấy được từ bản build.

Cách kiểm tra

  • Mã nguồn mở của ứng dụng: công cụ đọc chính tả (lựa chọn ngôn ngữ, đánh giá, ngưỡng 1,5 và 3 giây, requiresOnDeviceRecognition) và bộ điều khiển, nơi kiểm tra isSupported trả về «có» chỉ trong bản build gỡ lỗi và yêu cầu nhận dạng trên thiết bị trong các cuộc trò chuyện bí mật. Cả hai tệp đã được đưa vào mã nguồn mở thông qua việc hợp nhất nhánh phát hành 13.1 vào ngày 23 tháng 10.
  • Các tệp nhị phân từ nguồn cấp dữ liệu cập nhật: beta 283431 và ổn định 283357. Các lớp ChatDictationEnhancer, ChatDictationEnhanceView, các khóa kChatDictationAutomaticPunctuation và kChatDictationShortcut và các chuỗi từ bảng chỉ có trong bản beta; trong bản ổn định có công cụ (ChatDictationSession, ChatDictationAnalyzerRecognizer) và tám chuỗi đọc chính tả, nhưng không có chức năng sửa lỗi. Trong tệp chuỗi mã nguồn mở cũng không có các tùy chọn «Enhance».
  • Phần máy chủ — các chuỗi trong tệp nhị phân 283431: AudioFileTranscription, «upload complete, calling transcribeAudioFile», updateTranscribedAudioFile và các thông báo lỗi; trong bản 283357 không có chúng.
  • Lần xuất hiện đầu tiên của ChatDictationEnhancer — sự khác biệt trong tệp nhị phân của bản beta 283377, ngày 24 tháng 10.