Situs ini diterjemahkan otomatis ke berbagai bahasa dengan perangkat lunak yang dikembangkan oleh Kohei Koyanagi. Untuk akurasi, silakan lihat versi asli dalam bahasa Inggris .

Bagaimana Blog Ini Diterjemahkan ke 42 Bahasa

Splync Blog Ada dalam 42 Bahasa

Ini adalah artikel ke-23 di blog saya untuk Splync, pelacak anggaran bersama untuk pasangan, teman, dan keluarga. Anda mungkin bertanya-tanya bagaimana saya mempublikasikan setiap posting dalam 42 bahasa meskipun saya seorang insinyur solo. Seperti yang dijelaskan di awal setiap artikel, situs ini diterjemahkan secara otomatis ke berbagai bahasa menggunakan perangkat lunak yang saya buat sendiri. Untuk lebih jelas: saya tidak menulis satu pun kalimat secara manual dalam bahasa lain selain bahasa Inggris. Karena itu, saya mohon pembaca merujuk pada versi asli bahasa Inggris saat ketepatan makna benar-benar penting. Meski begitu, setelah banyak percobaan dalam memperbaiki alur terjemahan, saya yakin kualitas terjemahannya cukup baik. Dalam artikel ini, saya akan berbagi tentang apa yang dilakukan perangkat lunak saya untuk membuat blog Splync menjadi multibahasa.

Python dan OpenAI API Bekerja Bersama

Saya selalu memulai dengan menulis setiap artikel dalam bahasa Inggris, termasuk metadata terkait SEO. Setelah itu, skrip Python saya mengirim teks bahasa Inggris ke OpenAI API, beserta prompt dan file referensi kecil. Di server OpenAI, ChatGPT-4o membaca permintaan dan mengembalikan artikel yang diterjemahkan — misalnya, versi Arab — dalam format JSON. Begitu MacBook saya menerima terjemahan tersebut, skrip segera mengirim permintaan lain, kali ini meminta bahasa Bengali. Skrip ini secara otomatis menelusuri semua 42 bahasa target. Di akhir proses, komputer saya memiliki 42 file JSON terjemahan. Skrip Python lain kemudian menyematkan setiap terjemahan ke dalam template HTML dan menghasilkan 42 file HTML dalam waktu kurang dari satu detik. Semua file diunggah ke server tempat blog ini dihosting, dan setiap versi bahasa ditempatkan dalam direktori tersendiri. Akhirnya, skrip Python di sisi server memperbarui indeks artikel dan tautan “Posting berikutnya” sehingga navigasi setiap bahasa tetap konsisten. Dengan artikel asli bahasa Inggris ditulis dalam teks biasa, seluruh proses biasanya memakan waktu 5 menit atau kurang. Ketika saya perlu membuat perubahan, saya memperbarui beberapa file HTML sekaligus menggunakan skrip Python di sisi server.

Apa Itu API

Jika Anda tidak akrab dengan istilah teknis, Anda mungkin bertanya-tanya bagaimana komputer saya "berbicara" dengan server OpenAI. Jawabannya adalah sesuatu yang disebut API, Application Programming Interface. Anda bisa menganggap API sebagai jendela penghubung antara dua program: satu program mengirim permintaan, dan yang lain mengirim balasan. Misalnya, skrip Python saya mengirim pesan seperti, "Tolong terjemahkan artikel ini ke bahasa Jerman." OpenAI menerima pesan itu melalui API, menyiapkan terjemahan, dan mengirim hasilnya kembali. Ini bekerja seperti memesan di restoran: Anda memberi tahu pelayan apa yang Anda inginkan, dapur menyiapkannya, dan pelayan mengantarkannya kembali ke meja Anda. Dan mengapa Anda memerlukan pelayan? Karena Anda tidak masuk ke dapur atau berbicara langsung dengan koki — Anda tidak tahu bagaimana dapur bekerja, dan Anda tidak membutuhkannya. Anda mungkin berkata, "Boleh saya pesan cheeseburger?" kepada pelayan, dan pelayan mungkin meneriakkan, "Pesanan siap! T21, Chihuahua!" dalam format yang sama sekali berbeda. API memainkan peran yang sama. Ini menghubungkan dua sistem berbeda tanpa mengharuskan mereka memahami bahasa atau alur kerja internal masing-masing.

