Công cụ dịch sách từ tiếng Anh sang tiếng Việt bằng Gemini. Tận dụng được ngưỡng API miễn phí khi dùng app qua AI Studio (dịch không tốn tiền).
Một số tính năng quan trọng khác:
- Nhận nhiều định dạng sách: 5 định dạng đầu vào là EPUB, HTML, PDF, TXT, và Markdown;
- Bảo toàn được ảnh trong bản dịch với một số định dạng nhất định (EPUB, HTML, Markdown);
- Đối với định dạng PDF, nên chuyển đổi sang Markdown bằng các công cụ ngoài nếu muốn giữ được ảnh (công cụ có hướng dẫn đầy đủ);
- Có các phase phân tích đại từ, thuật ngữ (từ khó) và tóm tắt chương trước để việc dịch được chuẩn xác hơn;
- Có khả năng xử lý được các cuốn sách lớn có độ dày lên đến 500 - 700 trang;
Chương trình sử dụng SI & Prompt từ dự án này: https://github.com/kiencang/SI-Prompt-Book-EV-Translate (v1.0.36).
Xem hướng dẫn đầy đủ và cập nhật: https://silabook-intro.wpsila.com/
Remix trên AI Studio (để tận dụng API Key miễn phí) và chỉnh sửa thêm nếu muốn: https://aistudio.google.com/apps/d25924ff-35f1-42f7-9543-f142ecfe037a?showPreview=true&showAssistant=true
Bước 1: Tạo dự án: Ở đây các bạn cần nhập chính xác tên sách & tác giả. Thông tin này quan trọng, vì sách (nhất là kinh điển) thường có thông tin rất đầy đủ trên mạng, cung cấp chính xác thông tin giúp công cụ dịch tốt hơn.
Lưu ý: Khi bạn tạo dự án, toàn bộ dữ liệu dịch của bạn sẽ được lưu cục bộ tại trình duyệt của bạn. Việc xóa dữ liệu trình duyệt có thể làm mất dữ liệu này. Luôn sử dụng tính năng xuất dự án nếu bạn muốn bảo vệ dữ liệu lâu dài.
Bước 2: Tải sách lên: Bạn tải sách gốc tiếng Anh lên. Hiện công cụ hỗ trợ 5 định dạng là EPUB, HTML, PDF, TXT & Markdown.
Định dạng khuyến khích là EPUB hoặc HTML. PDF cũng ổn nhưng sẽ mất thêm chút thời gian để phân tích chuyển đổi định dạng. Và các sách đang còn bản quyền thường bị AI từ chối phân tích. Các định dạng khác thì không bị như vậy.
Bước 3: Chia chương/khối dịch: Ứng dụng cần chia cuốn sách ra thành các chương/khối để dịch lần lượt. Ở đây bạn sẽ có các tùy chọn chia cuốn sách theo cách thức nào.
Có 2 cách:
- Nhờ AI chia: sử dụng tín năng này nếu bạn không rõ cấu trúc của cuốn sách, không biết chia thế nào cho hợp lý.
- Chia thủ công bằng các lựa chọn: bạn biết cấu trúc cuốn sách cơ bản thế nào, và chọn phương pháp phù hợp. Có 3 cách chia cơ bản:
- Chia theo chương: công cụ sẽ tự động quét các từ khóa như
chapterđể tách sách thành các chương. - Chia theo các tiêu đề lớn: nếu sách không phân thành các chương mà dùng các tiêu đề lớn thì nên chọn cách này để chia
- Chia đều tự động: nếu 2 cách trên đều bó tay, thì bạn áp dụng cách này, nó sẽ phân sách ra làm các phần nhỏ hơn dựa theo các dấu xuống dòng. Đây là cách tệ nhất để chia sách, chỉ dùng nếu 2 cách trên không áp dụng được.
- Chia thủ công có tùy chọn
Số từ tối thiểu&Số từ tối đa: cái này dùng để áp ngưỡng phân chia. Mỗi chương/khối sẽ bắt buộc phải nằm trong ngưỡng này. Bạn cũng nên điều chỉnh để xem sách chia thế nào. Ý tưởng cơ bản là: nếu chia sách quá vụn hoặc quá lớn thì đều khó dịch hơn.
- Chia theo chương: công cụ sẽ tự động quét các từ khóa như
Bước 4: Tạo đại từ xưng hô: Đại từ xưng hô có thể nói là phần khác biệt nhất giữa tiếng Anh & tiếng Việt. Tiếng Việt có đại từ xưng hô rất phức tạp, phụ thuộc vào tuổi, giới tính, vai vế, chức vụ & cả tâm trạng!
Phần này đặc biệt quan trọng cho thể loại truyện ngắn, tiểu thuyết. Các dạng sách phi hư cấu có thể không cần thiết (bấm button Bỏ qua phần này nếu không muốn tạo).
Bạn chỉ việc nhấn button, công cụ sẽ tự quét toàn bộ cuốn sách và tạo bảng đại từ đầy đủ. Vì đại từ rất quan trọng, bạn nên chọn model AI cao nhất để phân tích.
Bước 5: Tạo danh sách từ khó/thuật ngữ: hầu hết các sách đều có những từ khó dịch, nên bước này bạn nên làm với bất kỳ thể loại sách nào.
Model chọn để phân tích lý tưởng nhất vẫn là model cao nhất (Pro). Tuy nhiên sách rất tốn dữ liệu nên người dùng miễn phí để không bị gián đoạn phân tích nên dùng model tầm trung (Flash) để làm.
Bước 6: Dịch: Tiến hành dịch chính thức.
Sau khi có các nguyên liệu thô ở các bước trước, ứng dụng sẵn sàng dịch cả cuốn sách.
Các thiết lập mặc định đủ tốt trong phần lớn trường hợp. Bạn chỉ việc nhất button Dịch tất cả (để dịch cả cuốn sách) hoặc Dịch riêng phần này (để dịch một chương/khối cụ thể).
Nên chọn model cao nhất ở bước này. Tuy nhiên nếu muốn dịch nhanh hơn, không bị gián đoạn, có thể dùng model Flash.
Thường để dịch nguyên một cuốn sách ứng dụng cần 1 - 2 tiếng. Lý do là vì nó dịch theo kiểu tuần tự để đảm bảo bối cảnh tốt nhất cho các phần tiếp theo.
Đọc bản dịch ngay trong ứng dụng
Đọc song ngữ với việc so sánh dễ dàng 2 khối dịch tương ứng nhau để tiện đối chiếu
Bạn có thể vào dự án Gutenberg để tải các sách hết hạn bản quyền về dịch. Ví dụ 100 cuốn được tải về nhiều nhất trong tháng: https://www.gutenberg.org/browse/scores/top#books-last100
Về cơ bản, ý tưởng của silaBook là chia để trị. Một cuốn sách lớn không bao giờ dịch trong một phiên là xong, ứng dụng chia cuốn sách thành nhiều phần để xử lý dần dần.
Định dạng markdown đầu vào (EPUB, HTML đều sẽ được chuyển thành markdown trước khi phân tích) là một lợi thế lớn. Nó giúp công cụ ở nhiều khía cạnh:
- Sách được chia dễ hơn, và thường được chia rất tốt theo chương hoặc các đề mục lớn. Trong trường hợp bất đắc dĩ cũng chia được theo khối, cực kỳ hiếm trường hợp phải chia
giữa dònglàm gián đoạn luồng dịch & gây tình trạng lửng lơ ở các câu cuối... - Kiểm soát số lượng từ đầu vào chính xác gần như tuyệt đối, vì markdown về cơ bản giống như văn bản thuần, việc đếm từ để tránh các giới hạn quá thấp hoặc quá cao được triển khai dễ dàng;
- Tiết kiệm hơn, việc chỉ phải xử lý văn bản thuần giúp AI giảm thiểu chi phí đáng kể. Các ảnh nếu có đều đã tồn tại sẵn dưới dạng link, và AI không cần can thiệp mà chỉ cần giữ đúng vị trí của link trong bản dịch tương ứng với bản gốc là đã đủ yêu cầu;
- Có nhiều AI có khả năng xử lý hơn. Vì không phải AI nào cũng là dạng đa phương thức có khả năng nhìn ảnh, trong khi tất cả các AI lớn đều có khả năng xử lý đầu vào là text nói chung và markdown nói riêng;
- Giảm lỗi sai. Các đầu vào chuẩn như EPUB, HTML được chuyển thành markdown có độ chính xác rất cao, và các ảnh được giữ nguyên vẹn 100%. Nếu phải xử lý các định dạng không thân thiện như PDF, rất khó công cụ nào chuyển thành markdown & giữ ảnh tuyệt đối chính xác;
Điều này giúp bản dịch giữ lại được ảnh trong bản gốc. Trước khi gửi lên silaBook, bạn chuyển định dạng PDF sang markdown bằng công cụ dưới đây của Baidu. Link: https://aistudio.baidu.com/paddleocr
Sau đó tải định dạng markdown đã được chuyển đổi rồi up lên silaBook để dịch.
Hướng dẫn sử dụng:
Với cách trên ảnh sẽ vẫn hiển thị bình thường khi bạn đọc trực tiếp trên ứng dụng hoặc tải về bản PDF hoặc HTML. Nhưng vì ảnh là dạng link nên không hiển thị được ở định dạng EPUB và DOCX.
Trường hợp bạn bắt buộc cần định dạng DOCX chứa ảnh, mà định dạng gốc lại là file PDF thì thay vì dùng PaddleOCR làm công cụ trung gian bạn nên sử dụng công cụ pdf-2-epub-docx này: https://aistudio.google.com/apps/9a11586a-e712-4c10-a1b6-751ab78fc10b?showAssistant=true&showCode=true
Nó sẽ chuyển thành dạng EPUB có chứa ảnh gốc, bạn tải định dạng EPUB này về và up lên công cụ dịch là được.
Ghi chú thêm: Một công cụ khác để OCR chuyển PDF thành markdown rất mạnh & rất đẹp là MinerU, các bạn có thể truy cập ở đường dẫn này: https://mineru.net/
Nhìn chung tôi hài lòng với Gemini, nó có chất lượng tốt và có gói miễn phí hàng ngày tương đối rộng rãi.
Tuy nhiên vẫn có nhu cầu sử dụng các model AI khác để dịch. Và tôi đang triển khai một công cụ tương tự dựa trên công cụ này, nó sẽ kết hợp với OpenRouter- vốn là cổng trung gian có thể kết nối với hầu hết các AI quan trọng nhất. Điều đó giúp bạn có khả năng sử dụng bất cứ AI nào bạn muốn để dịch!
Bạn có thể tham khảo repo đó ở đây: https://github.com/kiencang/silaBook-openSky
silaBook rất mạnh dịch EPUB, HTML, Markdown, nhưng không mạnh dịch PDF ở khía cạnh bảo toàn định dạng, nhất là công thức toán.
Tôi phát triển một nhánh khác của công cụ này với khả năng dịch PDF tốt hơn hẳn, bảo toàn định dạng ở mức khá cao, và đặc biệt công thức toán được giữ lại chuẩn hơn, kể cả là các công thức phức tạp. Bạn có thể tham khảo repo đó ở đây: https://github.com/kiencang/1987-Layout
Công cụ này có thể được sử dụng cho mục đích nghiên cứu và học tập cá nhân.
silaBook cũng như người phát triển nó không đưa ra bất kỳ bảo đảm rõ ràng hay ngụ ý nào, cũng như không tuyên bố rằng công cụ sẽ vận hành hoàn hảo, chính xác hoặc cập nhật. Người phát triển sẽ không chịu trách nhiệm cho bất kỳ tổn thất hay thiệt hại nào phát sinh trực tiếp hoặc gián tiếp liên quan đến hoặc phát sinh từ việc sử dụng công cụ này.
Ứng dụng được phát triển tối ưu hoàn toàn ở phía Client-side (Trình duyệt). Một số thư viện quan trọng mà ứng dụng này dùng:
- Angular: Khung ứng dụng web đơn trang (SPA).
- Tailwind CSS: Framework utility-first CSS hỗ trợ xây dựng giao diện.
- Angular Material Icons: Cung cấp hệ thống icon.
- docx: Thư viện chuyên dụng tạo cấu trúc tài liệu Word (
.docx), hoạt động hoàn toàn phía client. - pdf-lib: Dùng để chia tách PDF thành các chunk (đoạn) để dễ xử lý hơn.
- JSZip: Công cụ nén và đóng gói thư mục sách điện tử EPUB (
.epub) ngay trên trình duyệt. - Marked & marked-footnote: Chuyển Markdown sang cấu trúc HTML, có hỗ trợ ghi chú chân trang (footnotes).
- Turndown: Chuyển đổi ngược các định dạng HTML thành cú pháp Markdown.
- idb (IndexedDB Wrapper): Thư viện wrap IndexedDB, hỗ trợ xử lý các tác vụ liên quan đến IndexedDB tốt hơn. Toàn bộ dữ liệu sách được lưu cục bộ tại trình duyệt là thông qua IndexedDB.
