Bot TTS đọc sai tiếng Việt: dạy Voxy đọc đúng tên và teencode
Bot TTS đọc sai tiếng Việt, đọc chữ không dấu hay tên người gửi lệch? Dùng từ điển /dictionary của Voxy: phiếu mẫu để chép, cách thử từng từ và ai được sửa.
Tác giả: Voxy · Ngày đăng:
Bài viết gốc bằng tiếng Việt.

Bot TTS đọc sai tiếng Việt thường không phải sai cả câu, mà là vài chữ quen bị đọc lệch, lần nào cũng lệch: tên game viết tắt, biệt danh một thành viên gõ không dấu, một kiểu teencode riêng của nhóm. Nhắc từng người gõ đầy đủ thì không ai nhớ lâu, còn đổi giọng chưa chắc đã sửa được đúng mấy chữ đó. Từ ngày 25/10/2026, Voxy có từ điển phát âm cho cả máy chủ: lệnh /dictionary add dạy mọi Voxy trong máy chủ đọc đúng tên, tên game và từ viết tắt.2 Đây là thay đổi của Voxy, không phải một cập nhật của Discord.
Bài này đi qua cách từ điển khớp từ, một phiếu lập từ điển để chép, cách thử từng từ và chuyện ai nên được sửa. Cú pháp đầy đủ của từng lệnh nằm ở trang Lệnh.
Từ điển, sửa câu hay đổi giọng
Ba cách sửa này dành cho ba kiểu lỗi khác nhau. Chọn nhầm cách thì sửa mãi vẫn không hết.
| Hiện tượng | Nên làm | Vì sao |
|---|---|---|
| Cùng một chữ bị đọc lệch ở nhiều tin, do nhiều người gõ: tên game viết tắt, biệt danh, tiếng lóng của nhóm | Thêm vào từ điển | Sửa một lần, áp cho các tin sau đó và cho mọi Voxy trong máy chủ |
| Một câu cụ thể dễ hiểu nhầm: ngày "15/11", tỉ số, khoảng tiền | Viết lại chính câu đó | Chỗ mơ hồ nằm ở ngữ cảnh của câu, không nằm ở một chữ cố định |
| Chữ nào nghe cũng khó, hoặc cả phòng không hợp với chất giọng | Đổi giọng | Vấn đề nằm ở giọng, không nằm ở chữ được gửi đi đọc |
Cách viết lại câu có số, ngày và giờ nằm ở bài bot TTS đọc số tiếng Việt; cách chọn giọng nằm ở bài chọn giọng đọc tiếng Việt cho Discord. Một dấu hiệu dễ nhận ra để dùng từ điển: cùng một chữ mà cả nhóm đã phải nhắc nhau "gõ đủ ra đi" từ hai lần trở lên. Nếu chữ đó chỉ xuất hiện trong một tin, sửa tin nhanh hơn.
Voxy khớp từ trong từ điển thế nào
Hiểu cách khớp từ thì tránh được phần lớn mục thêm nhầm:
- Không phân biệt hoa thường, chỉ khớp nguyên từ. "LMHT", "Lmht" hay "lmht" đều khớp cùng một mục, nhưng "lm" không khớp bên trong "lmht".1 Nhờ vậy teencode có sẵn "lm" (đọc là "làm") không chen vào giữa tên game.
- Để trống
saythì Voxy bỏ qua từ đó.1 Hợp với những chữ chỉ làm câu đọc to thêm rối. - Từ của máy chủ cũng áp vào tên người nói.1 Với tùy chọn
namescủa/config, Voxy đọc tên người nói khi đổi người, và tùy chọn này bật sẵn.1 Vì vậy một mục như "mup" → "Múp" sửa luôn chỗ bot TTS đọc tên người gửi. Riêng teencode có sẵn không áp vào tên: thành viên tên "K" vẫn giữ tên như được viết, không bị đổi thành "không". - Một từ điển cho mọi Voxy. Mỗi mục áp cho mọi Voxy trong máy chủ.1 Một máy chủ dùng được tối đa 4 bot,3 và cả bốn đọc theo cùng một từ điển.
- Có thể dạy cả cụm vài chữ. Khi hai mục chồng lên nhau, cụm dài hơn được xét trước.
- Link, khối code và mốc giờ của Discord không bị từ điển đổi. Link vẫn được đọc là "đường dẫn". Khối code vẫn được đọc là "đoạn code".2
- Cách đọc được giữ nguyên chữ. Phần
saykhông bị từ điển hay teencode đổi thêm lần nữa, nên hãy viết phần đọc bằng tiếng Việt đủ dấu và không viết tắt trong đó.
Phiếu lập từ điển cho máy chủ
Trước khi gõ lệnh, ghi ra một phiếu ngắn để người quản lý duyệt một lượt. Các dòng dưới đây là ví dụ hư cấu, chỉ để minh họa cách điền.
| Từ gõ trong chat | Cách đọc mong muốn | Lý do | Ai duyệt |
|---|---|---|---|
| lmht | liên minh huyền thoại | Tên game nhóm gõ hằng ngày | Mod |
| đtcl | đấu trường chân lý | Viết tắt tên game, người mới vào phòng khó đoán | Mod |
| mup | Múp | Biệt danh của một thành viên, tên hiển thị gõ không dấu | Chính người đó đồng ý, rồi quản lý thêm |
| ko · | không (giữ nguyên) | Teencode có sẵn, đã đúng ý nhóm | Không cần làm gì |
| bt · | bình thường | Trong nhóm này "bt" thường là "bình thường", không phải "biết" như mặc định | Quản lý máy chủ, sau khi hỏi cả nhóm |
| ukm · | (để trống) | Gõ liên tục khi chat nhanh, nghe "ừm" lặp lại thấy rối | Quản lý máy chủ |
Bản trống để chép vào ghi chú của người quản lý:
PHIẾU LẬP TỪ ĐIỂN – [tên máy chủ]
Từ gõ trong chat | Cách đọc mong muốn | Lý do | Ai duyệt
[từ] | [cách đọc đủ dấu, hoặc để trống để bỏ qua] | [vì sao cần sửa] | [người duyệt]
[từ] | [...] | [...] | [...]
Lệnh tương ứng (mỗi lượt một dòng):
/dictionary add term: lmht say: liên minh huyền thoại
/dictionary add term: bt say: bình thường
/dictionary add term: ukm
Dấu · là cách /dictionary list đánh dấu teencode có sẵn;1 khi gõ lệnh thì bỏ dấu này đi, và một teencode đã đổi cách đọc sẽ không còn dấu · trong danh sách. Cột "Ai duyệt" không phải quyền trong Discord; nó chỉ ghi lại ai đã đồng ý trước khi một người có quyền gõ lệnh. Dòng cuối không có say, nghĩa là Voxy sẽ bỏ qua "ukm".
Giữ, đổi, bỏ qua và xoá là bốn việc khác nhau. Muốn đọc khác thì dùng /dictionary add với cùng từ.1 Muốn Voxy im ở chữ đó thì thêm với say trống. Còn /dictionary remove xoá hẳn mục, kể cả teencode có sẵn, và teencode có sẵn đã xoá sẽ không tự quay lại.1 Sau khi xoá, từ điển không còn quy tắc nào cho chữ đó.
Từ điển giữ tối đa 300 từ.1 Teencode có sẵn cũng tính vào con số này. Ngoài số từ còn có giới hạn tổng độ dài, nên nếu bot báo từ điển đầy dung lượng, hãy xoá bớt những mục có cách đọc dài. Mỗi từ gõ dài không quá 50 ký tự, mỗi cách đọc không quá 100 ký tự.
Chữ không dấu: một cách viết, hai nghĩa
Từ điển khớp theo mặt chữ, không theo ngữ cảnh. Một mục đã thêm áp cho mọi chỗ chữ đó đứng thành một từ riêng, trong mọi tin nhắn, và với từ do máy chủ tự thêm thì cả trong tên người nói. Đây là chỗ dễ vấp nhất khi sửa lỗi bot TTS đọc chữ không dấu.
Ví dụ "bt": teencode có sẵn đọc là "biết", nhưng nhiều người gõ "bt" để nói "bình thường". Voxy không đoán được người gõ muốn nghĩa nào, nên máy chủ phải chọn một trong ba: giữ "biết", đổi thành "bình thường", hoặc bỏ qua. Dù chọn cách nào, những tin dùng nghĩa còn lại sẽ nghe sai. Biệt danh cũng vậy: "Toan" có thể là Toàn hoặc Toán. Nếu phòng có cả hai người, một mục duy nhất sẽ đọc sai một trong hai tên.
- Chỉ thêm những chữ gần như chỉ có một nghĩa trong máy chủ của bạn.
- Với biệt danh trùng mặt chữ, nhờ thành viên đặt tên hiển thị có dấu hoặc thêm một chữ để phân biệt, thay vì thêm vào từ điển.
- Chữ nào cả nhóm còn tranh cãi nghĩa thì để nguyên và viết rõ trong từng tin.
Thử từng từ một
Mỗi lần thêm hoặc đổi một mục, thử ngay trong phòng đang có Voxy:
- Thêm một từ. Ví dụ
/dictionary add term: lmht say: liên minh huyền thoại. Kết quả lệnh hiện công khai trong kênh, nên cả nhóm thấy mục vừa thêm.1 - Gửi một câu thử trung tính. Câu ngắn, có đúng từ vừa thêm, không có tên ai hay chuyện riêng, ví dụ "tối nay có ai chơi lmht". Gửi thêm một câu có chữ gần giống, ví dụ "lm xong bài chưa", để chắc mục mới không lan sang chữ khác.
- Nghe. Nhờ thêm một người trong phòng nghe cùng. Người vừa gõ thường "nghe ra" đúng chữ mình đã biết trước.
- Chỉnh. Chưa ổn thì gõ lại
/dictionary addvới cùng từ và cách đọc khác, vì lệnh này vừa thêm vừa sửa.1 Với tên nước ngoài, thử tách thành các âm tiếng Việt, ví dụ "kenzy" → "ken di".
Với tên người nói, câu thử phải do chính người đó gửi, khi tùy chọn names đang bật. Voxy đọc tên khi đổi người nói,1 nên để một người khác nhắn trước một câu.
Mỗi lượt chỉ đổi một mục. Đổi ba từ rồi mới nghe thì khó biết mục nào gây ra kết quả lạ. Kết quả nghe được cũng chỉ đúng với giọng đang dùng: khi máy chủ đổi giọng, hoặc một thành viên chọn giọng riêng bằng /myvoice, hãy nghe lại vài từ quan trọng.
Ai được sửa và cách rà lại
Mặc định chỉ người có quyền Quản lý máy chủ được sửa từ điển, để tránh bị phá.1 Người quản lý có thể cho thêm một role được sửa bằng /dictionary role, ví dụ role Mod.13 Bỏ trống role thì quay về chỉ người quản lý.1 Mỗi lúc chỉ có một role như vậy: chọn role khác sẽ thay role cũ.
Có lý do để giữ quyền này chặt. Một mục mới áp cho mọi Voxy trong máy chủ ở những tin sau đó. Ai có quyền sửa cũng có thể khiến bot đọc một chữ quen thành một câu khác hẳn, kể cả trong tên người nói. Phiếu ở trên giúp mỗi thay đổi có người duyệt trước.
Để rà lại, /dictionary list cho mọi thành viên xem từ điển, 40 từ mỗi trang, teencode có sẵn có dấu ·.1 Nên xem lại sau mỗi đợt thêm từ, và xem hết các trang khi đổi người giữ role sửa từ điển. Vì kết quả lệnh hiện công khai trong kênh,1 hãy gõ ở một kênh văn bản ít người thay vì chat của phòng đang nói chuyện.
Đừng đưa thông tin riêng vào từ điển: họ tên thật đầy đủ, số điện thoại, tên trường hay chỗ làm. Ai trong máy chủ cũng xem được danh sách.1 Từ điển được lưu cho tới khi bị xoá hoặc đổi, và không tự xoá khi Voxy rời máy chủ; muốn xoá thì gửi email yêu cầu.4 Chi tiết có ở chính sách quyền riêng tư.
Những gì từ điển không làm
- Không làm giọng đọc hoàn hảo. Từ điển chỉ đổi chữ được gửi đi đọc. Giọng phát âm phần chữ đó ra sao vẫn tùy giọng đang dùng.
- Không hiểu ngữ cảnh. Một chữ chỉ có một cách đọc cho cả máy chủ, như phần chữ không dấu ở trên.
- Không thay việc viết rõ con số. Ngày dạng "15/11", giờ dạng "9:30" hay tỉ số vẫn cần viết rõ trong từng tin, theo bài đọc số tiếng Việt.
- Không làm bot đang im lên tiếng. Nếu Voxy không đọc gì cả, xem các bước khi bot vào voice nhưng không đọc.
Các thay đổi khác của Voxy, kể cả lần ra mắt từ điển này, được ghi ở trang Có gì mới.


