Auto-I18N: Alat terjemahan multibahasa otomatis menggunakan chatgpt
Auto-I18N adalah alat yang secara otomatis menerjemahkan file penanda tangan ke dalam multibahasa menggunakan chatgpt. Ini mengimplementasikan otomatisasi penuh posting blog I18N (internasionalisasi). Anda hanya perlu mendorong posting blog Anda ke repositori GitHub Anda untuk secara otomatis diterjemahkan ke berbagai bahasa dengan tindakan github. (Bahasa Inggris, Spanyol dan Arab saat ini didukung, dan lebih banyak dukungan bahasa akan diberikan di masa depan)
Fitur utama Auto-I18N:
- Terjemahan multibahasa batch : Auto-I18n menyediakan fungsi terjemahan batch, memungkinkan Anda untuk menerjemahkan semua dokumen penurunan harga di seluruh jalan ke dalam bahasa multibahasa pada satu waktu, sangat meningkatkan efisiensi proyek multibahasa.
- Kompatibel dengan materi depan : Kompatibel Auto-I18n dengan sintaks materi depan Markdown, Anda dapat menyesuaikan aturan terjemahan atau penggantian untuk bidang yang berbeda.
- Penggantian Konten Memperbaiki : Auto-I18N juga mendukung penggantian konten tetap. Jika Anda ingin terjemahan beberapa bidang duplikat dalam dokumen tetap tidak berubah, fitur ini dapat membantu Anda mencapai dokumentasi yang konsisten.
- Alur kerja otomatis : Anda dapat menggunakan tindakan GitHub untuk mengimplementasikan proses terjemahan otomatis. Tanpa intervensi manual, pekerjaan terjemahan akan secara otomatis melanjutkan dan memperbarui dokumen, memungkinkan Anda untuk lebih fokus pada konten.
Mulailah dengan cepat
- Mengkloning repositori secara lokal, mengganti nama
env_template.py ke env.py dan menyediakan chatgpt api Anda. Jika Anda tidak memiliki API sendiri, Anda dapat mengajukan permohonan yang gratis di GPT_API_FREE; Anda juga dapat menggunakan Go-CHATGPT-API untuk mengonversi versi web ChatGPT menjadi API untuk digunakan. - Instal Modul yang Diperlukan:
pip install -r requirements.txt . - Jalankan perintah
python auto-translater.py untuk menjalankan program, yang secara otomatis akan memproses semua file penurunan harga di Test Directory testdir/to-translate , dan batch menerjemahkannya ke dalam bahasa Inggris, Spanyol, dan Arab. (Lebih banyak dukungan bahasa akan diberikan di masa depan)
Deskripsi terperinci
Logika berjalan dari program auto-translater.py adalah sebagai berikut:
- Program akan secara otomatis memproses semua file penurunan harga di Test Directory
testdir/to-translate . Anda dapat mengecualikan file yang tidak perlu diterjemahkan dalam variabel exclude_list . - Nama file yang diproses akan direkam dalam
processed_list.txt yang dihasilkan secara otomatis. File yang diproses tidak akan diterjemahkan lagi pada saat program dijalankan. - Untuk artikel yang awalnya ditulis dalam bahasa Inggris, program ini tidak akan diterjemahkan kembali ke dalam bahasa Inggris, juga tidak akan diterjemahkan kembali ke bahasa Mandarin, tetapi akan diterjemahkan ke dalam bahasa lain. Anda perlu menambahkan bidang dalam artikel
> This post was originally written in English. (Perhatikan bahwa ada garis kosong di setiap bagian atas dan bawah) untuk dikenali program. Silakan merujuk ke tes artikel_en.md. - Jika Anda perlu menerjemahkan ulang artikel yang ditentukan (misalnya, hasil terjemahan tidak akurat, atau konten artikel telah berubah, dll.), Anda dapat menambahkan bidang
[translate] ke artikel (juga Anda perlu meninggalkan garis kosong di bagian atas dan bawah). Ini akan mengabaikan aturan exclude_list dan processed_list dan memaksa pemrosesan terjemahan. Silakan merujuk ke tes artikel_force-mark.md. - Jika file Markdown berisi materi depan, metode pemrosesan berikut akan dipilih sesuai dengan aturan dalam program
front_matter_translation_rules :- Terjemahan Otomatis: Diterjemahkan oleh Chatgpt. Berlaku untuk judul artikel atau bidang deskripsi artikel.
- Penggantian Bidang Tetap: Berlaku untuk Kategori atau bidang label. Misalnya, jika nama label Cina yang sama tidak ingin diterjemahkan ke dalam label bahasa Inggris yang berbeda, itu menyebabkan kesalahan indeks.
- Tidak ada pemrosesan yang dilakukan: Jika bidang tidak muncul dalam dua aturan di atas, teks asli akan dipertahankan dan tidak ada pemrosesan yang akan dilakukan. Berlaku hingga saat ini, URL, dll.
Panduan Otomasi Tindakan GitHub
Anda dapat membuat .github/workflows/ci.yml di bawah repositori proyek Anda. Ketika repositori GitHub terdeteksi, Anda dapat menggunakan tindakan GitHub untuk secara otomatis menerjemahkan dan memprosesnya dan secara otomatis berkomitmen kembali ke repositori asli.
Isi ci.yml dapat dirujuk sebagai Templat: CI_Template.yml
Anda perlu menambahkan dua rahasia dalam Settings repositori - Secrets and variables - Repository secrets : CHATGPT_API_BASE dan CHATGPT_API_KEY , dan mengomentari pernyataan import env dalam program auto-translater.py .
Pemecahan masalah kesalahan
- Jika Anda perlu memverifikasi ketersediaan tombol API chatgpt, Anda dapat menggunakan program verifikasi-api-key.py untuk mengujinya. Jika Anda menggunakan API resmi di negara ini, Anda harus memiliki proxy lokal.
- Jika materi depan dalam penurunan harga tidak dapat dikenali secara normal, Anda dapat menggunakan program detect_front_matter.py untuk menguji.
- Saat Anda mengalami masalah menggunakan tindakan github, prioritaskan memeriksa bahwa referensi jalur benar (misalnya,
dir_to_translate dir_translated_en dir_translated_es dir_translated_ar processed_list ).
Masalah yang harus diselesaikan
- Dalam beberapa keadaan khusus, terjemahannya mungkin tidak akurat atau beberapa bidang tidak diterjemahkan. Dianjurkan untuk memverifikasi artikel setelah terjemahan secara manual.
- (Terselesaikan)
Jika materi depan termasuk dalam penurunan harga, konten asli dari materi depan akan dipertahankan. Materi depan Beberapa fungsi terjemahan parameter sedang dikembangkan.
menyumbang
Selamat datang untuk berpartisipasi dalam peningkatan proyek ini! Jika Anda ingin berkontribusi kode, melaporkan pertanyaan, atau membuat saran, lihat panduan kontribusi.
Hak Cipta dan Lisensi
Proyek ini mengadopsi lisensi MIT.
Pertanyaan dan dukungan
Jika Anda mengalami masalah dengan Auto-I18N atau memerlukan dukungan teknis, jangan ragu untuk mengirimkan masalah tersebut.
Blog saya menggunakan Auto-I18N untuk menerapkan dukungan multibahasa, dan Anda dapat pergi ke wiki Power untuk melihat efek demo.
Ucapan Terima Kasih
- Terima kasih kepada Chatanywhere/GPT_API_FREE untuk kunci API chatgpt gratis.
- Terima kasih kepada Linweiyuan/go-chatgpt-API untuk metode untuk mengonversi chatgpt ke API di web.