Gemini Live API, Gemini ile düşük gecikmeli iki yönlü metin ve ses etkileşimlerini sağlar. Live API'ü kullanarak son kullanıcılara metin veya sesli komutlar kullanarak modelin yanıtlarını kesintiye uğratma olanağı sunan, doğal ve insan benzeri sesli sohbet deneyimi sağlayabilirsiniz. Model, metin ve ses girişini işleyebilir (video yakında kullanıma sunulacaktır) ve metin ve ses çıkışı sağlayabilir.
Vertex AI Studio'de istemler ve Live API ile prototip oluşturabilirsiniz.
Live API, istemci ile Gemini sunucusu arasında oturum oluşturmak için WebSocket bağlantısı oluşturan durum bilgisine sahip bir API'dir. Ayrıntılar için Live API referans belgelerine bakın.
Başlamadan önce
Henüz yapmadıysanız Firebase projenizi oluşturma, uygulamanızı Firebase'e bağlama, SDK'yı ekleme, Vertex AI hizmetini başlatma ve LiveModel
örneği oluşturma hakkında bilgi veren başlangıç kılavuzunu tamamlayın.
Live API'ü kullanmak için:
En azından aşağıdaki Firebase kitaplığı sürümlerini kullandığınızdan emin olun:
iOS+: henüz desteklenmemektedir | Android: v16.3.0+ (BoM: v33.12.0+) | Web: henüz desteklenmemektedir | Flutter: v1.5.0+ (BoM: v3.9.0+)LiveModel
örneği (GenerativeModel
örneği değil) oluşturun.
Bu özelliği destekleyen modeller
Live API yalnızca gemini-2.0-flash-live-preview-04-09
tarafından desteklenir (gemini-2.0-flash
tarafından desteklenmez).
Live API'ın standart özelliklerini kullanın
Bu bölümde, Live API'ün standart özelliklerinin özellikle çeşitli giriş ve çıkış türlerini yayınlamak için nasıl kullanılacağı açıklanmaktadır:
- Kısa mesaj gönderme ve alma
- Ses gönderme ve alma
- Ses gönderme ve metin alma
- Metin gönderme ve ses alma
Kısa mesaj gönderme ve alma
Akış halinde metin girişi gönderebilir ve akış halinde metin çıkışı alabilirsiniz. Bir liveModel
örneği oluşturduğunuzdan ve yanıt modunu Text
olarak ayarladığınızdan emin olun.
Kullanım alanınıza ve uygulamanıza uygun bir modeli ve isteğe bağlı olarak bir konum nasıl seçeceğinizi öğrenin.
Ses gönderme ve alma
Aktarılan ses girişi gönderebilir ve aktarılan ses çıkışı alabilirsiniz. LiveModel
örneği oluşturduğunuzdan ve yanıt modunu Audio
olarak ayarladığınızdan emin olun.
Yanıt sesini nasıl yapılandıracağınızı ve özelleştireceğinizi öğrenin (bu sayfanın sonraki bölümlerinde).
Kullanım alanınıza ve uygulamanıza uygun bir modeli ve isteğe bağlı olarak bir konum nasıl seçeceğinizi öğrenin.
Daha ilgi çekici ve etkileşimli deneyimler oluşturun
Bu bölümde, Live API'te daha ilgi çekici veya etkileşimli özelliklerin nasıl oluşturulacağı ve yönetileceği açıklanmaktadır.
Yanıt sesini değiştirme
Live API, sentezlenmiş konuşma yanıtlarını desteklemek için Chirp 3'ü kullanır. Vertex AI in Firebase'ü kullanırken 5 HD ses ve 31 dilde ses gönderebilirsiniz.
Ses belirtmezseniz varsayılan olarak Puck
kullanılır. Alternatif olarak, modeli aşağıdaki seslerden birinde yanıt verecek şekilde yapılandırabilirsiniz:
Aoede (kadın)Charon (erkek) |
Fenrir (erkek)Kore (kadın) |
Puck (erkek) |
Bu seslerin nasıl ses çıkardığını gösteren demoları ve kullanılabilen dillerin tam listesini Chirp 3: HD sesler başlıklı makalede bulabilirsiniz.
Ses belirlemek için model yapılandırmasının bir parçası olarak speechConfig
nesnesinde ses adını ayarlayın:
Modelden İngilizce dışında bir dilde yanıt vermesini istediğinizde en iyi sonuçları elde etmek için sistem talimatlarınıza aşağıdakileri ekleyin:
RESPOND IN LANGUAGE. YOU MUST RESPOND UNMISTAKABLY IN LANGUAGE.
Oturumlar ve istekler arasında bağlamı koruma
Oturumlar ve istekler arasında bağlamı korumak için sohbet yapısı kullanabilirsiniz. Bunun yalnızca metin girişi ve metin çıkışı için çalıştığını unutmayın.
Bu yaklaşım, kısa bağlamlar için en iyisidir. Etkinliklerin tam sırasını temsil etmek için adım adım etkileşimler gönderebilirsiniz. Daha uzun bağlamlar için bağlam penceresini sonraki etkileşimler için boşaltmak üzere tek bir mesaj özeti sağlamanızı öneririz.
Kesintileri ele alma
Vertex AI in Firebase henüz kesintilerin ele alınmasını desteklemez. Bir süre sonra tekrar kontrol edin.
İşlev çağrısını kullanma (araçlar)
Standart içerik oluşturma yöntemlerinde olduğu gibi, Live API ile kullanılacak araçları (ör. mevcut işlevler) tanımlayabilirsiniz. Bu bölümde, Live API'nin işlev çağrımıyla birlikte kullanılmasıyla ilgili bazı ayrıntılar açıklanmaktadır. İşlev çağırmayla ilgili tam açıklama ve örnekler için işlev çağırma kılavuzuna bakın.
Model, tek bir istemden birden fazla işlev çağrısı ve çıktılarını zincirlemek için gereken kodu oluşturabilir. Bu kod, korumalı bir ortamda yürütülerek sonraki BidiGenerateContentToolCall
mesajlarını oluşturur. Yürütme, her işlev çağrısının sonuçları hazır olana kadar duraklatılır. Bu, sıralı işleme sağlar.
Ayrıca, Live API'yi işlev çağrısıyla kullanmak özellikle güçlüdür çünkü model kullanıcıdan takip veya açıklayıcı bilgi isteyebilir. Örneğin, model çağırılmak istediği bir işleve parametre değeri sağlamak için yeterli bilgiye sahip değilse kullanıcıdan daha fazla veya açıklayıcı bilgi vermesini isteyebilir.
Müşteri, BidiGenerateContentToolResponse
ile yanıt vermelidir.
Sınırlamalar ve koşullar
Live API ile ilgili aşağıdaki sınırlamaları ve koşulları göz önünde bulundurun.
Çeviri yazı
Vertex AI in Firebase henüz transkriptleri desteklemiyor. Bir süre sonra tekrar kontrol edin.
Diller
- Giriş dilleri: Gemini modelleri için desteklenen giriş dillerinin tam listesini inceleyin.
- Çıkış dilleri: Chirp 3: HD sesler'de kullanılabilen çıkış dillerinin tam listesini inceleyin.
Ses biçimleri
Live API aşağıdaki ses biçimlerini destekler:
- Giriş ses biçimi: 16 kHz little-endian'da ham 16 bit PCM ses
- Çıkış ses biçimi: 24 kHz little-endian'da ham 16 bit PCM ses
Hız sınırları
Aşağıdaki hız sınırları geçerlidir:
- Firebase projesi başına 10 eşzamanlı oturum
- Dakikada 4 milyon jeton
Oturum uzunluğu
Oturumların varsayılan süresi 30 dakikadır. Oturum süresi sınırı aşıldığında bağlantı sonlandırılır.
Model, bağlam boyutuyla da sınırlıdır. Büyük giriş parçaları göndermek, oturumun daha erken sonlandırılmasına neden olabilir.
Ses etkinliği algılama (VAD)
Model, sürekli bir ses girişi akışında otomatik olarak ses etkinliği algılama (VAD) işlemi gerçekleştirir. VAD varsayılan olarak etkindir.
Jeton sayımı
CountTokens
API'yi Live API ile kullanamazsınız.