Bao giờ mới có BNS Translate thay thế QT

Decepticon

Phàm Nhân
Ngọc
4,46
Tu vi
0,00
@QuangNguyen @chienthanlubu @pctrieu0812
recommend các đậu hũ dev phát triển app cho điện thoại thay vì máy tính bởi ngoài dịch giả và editor chắc chả ai đọc cv trên pc nữa roài. Ngoài ra nên phát triển theo hướng MTL online giống chi-vi-xyz chứ đừng dựa trên QT cổ lỗ sĩ như TTV Trans... vừa chậm vừa cùi.

Bên chi-vi có thuật toán tính ưu tiên khá hay, học mót được nên cơ bản đã hoàn thiện ý tưởng chia sẻ cho đậu hũ nào cần.

1. Quy trình convert
TT gốc
==> TT qua xử lý (fix dấu má, 123-abc kiểu china, chuyển phồn-giản thể, lọc hết 了 trừ các cụm từ ghép có 了)
==> Vietphrase thô
==> VietPhrase qua xử lý (fix lỗi tv)

2. Data
• VietphraseX chứa nhân Luatnhan (pronoun, danh từ, tính từ...).
Cấu trúc TT=TV=p/n/a
Ví dụ
麒麟=kỳ lân=n
我=ta=p
• Vietphrase: trừ các từ/cụm từ có trong vpx, cấu trúc giữ nguyên như cũ
• Names
• Names riêng từng truyện
• Luatnhan
• Data sửa lỗi tv thông dụng
Ví du:
một đem súng=một khẩu súng=0=512
tại ăn=đang ăn=0=512
khác chê=đừng chê=0=514
Muốn sẽ=Phải biết=0=513
[Ss]ư cửa=sư môn=1=512

Trong đó
0: repalce bình thường;
1: sử dụng regex;
512: normal
513: match case;
514: whole word;
515: match case + whole word
• Data sửa lỗi tv riêng từng truyện

3. Điểm data
• Names riêng = 16 (***)
• Names = 14 (**)
• VietphraseX = 1 (*)
• Vietphrase = 0

4. Thứ tự ưu tiên
• Ưu tiên 1: cụm từ có giá trị cao hơn
• Ưu tiên 2: cụm từ bên trái, <nhân> dài hơn
• Ưu tiên 3: <nhân> bên trái
Ví dụ
• ABC ưu tiên hơn CDE
• A<BCD*> ưu tiên hơn A<BC*>D
• A<BC*>DE ưu tiên hơn AB<CD*>E

5. Giá trị cụm từ
• Sẵn trong data = Σ Số từ x8 + Điểm data x1.25
• Tạo bởi luatnhan = Σ Số từ x8 + Điểm data <nhân> - 2.5

=> ABCDEFGH (AB, ABC, BC*, DEF**, EFGH) = ABC - DEF - G - H

Bảng giá trị tham khảo:
• AB = 16
• AB* = 16+1x1.25 = 17.25
• A<B*>C = 24+1-2.5 = 22.5
• ABC = 24
• ABC* = 25.25
• A<BC*>D = 32+1-2.5 = 30.5
• ABCD = 32
• ABCD* = 33.25
• AB** = 16+14x1.25 = 33.5
• AB*** = 16+16x1.25 = 36
• A<BCD*>E = 38.5
• A<BC*>DE = 38.5
• ABCDE = 40
• ABCDE* = 41.25
• ABC** = 41.5
• A<BCD**> = 32+14-2.5 = 43.5
• A<BC**>D = 32+14-2.5 = 43.5
• ABC*** = 44
• A<BCD***> = 45.5
• A<BC***>D = 45.5
• ABCD** = 49.5
• ABCD*** = 52
 
Last edited:

nthgiang

