Dipublikasikan: 24 September 2024, Terakhir diperbarui: 20 Mei 2025
Sebelum menerjemahkan teks dari satu bahasa ke bahasa lain, Anda harus menentukan bahasa yang digunakan dalam teks yang diberikan terlebih dahulu. Sebelumnya, terjemahan memerlukan penguploadan teks ke layanan cloud, melakukan terjemahan di server, lalu mendownload hasilnya.
Language Detector API berfungsi di sisi klien, yang berarti Anda dapat melindungi privasi pengguna. Meskipun library tertentu yang melakukan hal ini dapat dikirim, library tersebut akan memerlukan resource tambahan untuk didownload.
Kapan harus menggunakan deteksi bahasa
Language Detector API terutama berguna dalam skenario berikut:
- Menentukan bahasa teks input, sehingga dapat diterjemahkan.
- Menentukan bahasa teks input, sehingga model yang benar dapat dimuat untuk tugas khusus bahasa, seperti deteksi toksisitas.
- Menentukan bahasa teks input, sehingga dapat diberi label dengan benar, misalnya, di situs jejaring sosial online.
- Menentukan bahasa teks input, sehingga antarmuka aplikasi dapat disesuaikan dengan tepat. Misalnya, di situs Belgia, hanya menampilkan antarmuka yang relevan bagi pengguna yang berbicara bahasa Prancis.
Mulai
Meninjau persyaratan hardware
Persyaratan berikut berlaku untuk developer dan pengguna yang mengoperasikan fitur menggunakan API ini di Chrome. Browser lain mungkin memiliki persyaratan pengoperasian yang berbeda.
Language Detector dan Translator API berfungsi di Chrome di desktop. API ini tidak berfungsi di perangkat seluler.
Prompt API, Summarizer API, Writer API, Rewriter API, dan Proofreader API berfungsi di Chrome jika kondisi berikut terpenuhi:
- Sistem operasi: Windows 10 atau 11; macOS 13+ (Ventura dan yang lebih baru); Linux; atau ChromeOS (dari Platform 16389.0.0 dan yang lebih baru) di perangkat Chromebook Plus. Chrome untuk Android, iOS, dan ChromeOS di perangkat non-Chromebook Plus belum didukung oleh API yang menggunakan Gemini Nano.
- Penyimpanan: Minimal 22 GB ruang kosong di volume yang berisi profil Chrome Anda.
- GPU atau CPU: Model bawaan dapat berjalan dengan GPU atau CPU.
- GPU: Lebih dari 4 GB VRAM.
- CPU: RAM 16 GB atau lebih dan 4 core CPU atau lebih.
- Catatan: Prompt API dengan input audio memerlukan GPU.
- Jaringan: Data tanpa batas atau koneksi tanpa kuota.
Ukuran pasti Gemini Nano dapat bervariasi saat browser mengupdate model. Untuk menentukan ukuran saat ini, buka chrome://on-device-internals.
Jalankan deteksi fitur untuk melihat apakah browser mendukung Language Detector API.
if ('LanguageDetector' in self) {
// The Language Detector API is available.
}
Download model
Deteksi bahasa bergantung pada model yang disesuaikan untuk tugas khusus mendeteksi bahasa. Meskipun API dibuat di browser, model didownload sesuai permintaan saat situs mencoba menggunakan API untuk pertama kalinya. Di Chrome, model ini sangat kecil dibandingkan dengan model lainnya. Model ini mungkin sudah ada, karena digunakan oleh fitur Chrome lainnya.
Untuk menentukan apakah model siap digunakan, panggil fungsi
LanguageDetector.availability()
asinkron. Jika respons terhadap availability() adalah downloadable, dengarkan
progres download dan beri tahu pengguna, karena download mungkin memerlukan waktu.
Untuk memicu download dan membuat instance detektor bahasa, periksa
aktivasi pengguna. Kemudian, panggil fungsi
asinkron LanguageDetector.create().
const detector = await LanguageDetector.create({
monitor(m) {
m.addEventListener('downloadprogress', (e) => {
console.log(`Downloaded ${e.loaded * 100}%`);
});
},
});
Menjalankan detektor bahasa
Language Detector API menggunakan model peringkat untuk menentukan bahasa yang kemungkinan besar digunakan dalam teks tertentu. Peringkat adalah jenis machine learning, yang tujuannya adalah mengurutkan daftar item. Dalam kasus ini, Language Detector API mengurutkan bahasa dari probabilitas tertinggi hingga terendah.
Fungsi detect() dapat menampilkan hasil pertama, jawaban yang paling mungkin, atau melakukan iterasi pada kandidat yang diberi peringkat dengan tingkat keyakinan.
Hasil ini ditampilkan sebagai daftar objek {detectedLanguage, confidence}. Tingkat
confidence dinyatakan sebagai nilai antara 0.0 (keyakinan terendah)
dan 1.0 (keyakinan tertinggi).
const someUserText = 'Hallo und herzlich willkommen!';
const results = await detector.detect(someUserText);
for (const result of results) {
// Show the full list of potential languages with their likelihood, ranked
// from most likely to least likely. In practice, one would pick the top
// language(s) that cross a high enough threshold.
console.log(result.detectedLanguage, result.confidence);
}
// (Output truncated):
// de 0.9993835687637329
// en 0.00038279531872831285
// nl 0.00010798392031574622
// ...
Arena kreasi API
Bereksperimen dengan Language Detector API di API playground kami. Masukkan teks yang ditulis dalam berbagai bahasa di area teks.
Permission Policy, iframe, dan Web Worker
Secara default, Language Detector API hanya tersedia untuk jendela tingkat teratas dan iframe yang memiliki origin yang sama. Akses ke API dapat didelegasikan ke iframe lintas origin
menggunakan atribut allow="" Kebijakan Izin:
<!--
The hosting site at https://main.example.com can grant a cross-origin iframe
at https://cross-origin.example.com/ access to the Language Detector API by
setting the `allow="language-detector"` attribute.
-->
<iframe src="https://cross-origin.example.com/" allow="language-detector"></iframe>
Language Detector API tidak tersedia di Web Workers. Hal ini disebabkan oleh kompleksitas dalam menetapkan dokumen yang bertanggung jawab untuk setiap pekerja guna memeriksa status Kebijakan Izin.
Beri masukan
Kami ingin melihat apa yang Anda buat dengan Language Detector API. Bagikan situs dan aplikasi web Anda kepada kami di X, YouTube, dan LinkedIn.
Jika Anda memiliki masukan tentang penerapan Chrome, laporkan bug Chromium.
Bergabunglah dengan Program Pratinjau Awal untuk melihat lebih awal API AI bawaan baru dan mengakses diskusi di milis kami.