Google AI SDK'ları yerine Vertex AI SDK'larını kullanma

Bu sayfada, mobil veya web uygulamalarınızda Google AI istemci SDK'larından Vertex AI in Firebase istemci SDK'larına nasıl geçeceğiniz açıklanmaktadır. Vertex AI in Firebase SDK'ları Apple platformları (Swift), Android (Kotlin ve Java), Web (JavaScript) ve Flutter (Dart) için kullanılabilir.

Doğrudan taşıma talimatlarına git

Vertex AI'ü neden kullanmaya başlamalısınız?

Google AI Studio veya Google AI istemci SDK'larını kullanarak Gemini API ürününün alternatif bir sürümünü denemiş olabilirsiniz. Bu SDK'lar, Gemini API'ü kullanmaya başlamak ve prototip oluşturmak için faydalıdır. Ancak Firebase, doğrudan Gemini API istemci tarafını çağıran üretim veya kurumsal ölçekli mobil uygulamalar ve web uygulamaları için Firebase SDK'larımızı kullanarak Vertex AI Gemini API çağrısı yapmanızı kesinlikle önerir.

Mobil ve web uygulamaları için güvenlik özellikleri

Mobil ve web uygulamaları için güvenlik çok önemlidir ve kodunuz (Gemini API çağrıları dahil) korumasız bir ortamda çalıştığından özel dikkat gerektirir.

  • Varsayılan olarak Vertex AI Gemini API, Google AI Gemini API gibi bir API anahtarı yerine Google Cloud IAM tarafından yetkilendirilir. Vertex AI in Firebase SDK'ları, daha güvenli Vertex AI Gemini API'ü çağıracak şekilde tasarlanmıştır.

  • Mobil ve web uygulamaları için Gemini API'ü ve proje kaynaklarınızı (ayarlanmış modeller gibi) yetkisiz istemciler tarafından kötüye kullanıma karşı korumanız gerekir. Tüm API çağrılarının gerçek uygulamanızdan geldiğini doğrulamak için Firebase App Check'ü kullanabilirsiniz. Bu özellik yalnızca Vertex AI in Firebase SDK'larını kullanıyorsanız kullanılabilir.

Mobil ve web uygulamaları için oluşturulmuş ekosistem

Firebase, Google'ın mobil ve web uygulamaları geliştirme platformudur. Vertex AI in Firebase SDK'larını kullanmak, uygulamalarınızın tam yığın uygulamaların ve geliştiricilerin ihtiyaçlarına odaklanan bir ekosistemde olduğu anlamına gelir. Örneğin, aşağıdakilerden herhangi birini ve daha fazlasını yapmak için hazırsınız:

  • Çok modlu isteklerinize büyük dosyalar eklemek için Cloud Storage for Firebase simgesini kullanın. Ayrıca, dosya yükleme ve indirme işlemlerini (kötü ağ koşullarında bile) işleyen ve son kullanıcılarınızın verileri için daha fazla güvenlik sunan istemci SDK'larından yararlanın. Cloud Storage for Firebase'u kullanma hakkında çözüm kılavuzumuzdan daha fazla bilgi edinin.

  • Mobil ve web uygulamaları için oluşturulmuş veritabanı SDK'larını (ör. Cloud Firestore) kullanarak yapılandırılmış verileri yönetin.

  • Firebase Remote Config kullanarak yeni bir uygulama sürümü yayınlamadan çalışma zamanındaki yapılandırmaları (konum gibi) dinamik olarak ayarlayın veya uygulamanızdaki değerleri (model adı gibi) değiştirin.

Google Cloud'dan Vertex AI kullanmanın ek avantajları

Uygulamanızda ve iş akışlarınızda üretken yapay zekayı kullanmaya devam ettikçe üretken yapay zeka uygulamaları oluşturmak ve dağıtmak için uçtan uca çözümler sunan bir platforma ihtiyacınız olabilir. Google Cloud, uygulama geliştirmenin ilk aşamalarından uygulama dağıtımına, uygulama barındırmaya ve karmaşık verileri geniş ölçekte yönetmeye kadar üretken yapay zekanın gücünden yararlanmanızı sağlayan kapsamlı bir araç ekosistemi sunar.

Google Cloud'un Vertex AI platformu, verimlilik ve güvenilirlik için yapay zeka modellerinin kullanımını, dağıtımını ve izlenmesini kolaylaştıran bir MLOps araç paketi sunar. Ayrıca veritabanları, DevOps araçları, günlük kaydı, izleme ve IAM ile entegrasyonlar, üretken yapay zeka yaşam döngüsünün tamamını yönetmek için bütünsel bir yaklaşım sağlar.

Google Cloud dokümanlarında Vertex AI'un kullanım alanları hakkında daha fazla bilgi edinin.

Vertex AI in Firebase SDK'larına geçiş

Vertex AI in Firebase SDK'larına geçiş için üç ana adım gerekir:

  1. Yeni veya mevcut bir Firebase projesi oluşturun ve uygulamanızı Firebase'e bağlayın.

  2. Kod tabanınızı taşıyın. Bunun için yalnızca SDK'yı ve başlatma kodunu (model adı dahil) değiştirmeniz gerekir. Gemini API'yi çağıran kodlarda herhangi bir değişiklik yapılması gerekmez.

  3. Kullanılmayan API anahtarlarını silin ve kullanılmayan API'leri devre dışı bırakın.

