Cloud Run'ı kullanarak Firebase Genkit akışlarını web hizmetleri olarak dağıtabilirsiniz. Örnek olarak bu sayfa, varsayılan örnek akışını dağıtma sürecinde size yol gösterir.
Gerekli araçları yükleyin:
Node.js 20 veya sonraki bir sürümü kullandığınızdan emin olun (kontrol etmek için
node --version
komutunu çalıştırın).Google Cloud CLI'ı yükleyin.
Cloud Console'u kullanarak yeni bir Google Cloud projesi oluşturun veya mevcut bir projeyi seçin. Proje bir faturalandırma hesabına bağlı olmalıdır.
Bir proje oluşturduktan veya seçtikten sonra, bunu kullanması için Google Cloud KSA'yı yapılandırın:
gcloud init
Genkit örnek projesi için bir dizin oluşturun:
mkdir -p ~/tmp/genkit-cloud-project
cd ~/tmp/genkit-cloud-project
IDE (Entegre Geliştirme Ortamı) kullanacaksanız IDE'yi bu dizinde açın.
Proje dizininizde bir Node.js projesini başlatın:
npm init -y
Node.js projenizde Genkit'i başlatın:
genkit init
- Dağıtım platformu olarak Google Cloud'u seçin.
- Kullanmak istediğiniz model sağlayıcıyı seçin.
Kalan istemler için varsayılanları kabul edin.
genkit
aracı, kendi AI akışlarınızı geliştirmeye başlamanız için bazı örnek kaynak dosyalar oluşturur. Ancak bu eğiticinin geri kalanında yalnızca örnek akışı dağıtacaksınız.API kimlik bilgilerini dağıtılmış işlevinizin kullanımına sunun. Seçtiğiniz model sağlayıcıya bağlı olarak aşağıdakilerden birini yapın:
Gemini (Google Yapay Zeka)
Google AI'ın bölgenizde kullanılabildiğinden emin olun.
Google AI Studio'yu kullanarak Gemini API için API anahtarı oluşturun.
API anahtarını Cloud Run ortamında kullanılabilir hale getirin:
- Cloud Console'da Secret Manager API'yi etkinleştirin.
- Secret Manager sayfasında, API anahtarınızı içeren yeni bir gizli anahtar oluşturun.
- Gizli anahtarı oluşturduktan sonra aynı sayfada Secret Manager Gizli Anahtar Erişicisi rolüyle varsayılan işlem hizmeti hesabınıza gizli anahtara erişim izni verin. (Varsayılan Compute hizmet hesabının adını IAM sayfasında arayabilirsiniz.)
Daha sonraki bir adımda, hizmetinizi dağıtırken bu gizli anahtarın adına başvurmanız gerekir.
İsteğe bağlı: Akışınızı bir sonraki adımda olduğu gibi yerel olarak çalıştırmak istiyorsanız
GOOGLE_GENAI_API_KEY
ortam değişkenini anahtarınıza ayarlayın:export GOOGLE_GENAI_API_KEY=<your API key>
Gemini (Vertex AI)
Cloud konsolunda projeniz için Vertex AI API'yi etkinleştirin.
IAM sayfasında Varsayılan işlem hizmeti hesabına Vertex AI Kullanıcısı rolünün verildiğinden emin olun.
İsteğe bağlı: Akışınızı bir sonraki adımda olduğu gibi yerel olarak çalıştırmak istiyorsanız ek ortam değişkenleri ayarlayın ve uygulama varsayılan kimlik bilgilerini ayarlamak için
gcloud
aracını kullanın:export GCLOUD_PROJECT=<your project ID>
export GCLOUD_LOCATION=us-central1
gcloud auth application-default login
Bu eğitim için oluşturmanız gereken tek sır model sağlayıcı içindir ancak genel olarak, akışınızın kullandığı her hizmet için benzer bir şey yapmanız gerekir.
İsteğe bağlı: Akışınızı geliştirici kullanıcı arayüzünde deneyin:
Kullanıcı arayüzünü başlatın:
genkit start
Geliştirici kullanıcı arayüzünde (http://localhost:4000/) şu akışı çalıştırın:
menuSuggestionFlow'u tıklayın.
Giriş JSON sekmesinde model için bir konu girin:
"banana"
Çalıştır'ı tıklayın.
Şimdiye kadar her şey beklendiği gibi çalışıyorsa akışı oluşturup dağıtabilirsiniz:
Gemini (Google Yapay Zeka)
npm run build
gcloud run deploy --update-secrets=GOOGLE_GENAI_API_KEY=<your-secret-name>:latest
Gemini (Vertex AI)
npm run build
gcloud run deploy
Kimliği doğrulanmayan çağrılara izin vermek isteyip istemediğiniz sorulduğunda
N
seçeneğini belirleyin.N
yanıtını verdiğinizde, hizmetiniz IAM kimlik bilgilerini gerektirecek şekilde yapılandırır. Bu kimlik bilgilerinin sağlanmasıyla ilgili bilgi için Cloud Run belgelerinde Kimlik Doğrulama bölümüne bakın.
Dağıtım tamamlandıktan sonra araç, hizmet URL'sini yazdırır. curl
ile test edebilirsiniz:
curl -X POST https://<service-url>/menuSuggestionFlow \
-H "Authorization: Bearer $(gcloud auth print-identity-token)" \
-H "Content-Type: application/json" -d '{"data": "banana"}'