Mengapa Saya Membutuhkan OpenAI API

Sekarang setelah kita melihat apa itu API, inilah alasan saya benar-benar bergantung padanya untuk blog ini. Secara praktis, saya tahu bagaimana "berbicara" dengan ChatGPT sendiri — tetapi saya harus memproses 42 bahasa. Memanggil pelayan 42 kali akan sangat melelahkan (program melewatkan penerjemahan bahasa Inggris ke bahasa Inggris, tetapi tetap mengonversi teks ke JSON). Menggunakan OpenAI API memungkinkan skrip Python saya mengirim semua permintaan itu secara otomatis, menghemat saya dari pekerjaan berulang sehingga saya dapat fokus pada hal lain. Saya adalah pengembang solo, jadi saya perlu menggunakan waktu saya seefisien mungkin. Setiap kali melihat tugas yang berulang dan memiliki aturan jelas, saya mengotomatisasinya. Hasilnya biasanya proses yang jutaan kali lebih cepat dan benar-benar bebas dari kesalahan. Itulah mengapa otomatisasi melalui API sangat penting — ini memungkinkan skrip saya untuk melakukan semua 42 "pesanan" secara instan dan andal.

Mengapa 42 Bahasa

Secara teknis, saya bisa menambahkan lebih banyak bahasa; hanya butuh beberapa menit lagi untuk menjalankannya saat saya mencuci piring. Tetapi saya pribadi menyukai angka 42, "Jawaban untuk Pertanyaan Tertinggi tentang Kehidupan, Alam Semesta, dan Segalanya" dari buku Douglas Adams. Selain ketertarikan saya pada angka 42, menambahkan bahasa yang sangat minor bisa berisiko, karena terjemahan AI mungkin menjadi kurang andal untuk bahasa dengan data pelatihan yang terbatas.

Suhu ChatGPT 4o

Ketika pertama kali bereksperimen dengan pendekatan terjemahan multibahasa ini, hasilnya lumayan tetapi tidak sempurna. Beberapa kalimat diterjemahkan secara keliru, terlalu harfiah, atau sedikit menyesatkan dalam bahasa tertentu. Saya juga khawatir tentang tanpa sengaja menghasilkan ungkapan yang mungkin tidak pantas atau sensitif dalam konteks budaya tertentu. Dan tentu saja, saya tidak ingin terjemahan saya terdengar kaku atau mekanis. Salah satu faktor kunci di balik kualitas terjemahan adalah pengaturan suhu — parameter yang mengontrol seberapa "kreatif" atau "ketat" AI seharusnya. Suhu tinggi membuat AI lebih imajinatif, tetapi juga lebih tak terduga. Suhu rendah membuatnya tetap dekat dengan makna asli, tetapi kadang terasa kaku. Dibutuhkan banyak percobaan dan kesalahan untuk menemukan keseimbangan yang tepat: cukup rendah untuk memastikan akurasi, tetapi tidak begitu rendah hingga teks menjadi tak bernyawa. Setelah banyak eksperimen, saya merasa bahwa suhu = 0.8 adalah yang terbaik untuk kebutuhan blog ini: cukup akurat untuk tetap setia pada bahasa Inggris asli, tetapi cukup fleksibel untuk terdengar alami dalam bahasa lain.

ChatGPT 5.x Tidak Mendukung Suhu