1. adım: Firebase projesi oluşturun ve uygulamanızı Firebase'e bağlayın

Firebase'e aşina olsanız bile Firebase projenizin ve uygulamanızın Vertex AI in Firebase SDK'larını kullanacak şekilde ayarlandığından emin olmak için bu bölümü inceleyin.

2. Adım: Kod tabanınızı taşıyın

Platforma özel talimatları görüntülemek için uygulamanızın platformunu seçin.

Google AI SDK'ları ve Vertex AI in Firebase SDK'ları, iki platform arasında geçişin olabildiğince kolay olması için tasarlanmıştır.

Taşımak için yalnızca uygulamanızın kod tabanına entegre ettiğiniz SDK'yı ve hizmetin ve üretken modelin ilk kullanıma hazırlanmasını değiştirmeniz gerekir. Gemini API işlevini çağıran kodda herhangi bir değişiklik yapmanız gerekmez.

SDK'yı değiştirin

Google AI

Kotlin+KTX

dependencies {
  // ... other androidx dependencies

  // add the dependency for the Google AI client SDK for Android
  implementation("com.google.ai.client.generativeai:generativeai:VERSION")
}

Java

dependencies {
  // ... other androidx dependencies

  // add the dependency for the Google AI client SDK for Android
  implementation("com.google.ai.client.generativeai:generativeai:VERSION")

  // Required for one-shot operations (to use `ListenableFuture` from Reactive Streams)
  implementation("com.google.guava:guava:31.0.1-android")

  // Required for streaming operations (to use `Publisher` from Guava Android)
  implementation("org.reactivestreams:reactive-streams:1.0.4")
}

Vertex AI in Firebase

Kotlin+KTX

dependencies {
  // ... other androidx dependencies

  // add the dependency for the Vertex AI in Firebase SDK for Android
  implementation("com.google.firebase:firebase-vertexai:16.0.2")
}

Java

dependencies {
  // ... other androidx dependencies

  // add the dependency for the Vertex AI in Firebase SDK for Android
  implementation("com.google.firebase:firebase-vertexai:16.0.2")

  // Required for one-shot operations (to use `ListenableFuture` from Guava Android)
  implementation("com.google.guava:guava:31.0.1-android")

  // Required for streaming operations (to use `Publisher` from Reactive Streams)
  implementation("org.reactivestreams:reactive-streams:1.0.4")
}

İlklemeyi değiştirme

Google AI

Kotlin+KTX

val generativeModel = GenerativeModel(modelName = "MODEL_NAME",
    // Access your API key as a Build Configuration variable
    apiKey = BuildConfig.apiKey
)

Java

GenerativeModel gm = new GenerativeModel("MODEL_NAME",
    // Access your API key as a Build Configuration variable
    BuildConfig.apiKey
);

// Use the GenerativeModelFutures Java compatibility layer which offers support for ListenableFuture and Publisher APIs
GenerativeModelFutures model = GenerativeModelFutures.from(gm);

Vertex AI in Firebase

Kotlin+KTX

val generativeModel = Firebase.vertexAI.generativeModel("MODEL_NAME")

Java

GenerativeModel gm = FirebaseVertexAI.getInstance()
        .generativeModel("MODEL_NAME");
GenerativeModelFutures model = GenerativeModelFutures.from(gm);

İçe aktarma işlemlerini güncelleme

Aşağıdaki kod snippet'leri örnek olarak Chat, Content ve GenerativeModelFutures sınıflarını kullanır ancak aynı durum aynı paket adı altındaki diğer sınıflar için de geçerlidir.

Google AI

Kotlin+KTX

import com.google.ai.client.generativeai.Chat
import com.google.ai.client.generativeai.type.Content
import com.google.ai.client.generativeai.java.GenerativeModuleFutures

Java

import com.google.ai.client.generativeai.Chat;
import com.google.ai.client.generativeai.type.Content;
import com.google.ai.client.generativeai.java.GenerativeModuleFutures;

Vertex AI in Firebase

Kotlin+KTX

import com.google.firebase.vertexai.Chat
import com.google.firebase.vertexai.type.Content
import com.google.firebase.vertexai.java.GenerativeModuleFutures

Java

import com.google.firebase.vertexai.Chat;
import com.google.firebase.vertexai.type.Content;
import com.google.firebase.vertexai.java.GenerativeModuleFutures;

3. Adım: Kullanılmayan API anahtarlarını silin ve kullanılmayan API'leri devre dışı bırakın

Google AI API anahtarınızı artık kullanmanız gerekmiyorsa güvenlikle ilgili en iyi uygulamaları uygulayarak anahtarı silin. Google AI API anahtarlarınızı Google AI Studio'in API anahtarları bölümünde görüntüleyip silebilirsiniz.

Ayrıca, Google AI Gemini API'ü artık kullanmıyorsanız projenizde devre dışı bırakın. Bunu Google Cloud konsolundaki Generative Language API (generativelanguage.googleapis.com) sayfasından yapabilirsiniz. ("Üretken Dil API'si", Google AI Gemini API'nin resmi adıdır.)

Başka ne yapabilirsiniz?

  • Hem Google AI hem de Vertex AI, istemler ve model parametreleriyle denemeler yapmak için "AI Studio" adlı bir web kullanıcı arayüzü "oyun alanı" deneyimi sunar. Google AI Studio istemlerinizi Vertex AI Studio'e nasıl taşıyacağınızı Google Cloud dokümanlarında öğrenebilirsiniz.