ML Kit GenAI Speech Translation API, farklı dillerdeki seslendirilmiş içeriklerin cihaz üzerinde anında çevrilmesini sağlar. Google'ın üretken yapay zeka konuşma modellerini kullanan Speech Translation API, bulut tabanlı ses işleme gerektirmeden düşük gecikmeli, yüksek kaliteli ve gizlilik odaklı sesle yazarak çeviri hizmeti sunar.
Temel özellikler
- Modelin hazır olup olmadığını doğrulamaktan indirme işlemlerini başlatmaya ve asıl çeviriyi gerçekleştirmeye kadar tüm süreci tek bir API üzerinden yönetin. Uygulama ayrıntıları için Speech Translation API'yi entegre etme bölümüne bakın.
- Mikrofondan veya dosyalardan gelen canlı sesleri işleyin ve gerçek zamanlı güncellemeler için Kotlin Flow'u kullanarak hem ara hem de nihai metin sonuçlarını alın.
- Kullanıcı gizliliğini korumak ve tam çevrimdışı işlevselliği desteklemek için tüm ses analizi ve çeviri görevlerini cihaz üzerinde gerçekleştirme
Örnek sonuçlar
| Giriş sesi | Kaynak dil | Hedef dil | Çıktı metni |
|---|---|---|---|
| Seslendirilmiş içerik: "Merhaba, bugün nasılsınız?" | Türkçe | İspanyolca (es-ES) | "Hola, ¿cómo estás hoy?" |
| Seslendirilmiş içerik: "こんにちは、はじめまして" | Japonca (ja-JP) | İngilizce (en-US) | "Merhaba, tanıştığımıza memnun oldum" |
Ön koşullar
Speech Translation API'yi kullanmak için aşağıdaki şartları karşılamanız gerekir:
- Desteklenen bir cihazınız olmalıdır.
- Cihazınızda Google'ın Ses Tanıma ve Sentez Hizmeti uygulamasının (
com.google.android.tts) en son beta sürümü (versionCode 210665810veya daha yeni bir sürüm) yüklü olmalıdır. - Gemini Nano V4'ü indirmek için cihazınızda en az 4,0 GB boş depolama alanı olmalıdır.
Başlayın
Başlamak için ML Kit Speech Translation bağımlılığını modül düzeyindeki build.gradle.kts (veya build.gradle) dosyanıza ekleyin:
Kotlin
dependencies {
// ML Kit Base Infrastructure
implementation("com.google.mlkit:common:18.10.0")
// ML Kit GenAI Speech Translation SDK
implementation("com.google.mlkit:genai-speech-translation:1.0.0-alpha1")
}
Modern
dependencies {
// ML Kit Base Infrastructure
implementation 'com.google.mlkit:common:18.10.0'
// ML Kit GenAI Speech Translation SDK
implementation 'com.google.mlkit:genai-speech-translation:1.0.0-alpha1'
}
Speech Translation API'yi entegre etme
Speech Translation SDK'yı uygulamanıza entegre etmek için aşağıdaki adımları tamamlayın:
SpeechTranslatorOptionsyapılandırma nesnesi oluşturarakSpeechTranslatoristemcisini başlatın.- Özelliklerin kullanılabilirliğini doğrulamak ve model indirme işlemlerini yönetmek için Kotlin Flow API'yi kullanın.
TranslationAudioveri paketlerini aktarmak ve anlık çeviri sonuçlarını görmek için birSpeechTranslatorRequestnesnesi oluşturun. Giriş sesinin PCM 16 bit, 16 kHz, mono biçiminde olması gerekir.
// Initialize the client.
val options = SpeechTranslatorOptions.Builder(Locale.US, Locale.CHINESE).build()
val client = SpeechTranslation.getClient(options)
// Check and download the on-device model.
if (client.checkStatus() == FeatureStatus.DOWNLOADABLE) {
client.download().collect { status ->
println("Download progress: $status")
}
}
// Construct a streaming request with raw audio (PCM 16-bit, 16kHz, mono).
val audioFlow = flow {
emit(TranslationAudio(Locale.US, rawAudioBytes))
}
val request = SpeechTranslatorRequest.Builder(audioFlow).build()
// Start a session and collect translated responses.
client.startTranslation(request).collect { response ->
when (response) {
is SpeechTranslatorResponse.Text -> {
println("Translation (${response.locale}): ${response.translatedText}")
}
is SpeechTranslatorResponse.ErrorResponse -> {
println("Translation failed: ${response.e.message}")
}
is SpeechTranslatorResponse.CompletedResponse -> {
println("Session closed.")
}
}
}
// Close the client when done.
client.close()
Desteklenen cihazlar
Speech Translation API'yi kullanmak için cihazınızın yonga setine entegre edilmiş yüksek performanslı bir nöral hızlandırıcı (TPU/NPU) bulunmalıdır. Aşağıdaki tabloda, desteklenen bazı önemli telefon modelleri listelenmiştir. Ancak desteği doğrulamak için cihazınızın yonga setini kontrol etmeniz gerektiğini unutmayın.
| Yonga seti ailesi | Yonga seti kimlikleri | Örnek cihazlar | Minimum OS sürümü |
|---|---|---|---|
| Google Tensor | Google Tensor G5, G6+ |
|
Android 14 |
| Qualcomm Snapdragon | SM8650, SM8750, SM8850, SM8845, SM8975, SM8950, SM8735 |
|
Android 15 |
| MediaTek | Dimensity 9300, 9400+ |
|
Android 15 |
Sık karşılaşılan kurulum sorunları
ML Kit GenAI API'leri, Gemini Nano'ya erişmek için Android AICore uygulamasını kullanır. Bir cihaz yeni kurulduğunda (sıfırlama dahil) veya AICore uygulaması yeni sıfırlandığında (ör. veriler temizlendiğinde, kaldırılıp yeniden yüklendiğinde) AICore uygulamasının başlatma işlemini (sunucudan en son yapılandırmaları indirme dahil) tamamlamak için yeterli zamanı olmayabilir. Bu nedenle, ML Kit GenAI API'leri beklendiği gibi çalışmayabilir. Karşılaşabileceğiniz yaygın kurulum hata mesajları ve bunları nasıl ele alacağınız aşağıda açıklanmıştır:
| Örnek hata mesajı | İtirazı yanıtlama |
| AICore, 4-CONNECTION_ERROR hata türü ve 601-BINDING_FAILURE hata koduyla başarısız oldu: AICore hizmeti bağlanamadı. | Bu durum, cihaz kurulumundan hemen sonra ML Kit GenAI API'lerini kullanarak uygulamayı yüklediğinizde veya uygulamanız yüklendikten sonra AICore kaldırıldığında ortaya çıkabilir. AICore uygulamasını güncelleyip uygulamanızı yeniden yüklediğinizde sorun çözülecektir. |
| AICore, 3-PREPARATION_ERROR hata türü ve 606-FEATURE_NOT_FOUND hata koduyla başarısız oldu: ... özelliği kullanılamıyor. |
Bu durum, AICore en son yapılandırmaları indirmeyi tamamlamadığında gerçekleşebilir. Cihaz internete bağlıyken güncelleme işlemi genellikle birkaç dakika ile birkaç saat arasında sürer. Cihazı yeniden başlatmak güncellemeyi hızlandırabilir.
Cihazın bootloader'ının kilidi açıksa da bu hatayı görürsünüz. Bu API, bootloader'ının kilidi açık olan cihazları desteklemez. |
| AICore, 1-DOWNLOAD_ERROR hata türü ve 0-UNKNOWN hata koduyla başarısız oldu: ... özelliği, 0 hata durumu ve esz: UNAVAILABLE: ... ana makinesi çözümlenemiyor hatasıyla başarısız oldu. | Ağ bağlantısını koruyun, birkaç dakika bekleyin ve tekrar deneyin. |