Phàm Nhân
Ngọc
100,52
Tu vi
0,00
Cho mình hỏi dự án phần mềm này còn tiếp tục hay chết non rồi ạ?
Mình cũng đang tự học lập trình, mô phỏng lại được phần nào cách hoạt động của phần mềm QT trên python, nhưng không có giao diện. Đang tìm bạn nào làm chung phát triển
 

pctrieu0812

Administrator
Phàm Nhân Tu Tiên
Cho mình hỏi dự án phần mềm này còn tiếp tục hay chết non rồi ạ?
Mình cũng đang tự học lập trình, mô phỏng lại được phần nào cách hoạt động của phần mềm QT trên python, nhưng không có giao diện. Đang tìm bạn nào làm chung phát triển
Viết bằng python có bạn @chienthanlubu cũng đang làm phần này, lần trước đã có 1 bản demo nhưng còn hơi nặng. 2 người cùng trao đổi hợp tác thử xem. :D
 

nthgiang

Phàm Nhân
Ngọc
100,52
Tu vi
0,00
Viết bằng python có bạn @chienthanlubu cũng đang làm phần này, lần trước đã có 1 bản demo nhưng còn hơi nặng. 2 người cùng trao đổi hợp tác thử xem. :D
Bản demo này làm được phần sau:
- Chia mỗi dòng thành các "cụm câu nhỏ" với dấu ngăn cách là dấu "." hoặc ","
- Dịch từ trong VietPhrase (thực ra là tìm và thay thế từ, mình tạm gọi là dịch)
- Tìm các cụm luật nhân có trong "cụm câu nhỏ"
+ Phần luật nhân mình chỉ làm được dịch các cụm ví dụ như 这{0}, 自{0}中 (sẽ dịch tất cả các từ {0} ở giữa),一种{0}的{1} (đây là thêm 1 cụm nữa,cụm {0} sẽ được dịch tất cả các từ ở trong này, còn cụm {1} chỉ dịch các cụm có sẵn trong VietPhrase
+ Luật nhân mình chưa làm được các cụm có {0} ở đầu như : {0}的手中
- Trong bản demo này, mình đã để mặc định làm đảo ngữ phần 的, ví dụ như 我的自行车, dịch là "xe đạp của tôi", nếu vietphrase tìm được từ "của" đứng độc lập, lặp tức sẽ đổi 2 vế, và dịch thành "xe đạp tôi" bỏ từ "của" ở giữa. Để không bị đảo ngữ, trong phần VietPharse phải có "cụm từ+的"
- Và thêm phần mà mình mới làm hôm qua là chọn nghĩa của từ trong VietPharse đối với các từ nhiều nghĩa, nhằm khai thác tối VietPhrase cũng như nghĩa của từ được phù hợp hơn trong câu. Ví dụ từ 被 (bị/được), nếu trong "cụm câu nhỏ" có từ 救(cứu), thì nghĩa là trả về trong vietphrase là "được". Phần này mình để trong file Means.txt.
- Bản demo mình chưa có giao diện, mặc định sẽ lấy dữ liệu trong file "nguon.txt" để dịch và tạo ra file kết quả "kq.txt" trong cùng thư mục.
- File VietPhrase mình nhỏ là do lượm nhặt trên internet về rồi, xài VietPhrase của các nguồn khác dịch, mình đã bỏ phần đánh số, phần này nếu có thời gian mình sẽ làm thẳng vào chương trình, góp phần giảm dung lượng file Vietphrase
- Do đây là những kiến thức lượm nhặt và mình tự học trên internet nên chương trình khó tránh khỏi sai sót, tốc độ thực hiện hơi chậm mong các bạn góp ý để mình hoàn thiện thêm chương trình.
- Cuối cùng mình xin tác giả QuickTrans bỏ qua vì đã mô phỏng chức năng của chương trình mà chưa hỏi qua ý kiến của tác giả.
File exe chia sẻ trên google drive bị kiểm duyệt !
 
Last edited:

Những đạo hữu đang tham gia đàm luận

Top