Model terbaru seperti ChatGPT 5 dan 5.1 tidak lagi mendukung pengaturan suhu sama sekali — parameter ini telah dihapus dan digantikan oleh konsep seperti penalaran dan usaha, yang mempengaruhi cara model berpikir daripada seberapa "kreatif" yang dapat dicapai. Dengan kata lain, ChatGPT 4o memberi saya kenop fisik yang bisa saya putar untuk mengatur gaya terjemahan, tetapi keluarga 5.x mengikuti filosofi yang sama sekali berbeda. Jika Anda dengan santai meminta model terbaru untuk "menerjemahkan ini dengan suhu = 0.8," mungkin akan mencoba bertindak seolah-olah pengaturan seperti itu masih ada, tetapi secara internal parameter itu hilang. Model hanya meniru niatnya. Seiring OpenAI terus memperbarui model mereka, mungkin suatu hari saya akan menyesuaikan alur terjemahan saya. Untuk saat ini, ChatGPT 4o tetap menjadi pilihan saya untuk terjemahan multibahasa — tidak hanya karena memahami konteks dengan baik di banyak bahasa, tetapi juga karena harga API-nya masuk akal untuk pengembang solo seperti saya. Bahkan, 4o mungkin akan tercatat sebagai salah satu model paling dicintai dalam sejarah OpenAI.

Pekerja OpenAI API

Satu hal luar biasa tentang OpenAI API — dibandingkan dengan menggunakan ChatGPT langsung di browser — adalah Anda dapat menggunakan lebih dari satu "pekerja" ChatGPT secara bersamaan. Ketika saya mengirim permintaan terjemahan untuk 42 bahasa, saya tidak mengirimnya satu per satu dalam antrean yang lambat. Sebaliknya, API dapat memproses banyak permintaan secara paralel, seolah-olah saya tiba-tiba menyewa satu ruangan penuh penerjemah yang semuanya mulai bekerja sekaligus. Skrip Python saya menangani alur kerja seperti jalur produksi kecil: mempersiapkan artikel bahasa Inggris, mengirim permintaan, menunggu tanggapan, dan memproses hasil menjadi file JSON. Sementara itu, server OpenAI menjalankan beberapa instance model secara bersamaan, masing-masing menerjemahkan bahasa berbeda secara paralel. Ini adalah sesuatu yang tidak dapat dilakukan situs web atau aplikasi ChatGPT — antarmuka tersebut memberi Anda satu model, satu percakapan, satu tugas pada satu waktu. Tetapi dengan API, Anda dapat memperluas beban kerja Anda sesuai dengan kemampuan skrip Anda. Bagi pengembang solo seperti saya, ini terasa seperti memiliki tim kecil asisten paling cerdas dan tanpa ego. Ini sebagian tergantung pada kecepatan internet, tetapi saya biasanya mengatur pekerja = 12.

Cara Saya Membuat Blog Saya Multilingual dengan Cara Mencuci Piring

Saya dulu bekerja sebagai pencuci piring di kafetaria mahasiswa ketika saya belajar matematika di Universitas Kyoto. Meskipun bayarannya sekitar 5 USD per jam, saya selalu menyukai pekerjaan manual berulang setelah menghabiskan beberapa jam — atau kadang-kadang beberapa hari — dalam konsentrasi intelektual yang mendalam. Kemudian, ketika saya bekerja di pabrik bawang putih di Hokkaido, pekerjaan saya hanyalah memoles ribuan umbi bawang putih putih agar terlihat lebih cerah di sabuk konveyor. Delapan jam sehari — fokus penuh, ritme stabil. Itu terasa sangat memuaskan. Sekarang, kembali dari kenangan itu, saya saat ini melakukan pekerjaan intelektual — menulis perangkat lunak, merancang sistem, menyusun artikel ini. Tetapi keseimbangan tidak berubah. Jika Anda bertanya kepada saya bagaimana saya bisa mempublikasikan artikel blog dalam 42 bahasa sendiri, jawaban jujurnya: saya melakukannya dengan cara mencuci piring.