1. Plan, temeli oluşturma
Evimizi inşa etmeden önce araziyi güvence altına almamız, malzemelerin ödeme yöntemini ayarlamamız ve alet kutumuzu açmamız gerekir. Bulutta bu kavramlar Projeler ve Faturalandırma olarak karşılık bulur.
Google Cloud projesi nedir?
Google Cloud'u güçlü araçlar ve hizmetlerle dolu devasa bir dijital depo olarak düşünebilirsiniz. Proje, bu deponun size özel, güvenli bir köşesidir. Tüm kaynaklarınızı (ör. sunucular, veritabanları ve kod) barındıran, tüm maliyetlerinizi takip eden ve içindeki araçlara kimlerin girip kullanabileceğini yöneten bir kapsayıcıdır. Bugün yapacağımız her işlem bu proje sınırları içinde gerçekleşecek.

Bugün Proje'ye odaklanıyor olsak da şirketlerin kullandığı daha büyük yapıda nereye uyduğunu anlamak faydalıdır. Google Cloud, her şeyi net bir şekilde yukarıdan aşağıya doğru hiyerarşik olarak düzenler.
Organization (The entire Corporation, e.g., "MegaCorp Inc.")
└── Folders (The Corporate Divisions, e.g., "Research & Development")
├── Project (A specific team's lab, e.g., "Project Phoenix - R&D")
│ └── Resources (The tools in the lab, e.g., a specific server)
└── Project (Another team's workshop, e.g., "Q4 Marketing Campaign")
└── Resources (The tools for that campaign, e.g., a storage bucket)
Bu hiyerarşinin seviyelerini yukarıdan aşağıya doğru aşağıda bulabilirsiniz:
- Kuruluş düğümü:
- Bu, tüm şirketin şirket genel merkezidir (ör.
yourcompany.com). En üstte yer alır ve şirket genelindeki güvenlik ve faturalandırma politikalarının ayarlandığı yerdir. Google Cloud Ücretsiz Deneme'de genellikle bir kuruluş düğümü olmadan çalışırsınız. Bu, öğrenme için uygundur.
- Bu, tüm şirketin şirket genel merkezidir (ör.
- Klasörler:
- Bunlar, şirketteki bölümler veya departmanlardır (ör. Mühendislik, Finans) Projeleri gruplandırmak ve politikalara tüm ekipleri aynı anda uygulamak için kullanılan isteğe bağlı bir katmandır. Bu atölye çalışmasında klasörleri kullanmayacağız.
- Projeler (Odak Noktamız):
- Bu, belirli bir Ekibin Atölyesi veya Laboratuvarı'dır. Gerçek çalışmanın yapıldığı yer burasıdır ve atölyemiz için en kritik seviyedir. Oluşturduğunuz tüm kaynaklar bir proje içinde yer almalıdır. Proje, API'leri (hizmetler) etkinleştirdiğiniz ve faturalandırma hesabı bağladığınız düzeydir.
- Kaynaklar:
- Bunlar, atölyedeki bireysel Araçlar ve Makinelerdir. Dağıtacağımız Cloud Run uygulaması bir kaynaktır. Sanal makine, veritabanı veya depolama paketi kaynaklara örnek olarak verilebilir.
Uygulamalı: Proje oluşturma ve yapılandırma
- Kredinizi alın
goo.gle/devfest-boston-ai/. Google Cloud Platform Hizmet Şartları'nı kabul edin. Uygulandıktan sonra, kredinin uygulandığını gösteren mesajı görürsünüz.
- 'a gidin.
- Üst gezinme çubuğunda Proje seçin'i, ardından Yeni Proje'yi tıklayın.

- Projenize benzersiz bir ad verin (ör.
idea-to-launch-yourname) ve Oluştur'u tıklayın. "Kuruluş Yok"u seçin.
- Sayfanın üst kısmındaki açılır menüden yeni projenizin seçili olduğundan emin olun.
Faturalandırma Neden Bu Kadar Önemli?
Faturalandırma hesabı, projenizin finansal temelidir. Kullandığınız kaynakların ödemesini yapan "kayıtlı kredi kartı"dır. Bu atölye çalışmasında, ücretsiz kredi sağlayan Google Cloud Ücretsiz Deneme'yi kullanıyorsunuz. Bu, güvenli bir korumalı alan ortamıdır. Kredileriniz kullanıldıktan veya deneme süresi sona erdikten sonra hesabınızı manuel olarak yükseltmediğiniz sürece otomatik olarak ücretlendirilmezsiniz. Maliyetleri kontrol etmenin ilk adımı, faturalandırmayı anlamaktır. Bütçe ve uyarı belirleme gibi en iyi uygulamalar sayesinde harcamanız belirli bir sınıra yaklaştığında e-posta bildirimi alarak sürprizlerle karşılaşmazsınız.
Uygulamalı: Faturalandırma Hesabınızı Bağlama
- 'ya gidin.
- Faturalandırma hesabı bağla'yı tıklayın.

- Açılır listeden Google Cloud Platform Deneme Sürümü Faturalandırma Hesabı'nı seçin ve Hesabı ayarla'yı tıklayın. (Açılır menüyü görmüyorsanız kredinin uygulanması için bir dakika bekleyin ve sayfayı yeniden yükleyin.)
Uygulamalı: Bütçe uyarısı ayarlama (en iyi uygulama)
Faturalandırmanız etkinleştirildiğine göre şimdi maliyet kontrolü için önemli bir en iyi uygulamayı gerçekleştirelim: bütçe belirleme. Bu özellik, tutara ulaşıldığında hizmetlerinizi durdurmaz. Bunun yerine, harcamanızdan her zaman haberdar olmanız için size e-posta uyarıları gönderir.
- Faturalandırma sayfasının sol tarafındaki menüde Bütçeler ve uyarılar'ı tıklayın.
- Sayfanın üst kısmında + BÜTÇE OLUŞTUR'u tıklayın.

- Bütçenizi adlandırın: Bütçenize
Workshop-Alertgibi basit bir ad verin. - Kapsam: Mevcut projenizin seçili olduğu varsayılan ayarları kullanın. Sonraki'yi tıklayın.

- Tutar: "Bütçe tutarı" bölümünde, "Tutar türü" için Belirtilen tutar'ı seçin. Düşük bir tutar girin (örneğin,
10). Bu durumda bütçemiz 10 TL olur. Sonraki'yi tıklayın.
- İşlemler: Uyarıları buradan ayarlarsınız. Varsayılan olarak, harcamanız bütçe tutarınızın %50'sini (5 TL), %90'ını (9 TL) ve% 100'ünü (10 TL) aştığında uyarılar ayarlanır.
- "E-posta bildirimleri" bölümünde Faturalandırma yöneticilerine ve kullanıcılara e-posta uyarıları seçeneğinin işaretli olduğundan emin olun. Bu işlem, bildirimleri hesabınızla ilişkilendirilmiş e-posta adresine gönderir.
- Son'u tıklayın.

Artık proaktif maliyet yönetimi aracını ayarladınız. Gerçek hayattaki bir projede, mali açıdan sürprizlerle karşılaşmamak için bu, en önemli ilk adımlardan biridir.
Hizmetler nedir ve neden etkinleştirilir?
Özel laboratuvarınızda komuta merkezinizi kurduğunuza göre şimdi kullanabileceğiniz ağır hizmet ekipmanlarından bahsedelim. Google Cloud, veritabanlarından yapay zeka modellerine kadar 200'den fazla farklı ürün sunar. Bunların her birine Hizmet adı verilir. Cloud Run'ı "Otomatik Kargo ve Lojistik Hizmeti", Gemini'ı ise "Yapay Zeka ile İcat ve Prototip Oluşturma Hizmeti" olarak düşünebilirsiniz. Bu güçlü hizmetlerden herhangi birini kullanmak için önce projenizde ilgili API'yi (Uygulama Programlama Arayüzü) etkinleştirmeniz gerekir.

Veri ambarı ve laboratuvar benzetmemize devam edelim. Google Cloud projenizin, devasa bir deponun içindeki özel atölyeniz olduğunu düşünün. Atölyede çeşitli gelişmiş iş istasyonları bulunur: yapay zeka analizi istasyonu, küresel dağıtım istasyonu, veri depolama istasyonu vb. Güvenlik ve verimlilik için bu özel iş istasyonlarının her birine giden ana güç borusu varsayılan olarak kapalıdır.
Bir API'yi etkinleştirmek, laboratuvarınızdaki belirli bir iş istasyonuna (ör. "AI Prototip Oluşturma İstasyonu") gidip ana güç anahtarını "AÇIK" konumuna getirmek gibidir.
Ancak neden her şey varsayılan olarak kapalıdır? Bu, birkaç önemli nedenden dolayı bilinçli olarak yapılmış bir tasarım tercihidir:
- Güvenlik: Proje düzeyinde en az ayrıcalık ilkesini zorunlu kılar. Kullanmadığınız hizmetlerin projenizle bağlantıları devre dışı kalır ve olası "saldırı yüzeyi" azalır.
- Yönetim ve Maliyet Kontrolü: Potansiyel olarak maliyetli bir hizmeti kullanmaya başlamak için kasıtlı ve denetlenebilir bir işlem yapılması gerekir. Bu sayede yanlışlıkla kullanım önlenir ve kuruluşlar, ekiplerinin hangi araçları kullandığını kontrol edebilir.
- Sadelik: Proje ortamınızı temiz tutar. İzinleriniz ve kontrol panelleriniz, kullanmayı düşünmediğiniz hizmetlerin seçenekleriyle karışmaz.
Uygulamalı: Ortamınızı Başlatma
2. Uygulamanızı Güvenceye Alma: Uygulamanızı Kim (veya Ne) Kontrol Edebilir?
Kavramsal Giriş
Uygulamalarımız internette yayınlanıyor. Bu, harika bir başarı. Ancak bu durum önemli bir soruyu gündeme getiriyor: Tüm bunlar nasıl gerçekleşebildi? Kodunuzu dağıttığınızda, arka planda bir dizi güvenli ve izin tabanlı "el sıkışma" gerçekleşti. Bunları anlamak, bulut güvenliğinin anahtarıdır.
Tüm bunlar Identity and Access Management (IAM) tarafından yönetilir.
- IAM'nin Temel Formülü IAM, basit ancak güçlü bir ilkeye göre çalışır: Hangi Kaynakta Kim Ne Yapabilir?
- "Kim"in (Asiller) İki Türü Şimdiye kadar atölyemizde iki temel kimlik türü gördük:
- Kullanıcılar: Bu sizsiniz. Kişisel Gmail hesabınız gibi bir kullanıcıya bağlı kimlikler
- Hizmet hesapları: Bunlar, uygulamalarınız ve hizmetleriniz için özel, insan olmayan kimliklerdir. Bunları kodunuzun kimlik rozeti olarak düşünebilirsiniz. Bir Google Cloud hizmetinin (ör. Cloud Build) başka bir hizmetle (ör. kapsayıcıyı kaydetmek için Artifact Registry) etkileşim kurması gerektiğinde, izinli olduğunu kanıtlamak için hizmet hesabını kullanır.
Herhangi bir uygulamayı dağıttığınızda her iki kimlik türü de kullanılıyordu:
- Kullanıcı hesabınızın dağıtımı başlatma izni vardı.
- Cloud Build hizmeti için hizmet hesabı, kodunuzu oluşturma ve sonuçta elde edilen kapsayıcıyı kaydetme iznine sahipti.
Erişimi Yönetme
Dağıtımımızı mümkün kılan izinleri incelemek ve ardından başka bir kullanıcıya belirli bir erişim izni vermek için IAM konsolunu kullanalım.
- İnceleme: IAM Console'a gitme
- Kimliğinizi Bulma (Kullanıcı)
- Asiller listesinde kendi e-posta adresinizi bulun. Rolünün "Sahip" olduğuna dikkat edin. Sahip rolü, projede her şeyi yapabilmek için tam ve sınırsız izin verir. Bu nedenle, API'leri etkinleştirme ve
gcloud run deploykomutunu çalıştırma yetkisi verilmiştir.
- Asiller listesinde kendi e-posta adresinizi bulun. Rolünün "Sahip" olduğuna dikkat edin. Sahip rolü, projede her şeyi yapabilmek için tam ve sınırsız izin verir. Bu nedenle, API'leri etkinleştirme ve
- Hizmetin kimliğini (hizmet hesabı) bulma
- Şimdi
[PROJECT_NUMBER]-compute@developer.gserviceaccount.comgibi bir ada sahip asıl üyeyi bulun. Bu, Cloud Build hizmeti tarafından kullanılan varsayılan hizmet hesabıdır. - Rolüne bakın. "Cloud Build Hizmet Aracısı" gibi bir rolü olur. Bu rol, işini yapmak için gereken belirli izinleri (ör. kaynak kodu çekme ve container görüntülerini bir kayıt defterine yazma) içerir. Bu, dağıtımınız için zorlu işleri yapan kimliktir.

- Şimdi
- Erişimi Yönetme (Pratik Görev)
- Şimdi de ilgili bir güvenlik görevini gerçekleştirelim. Yeni bir iş arkadaşımızın, az önce dağıttığımız iki uygulamanın (
fact-app-manualvefact-app-cli) performansını izlemesi ve günlüklerini kontrol etmesi gerektiğini düşünelim. Ancak güvenlik nedeniyle yeni bir sürüm dağıtmasına veya uygulamaları silmesine izin verilmemelidir. - IAM sayfasının üst kısmındaki + Erişim izni ver'i tıklayın.
- Yeni ana hesaplar alanına
dev-intern@example.comgibi kurgusal bir e-posta adresi girin. - Bir rol seçin açılır listesinde, "Cloud Run Görüntüleyici" rolünü bulup seçmek için filtreyi kullanın. Bu rol, en az ayrıcalık ilkesinin mükemmel bir örneğidir. Bu rol, yalnızca Cloud Run hizmetlerine salt okuma erişimi verir. (İsterseniz Rol seçmeme yardım et'i de kullanabilirsiniz.)
- Kaydet'i tıklayın.

- Şimdi de ilgili bir güvenlik görevini gerçekleştirelim. Yeni bir iş arkadaşımızın, az önce dağıttığımız iki uygulamanın (
- Sonucu İnceleme
- Artık yeni bir kullanıcıyı başarıyla eklediniz ve bu kullanıcıya, bu atölyede oluşturduğunuz kaynaklarla doğrudan alakalı olan ayrıntılı ve en az ayrıcalıklı rolü verdiniz. Bu kullanıcılar, iki faktörlü kimlik doğrulama uygulamalarınızı görebilir ancak bunları değiştiremez. Hem kullanıcı hesaplarının hem de hizmet hesaplarının güvenli ve denetlenebilir bir bulut ortamı oluşturmak için nasıl birlikte çalıştığını gördünüz.
Şimdi de bir kişiye değil, başka bir uygulamaya veya hizmete izin verme alıştırması yapalım. vertex-express@... hizmet hesabıyla temsil edilen harici bir otomatik aracın, projemizdeki yapay zeka hizmetlerini kullanması gerektiğini düşünelim. Bu hesaba doğru rolü atamamız gerekir.
- Hizmet Hesapları Sayfasına Gitme:
- IAM sayfasında Hizmet Hesapları'na gidin.
- Hedef hizmet hesabını bulun:
- Hizmet hesapları listesinde
vertex-express@ecstatic-acumen-{PROJECT_NUMBER}-c9.iam.gserviceaccount.comadlı hesabı bulun. ({PROJECT_NUMBER}yerine gerçek proje numaranızı yazmanız gerekir.) Bu, izin vermek istediğimiz kimliktir.
- Hizmet hesapları listesinde
- Hizmet Hesabı İzinlerini Yönetme:
- Sağdaki İşlem sütununda üç nokta simgesini tıklayın. Açılır menü gösterilir.
- Bu hizmet hesabının yapabileceklerini yönetmek için İZİNLERİ YÖNET'i tıklayın.
- "Vertex AI User" rolünü verme:
- Rolleri ata açılır listesinde, "Vertex AI Kullanıcısı" rolünü bulup seçmek için filtreyi kullanın.
- Kaydet'i tıklayın.

Artık hizmet hesabının belirli sayfasından doğru proje düzeyindeki izinler sayfasına başarıyla gittiniz ve bu hesabı projenizdeki yapay zeka özelliklerini kullanmak üzere yetkilendirdiniz.
3. Yapay Zeka Asistanı ile Kod Oluşturma
Kavramsal Giriş
Her uygulama kodla başlar. Geleneksel olarak bu, en çok zaman alan kısımdır. Bugün bu süreci hızlandırmak için yapay zeka iş ortağımız Gemini ile birlikte çalışacağız. Ancak ilk komutumuzu yazmadan önce Google Cloud'un sunduğu yapay zeka araçlarının genel görünümünü anlamak önemlidir.
Google'ın yapay zeka teklifleri, en basitinden en güçlüsüne kadar üç ana kategoride değerlendirilebilir:
"Creative Engine" (Gemini) ile her biri farklı bir amaç için tasarlanmış iki temel arayüz üzerinden etkileşimde bulunabilirsiniz.
- Google AI Studio (
aistudio.google.com)- Nedir? Gemini ile hızlı prototip oluşturma ve deneme için ücretsiz, web tabanlı bir araçtır. İstem yazmaya başlamanın ve modellerin neler yapabileceğini görmenin en hızlı yoludur.
- Nasıl çalışır? Bu özelliği kullanmaya başlamak için yalnızca Google Hesabınız gerekir. Bir uygulamada kullanmak için API anahtarı oluşturursunuz. Bu atölye çalışmasında kullanmak için projenizde "Generative Language API" hizmetini etkinleştirmeniz gerekir.
- Analoji: AI Studio, halka açık kütüphane veya açık atölye gibidir. Kolayca içeri girip araçları ücretsiz olarak denemeye başlayabilirsiniz.
- Vertex AI
- Nedir? Bu, Google Cloud'un tüm makine öğrenimi yaşam döngüsünü yönetmek için uçtan uca platformudur. Gemini gibi temel modelleri kullanabileceğiniz, aynı zamanda kendi özel makine öğrenimi modellerinizi sıfırdan oluşturup eğitebileceğiniz ve dağıtabileceğiniz tam profesyonel bir çalışma alanıdır. Kurumsal düzeyde güvenlik, ölçeklenebilirlik ve yönetim için tasarlanmıştır. Ayrıca, aynı araçların kurumsal düzeydeki sürümünü de sunar ve bu sürüm, Google Cloud projenize tamamen entegre edilmiştir.
- Nasıl çalışır? Aynı güçlü modelleri kullanır ancak projenizin tüm güvenlik, erişim denetimi (IAM) ve veri yönetimi özelliklerini devralır. Bu, 1. bölümde
aiplatform.googleapis.comAPI'yi etkinleştirerek kullandığımız hizmettir. - Analoji: Vertex AI, özel, güvenli, kurumsal Ar-Ge laboratuvarınızdır. Yaptığınız her şey kaydedilir, güvenli hale getirilir ve diğer proje kaynaklarınıza bağlanır.
Uygulamalı: Vertex AI Studio'da uygulama kodu oluşturma
Vertex AI'daki görsel araçları kullanarak uygulamamızı oluşturduğumuzda neler olduğuna bakalım.
- Vertex AI Studio'ya gitme:
- Web sitesini oluşturun:
- İstem kutusuna, daha sonra kullanacağımız isteği aynen girin:
Create the code for a simple web application that shows Halloween fun facts. The application should be built using the Python functions_framework for Cloud Run. The entry point function must be named 'hello_http'. When a user visits the main page, the server should randomly display one fact from a list. The page should have a separate 'index.html' file for the structure and a 'style.css' file to give it a spooky theme
- Enter tuşuna basın. Model, kodu büyük olasılıkla üç ayrı blok halinde oluşturur: Python (
main.py), HTML (index.html) ve CSS (style.css) için birer blok.
Bu tarayıcı sekmesini açık tutun. Bir sonraki bölümde bu üç bloktaki kodu kopyalamanız gerekir. Yapay zekanın dosyaları doğru şekilde ayırdığına dikkat edin. Bu iyi bir uygulama olsa da göreceğimiz gibi dağıtmak için birkaç manuel adım gerekir.
4. Cloud Run ile tüm dünyada dağıtım
Kavramsal Giriş
Kodumuz oluşturuldu ancak tarayıcıda yalnızca metin olarak görünüyor. Müşterilere hizmet vermek için bir sunucuda çalışması gerekir. Cloud Run, "sunucusuz" bir platformdur. Yani kodu siz sağlarsınız, sunucular, ölçekleme ve güvenlik gibi diğer tüm işlemler Google tarafından gerçekleştirilir. En güçlü özelliği sıfıra ölçeklendirmedir. Uygulamanızı kimse ziyaret etmiyorsa boşta kalma süresi için ödeme yapmazsınız.
- "Sunucusuz" nedir? Geleneksel olarak bir uygulamayı dağıtmak için sunucu (sanal makine) kiralamak, işletim sistemi yüklemek, ağ ve güvenlik yapılandırmak ve sürekli olarak bakımını yapmak gerekiyordu. Sunucusuz, geliştirici olarak yalnızca kodunuza odaklandığınız modern bir bulut yaklaşımıdır. Kodunuzu Cloud Run gibi bir hizmete teslim edersiniz. Bu hizmet, sunucular, ölçeklendirme, güvenlik ve ağ oluşturma gibi diğer tüm işlemleri gerçekleştirir.
- Cloud Run'ın İşleyiş Şekli: Ölçeklendirmenin Büyüsü Cloud Run'a dağıtım yaptığınızda kodunuz bir container'a (uygulamanızın ve tüm bağımlılıklarının standartlaştırılmış, taşınabilir paketi) paketlenir. Bir kullanıcı uygulamanızın URL'sini ziyaret ettiğinde Cloud Run, isteği işlemek için kapsayıcınızı anında başlatır. Aynı anda bin kullanıcı ziyaret ederse otomatik olarak bin kopya başlatılır. En güçlü özellik sıfıra ölçeklendirmedir. Uygulamanızı kimse ziyaret etmediğinde Cloud Run, çalışan container sayısını sıfıra kadar düşürür. Bu sayede, boşta kalma süresi için hiçbir ödeme yapmazsınız ve bu da hizmeti inanılmaz derecede uygun maliyetli hale getirir.
İlk dağıtımımızda Cloud Run konsolunun satır içi düzenleyicisini kullanacak ve kodumuzu manuel olarak kopyalayacağız.
Uygulamalı: Uygulamanızı Dağıtma
- Cloud Run Oluşturma Sihirbazı'nı başlatın:
- Hizmeti yapılandırma:
- İşlev oluşturmak için satır içi düzenleyiciyi kullan'ı seçin.
- Hizmetinize bir ad verin:
fact-app-manual. - Bir çalışma zamanı seçin
Python 3.13. - Bölge
us-central1seçin. - Herkese açık erişime izin ver'i seçin.
- Diğer ayarları varsayılan değerlerinde bırakın.
- En alttaki OLUŞTUR düğmesini tıklayın.

- Kodunuzu Girin:
- Varsayılan
main.pyverequirements.txtdosyası içeren bir düzenleyici görürsünüz. - main.py: Vertex AI Studio sekmenize gidin. Python kod bloğunun tamamını kopyalayın. Cloud Run düzenleyiciye geri dönün ve varsayılan
main.pyiçeriğini, kopyaladığınız kodla değiştirin. - requirements.txt:* Düzenleyicideki
requirements.txtdosyasını tıklayın. Python kodu içinfunctions-frameworkgerekir. Dosya içeriğini şununla değiştirin:functions-framework - index.html: Yeni dosyayı eklemek için düzenleyicinin dosya gezgininde "+"yı tıklayın. Dosyayı adlandırın
index.html. Vertex AI Studio sekmenize gidin, HTML kod bloğunu kopyalayın ve bu yeniindex.htmldosyasına yapıştırın. - style.css: Yeni dosyayı eklemek için "+"yı tıklayın.
style.cssolarak adlandırın. Vertex AI Studio sekmenize gidin, CSS kodu bloğunu kopyalayın ve bu yenistyle.cssdosyasına yapıştırın.
- Varsayılan
- Hizmeti Dağıtma:
- Üç dosyanız doğru şekilde yerleştirildikten sonra KAYDET ve DAĞIT düğmesini tıklayın .
- Canlı Uygulamanıza Erişme:
- Dağıtım işlemi birkaç dakika sürer. İşlem tamamlandığında, hizmet ayrıntıları sayfası en üstte herkese açık bir URL ile gösterilir.
- Bu URL'yi tıklayın. Uygulamanız artık yayında! Bu yöntem işe yarasa da çok fazla manuel kopyalama ve yapıştırma işlemi yapılması gerekiyor.

5. Geliştiricinin İş Akışını Optimize Etme
Konsol, öğrenmek için harika olsa da yinelemeli geliştirme için yavaştır. Şimdi, geliştiricinin tercih ettiği iş akışını göreceğiz. Bu iş akışında, çok adımlı sürecin tamamını kolaylaştırılmış bir sohbete dönüştürmek için Cloud Shell ve Gemini CLI kullanılacak. 
Cloud Shell ve Gemini CLI nedir?
Cloud Shell, tarayıcınızda tam bir Linux bilgisayardır. gcloud CLI (Google Cloud için uzaktan kumandanız) gibi geliştirici araçları önceden yüklenmiş olarak gelir.
Gemini CLI, terminalinizde bulunan etkileşimli ve yapay zeka destekli bir kodlama asistanıdır.
Gemini Uzantıları nedir?
Gemini CLI'ı güçlü bir akıllı telefon gibi düşünebilirsiniz. Tek başına çok yeteneklidir. Uzantılar, uygulama mağazasından yüklediğiniz uygulamalara benzer. Bu uzantılar, Gemini CLI'ya varsayılan olarak sahip olmadığı yeni ve özel yetenekler kazandırır. Örneğin, nanobanana uzantısı, Gemini CLI'yı Google'ın güçlü görüntü üretme modellerine bağlayan bir "uygulamadır". Bu sayede doğrudan komut satırından görüntü üretebiliriz.
Uygulamalı: Basitleştirilmiş İş Akışı
- API anahtarı oluşturma
- Cloud Shell'i etkinleştirme ve yapılandırma:
- Google Cloud Console'un üst kısmında Cloud Shell'i etkinleştir simgesini (
>_) tıklayın.
- Ortamınızı ayarlamak için terminalde aşağıdaki komutları çalıştırın. Proje kimliğinizi kendi kimliğinizle değiştirmeyi unutmayın.
NANOBANANA_GOOGLE_API_KEY'i ayarlayın. Bu kısmı API anahtarınızla değiştirin. (Yüklemeye devam etmek için# Set your Project ID export PROJECT_ID="[your-project-id-goes-here]"Ydeyin.) Terminalde uzantıyı yüklemek için şunu çalıştırın:gcloud config set project $PROJECT_ID # REPLACE with your API Key. export NANOBANANA_GOOGLE_API_KEY="[your-api-key-goes-here]"# Configure the CLI to use your project with Vertex AI export GOOGLE_CLOUD_PROJECT=$PROJECT_ID export GOOGLE_CLOUD_LOCATION=us-central1 export GOOGLE_GENAI_USE_VERTEXAI=true # Install the image generation extension gemini extensions install https://github.com/gemini-cli-extensions/nanobanana
- Google Cloud Console'un üst kısmında Cloud Shell'i etkinleştir simgesini (
- Yapay zeka kodlama asistanı olarak çalışan güçlü bir komut satırı arayüzü olan Gemini CLI'yı kullanacağız. İstediğimiz kodu yalın İngilizce ile tanımlamamıza olanak tanır ve yapıyı bizim için oluşturarak geliştirme sürecini önemli ölçüde hızlandırır.
- Etkileşimli Yapay Zeka Oturumu başlatma:
- Projemiz için yeni bir dizin oluşturalım ve Gemini CLI'yı etkileşimli modda başlatalım. Terminalde aşağıdaki komutu çalıştırın.
mkdir ~/2025-website cd ~/2025-website cat <<EOF > .env GOOGLE_CLOUD_PROJECT=$PROJECT_ID GOOGLE_CLOUD_LOCATION=$GOOGLE_CLOUD_LOCATION GOOGLE_GENAI_USE_VERTEXAI=true NANOBANANA_GOOGLE_API_KEY=$NANOBANANA_GOOGLE_API_KEY EOF clear gemini --yolo
- Projemiz için yeni bir dizin oluşturalım ve Gemini CLI'yı etkileşimli modda başlatalım. Terminalde aşağıdaki komutu çalıştırın.
- Uygulamanızı Oluşturma ve Uygulamanızda İterasyon Yapma:
- Artık yapay zeka asistanınızla sohbet oturumundasınız. Aşağıdaki istemi yapıştırarak web sitesinin tamamını tek bir komutla oluşturun:
Write a simple web app that shows Halloween fun facts using the Python Flask. When a user visits the main page, it should show one random fact. Include a button that fetches and displays a new fact when clicked. Create a simple, clean index.html, a separate style.css with a spooky theme, and a requirements.txt file. After creating the files, attempt to start the web app locally on port 8080. - Yerel Olarak Test Etme: Yapay zeka, dosyaları oluşturur ve bir web sunucusu başlatır. (Bazen yükleme durmaz. Sunucuyu başlatmaya çalıştığını görürseniz bir sonraki adıma geçebilirsiniz. )
- Cloud Shell araç çubuğunda Web önizlemesi simgesini tıklayın, 8080 bağlantı noktasında önizle'yi seçin. Siteniz yeni bir sekmede görünür.

- Gemini CLI'da, isteği iptal etmek için
Esctuşuna basın veya Gemini CLI'ıStop the web serveristemek için bu tuşu kullanın.
- Artık yapay zeka asistanınızla sohbet oturumundasınız. Aşağıdaki istemi yapıştırarak web sitesinin tamamını tek bir komutla oluşturun:
- Web sitesini yapay zekayla üretilmiş görüntülerle güncelleme:
- Şimdi uzantımızı kullanalım.
/ile başlayan komutlar, yapay zekaya yönelik bir istem değil, bir araca yönelik "slash komutlarıdır"./generate 3 images of spooky halloween fun - Uzantı üç resim oluşturur. Şimdi yapay zekadan web sitesini bu şekilde kullanacak şekilde değiştirmesini isteyelim.
Update the website so it will display and rotate between the 3 newly generated images each time the button is clicked. And do NOT start the server.
- Şimdi uzantımızı kullanalım.
- Dağıtıma Hazırlanma:
- Cloud Run, kodları container'lar kullanarak dağıtır.
Dockerfile, kapsayıcı oluşturma talimatıdır. Yapay zekadan bizim için bir tane oluşturmasını isteyelim.Create a Dockerfile suitable for deploying this Python Flask app to Cloud Run.
- Cloud Run, kodları container'lar kullanarak dağıtır.
- Tek bir komutla dağıtma:
CtrlCtuşuna iki kez basarak Gemini CLI'dan çıkın. İsterseniz isteme/quityazabilirsiniz.- Şimdi, uygulamanın tamamını geçerli dizininizden dağıtmak için
gcloudCLI'yı kullanın.gcloud run deploy fact-app-cli \ --source . \ --region us-central1 \ --allow-unauthenticated
- Farkı görün:
- Birkaç dakika sonra, tüm özelliklere sahip, yapay zeka tarafından oluşturulmuş web siteniz için yeni bir URL alırsınız. Cloud Run konsolunu ziyaret ettiğinizde
fact-app-manualvefact-app-cliolmak üzere iki hizmeti de görürsünüz. Komut satırı geliştirici iş akışının hızını ve gücünü deneyimlediniz.
- Birkaç dakika sonra, tüm özelliklere sahip, yapay zeka tarafından oluşturulmuş web siteniz için yeni bir URL alırsınız. Cloud Run konsolunu ziyaret ettiğinizde
Tebrikler
Google Cloud'da geliştirme yaşam döngüsünün tamamını başarıyla tamamladınız. Boş bir projeyle başladınız ve şimdi:
- Faturalandırma ile güvenli bir proje yapılandırmış olmanız gerekir.
- Tam bir uygulama yazmak için yapay zeka asistanı kullanma
- Bu uygulamayı ölçeklenebilir, sunucusuz bir platforma dağıtın.
- IAM ile güvenliğini nasıl yöneteceğini öğrendi.
Artık Google Cloud'da daha da karmaşık ve yetenekli uygulamalar oluşturmak için temel becerilere sahipsiniz.

