Gemini Code Assist ile Geliştirme Sürecini Hızlandırma

1. Genel Bakış

Bu laboratuvarda, Google Cloud'daki yapay zeka destekli bir aracı olan Gemini Code Assist'in kullanımı üzerinde durulmaktadır. Mevcut kod tabanlarını anlama, doküman ve birim testleri oluşturma, Python web uygulamasının hem kullanıcı arayüzü hem de arka uç bileşenlerini yeniden düzenleme gibi yaygın geliştirici görevleri için Gemini Code Assist'i kullanmayı öğreneceksiniz.

Öğrenecekleriniz

Bu laboratuvarda şunları nasıl yapacağınızı öğreneceksiniz:

  • Gemini Code Assist'i yaygın geliştirici görevlerinde kullanma

Ön koşullar

  • Bu laboratuvarda, Cloud Console ve Cloud Shell ortamlarına aşina olduğunuz varsayılır.

2. Kurulum ve Gereksinimler

Cloud projesi kurulumu

  1. Google Cloud Console'da oturum açın ve yeni bir proje oluşturun veya mevcut bir projeyi yeniden kullanın. Gmail veya Google Workspace hesabınız yoksa hesap oluşturmanız gerekir.

fbef9caa1602edd0.pnga99b7ace416376c4.png5e3ff691252acf41.png

  • Proje adı, bu projenin katılımcıları için görünen addır. Google API'leri tarafından kullanılmayan bir karakter dizesidir. Dilediğiniz zaman güncelleyebilirsiniz.
  • Proje kimliği, tüm Google Cloud projelerinde benzersizdir ve sabittir (ayarlandıktan sonra değiştirilemez). Cloud Console otomatik olarak benzersiz bir dize oluşturur. Genellikle bu dizenin ne olduğuyla ilgilenmezsiniz. Çoğu codelab'de proje kimliğinize (genellikle PROJECT_ID olarak tanımlanır) başvurmanız gerekir. Oluşturulan kimliği beğenmezseniz başka bir rastgele kimlik oluşturabilirsiniz. Dilerseniz kendi adınızı deneyerek kullanılabilir olup olmadığını kontrol edebilirsiniz. Bu adım tamamlandıktan sonra değiştirilemez ve proje süresince geçerli kalır.
  • Bazı API'lerin kullandığı üçüncü bir değer olan Proje Numarası da vardır. Bu üç değer hakkında daha fazla bilgiyi belgelerde bulabilirsiniz.
  1. Ardından, Cloud kaynaklarını/API'lerini kullanmak için Cloud Console'da faturalandırmayı etkinleştirmeniz gerekir. Bu codelab'i tamamlamak çok fazla zamanınızı almaz. Bu eğitimin ötesinde faturalandırılmayı önlemek için kaynakları kapatmak üzere oluşturduğunuz kaynakları veya projeyi silebilirsiniz. Yeni Google Cloud kullanıcıları 300 ABD doları değerinde ücretsiz deneme programından yararlanabilir.

Ortam Kurulumu

Gemini Chat'i açın.

bc3c899ac8bcf488.png

Alternatif olarak, arama çubuğuna "Gemini'a sorun" yazın.

e1e9ad314691368a.png

Google Cloud için Gemini API'yi etkinleştirin:

636114fa6e5f0abf.png

Bir sonraki ekranda GCA'yı etkinleştirin.

8e234b2e282c4413.png

"Start chatting" simgesini tıklayın ve denemek için örnek sorulardan birini yanıtlayın veya kendi isteminizi yazın.

ed120d672468b412.png

Deneyebileceğiniz istemler:

  • Cloud Run'ı 5 temel noktada açıklayın.
  • Google Cloud Run Ürün Yöneticisi olarak, Cloud Run'ı bir öğrenciye 5 kısa madde halinde açıklayın.
  • Google Cloud Run Ürün Yöneticisi olarak, Cloud Run'ı Sertifikalı bir Kubernetes Geliştiricisi'ne 5 kısa ve önemli noktayla açıkla.
  • Google Cloud Run Ürün Yöneticisi olarak, Cloud Run'ı GKE yerine ne zaman kullanacağınızı 5 kısa madde halinde kıdemli bir geliştiriciye açıklayın.

İşiniz bittikten sonra Gemini Cloud Assist sohbet penceresini kapatın.

Daha iyi istemler yazma hakkında daha fazla bilgi edinmek için İstem Rehberi'ne göz atın.

Google Cloud için Gemini, verilerinizi nasıl kullanır?

Google'ın gizlilik taahhüdü

Google, sektörde yapay zeka/makine öğrenimi gizlilik taahhüdü yayınlayan ilk şirketlerden biriydi. Bu taahhütte, müşterilerin bulutta depolanan verileri üzerinde en yüksek düzeyde güvenlik ve kontrol sahibi olması gerektiğine inandığımız belirtilir.

Gönderdiğiniz ve aldığınız veriler

Gemini'a sorduğunuz sorular (Gemini'a analiz etmesi veya tamamlaması için gönderdiğiniz giriş bilgileri ya da kodlar dahil) istem olarak adlandırılır. Gemini'dan aldığınız yanıtlar veya kod tamamlamaları, yanıt olarak adlandırılır. Gemini, istemlerinizi veya yanıtlarını modellerini eğitmek için veri olarak kullanmaz.

İstemlerin şifrelenmesi

Gemini'a istem gönderdiğinizde, Gemini'daki temel modele giriş olarak gönderilen verileriniz aktarım sırasında şifrelenir.

Gemini'dan oluşturulan program verileri

Gemini, birinci taraf Google Cloud kodu ve seçili üçüncü taraf kodu üzerinde eğitilmiştir. Gemini'ın sunduğu kod tamamlama, oluşturma veya analiz özellikleri de dahil olmak üzere kodunuzun güvenliği, testi ve etkinliği sizin sorumluluğunuzdadır.

Google'ın istemlerinizi nasıl işlediği hakkında daha fazla bilgi edinin.

3. İstemleri test etme seçenekleri

Mevcut istemleri değiştirmek isterseniz birkaç seçeneğiniz vardır.

Vertex AI Studio, Google Cloud'un Vertex AI platformunun bir parçasıdır ve özellikle üretken yapay zeka modellerinin geliştirilmesini ve kullanılmasını basitleştirmek ve hızlandırmak için tasarlanmıştır.

Google AI Studio, istem mühendisliği ve Gemini API ile prototip oluşturmak ve denemeler yapmak için kullanılan web tabanlı bir araçtır.

Google Gemini web uygulaması (gemini.google.com), Google'ın Gemini yapay zeka modellerinin gücünü keşfetmenize ve kullanmanıza yardımcı olmak için tasarlanmış web tabanlı bir araçtır.

4. Uygulamayı indirip inceleme

Arama çubuğunun sağındaki simgeyi tıklayarak Cloud Shell'i etkinleştirin.

3e0c761ca41f315e.png

Yetkilendirme istenirse devam etmek için "Yetkilendir"i tıklayın.

6356559df3eccdda.png

Terminalde, Git deposunu yerel olarak klonlamak için aşağıdaki komutları çalıştırın.

git clone https://github.com/gitrey/calendar-app-lab
cd calendar-app-lab

"Cloud Shell Düzenleyici"yi başlatın.

18ca8f879206a382.png

"calendar-app-lab" klasörünü açın.

7cef847802b51038.png

Cloud Shell Düzenleyici'de yeni bir terminal başlatın.

3336bea9c0e999b9.png

Ortamınız aşağıdaki ekran görüntüsüne benzer olmalıdır.

ae9475871b7d28a6.png

Gemini Code Assist sohbet penceresinde şu istemi gönderin:

Don't suggest any changes. Explain this codebase to me.

Örnek çıkış:

9839a7ff8c04f6a7.png

5. Uygulamayı yerel olarak başlatma

Sohbet penceresinde şu istemi gönderin:

How do I set up a virtual environment and run this app locally?

Terminalde önerilen komutları çalıştırın:

2d78c7ae8e2f0e5.png

Bağımlılıkları yükleyin:

c300d4a00537fcb2.png

Uygulamayı başlatın:

f98f49a19f4015ed.png

Uygulamayı önizlemek için bağlantıyı tıklayın:

dc0a8b15a6c5386f.png

Örnek çıkış:

e9f986d9088b4419.pngd2bb703195b4f99.png

6. Belge ekleme

Sohbet penceresinde şu istemi gönderin:

Add docstrings to all files

Önerilen değişiklikleri inceleyin ve sohbette kabul edin:

d66c0d004ed65f87.png

Sohbet penceresinde şu istemi gönderin:

update .gitignore and add venv/* folder

Ardından şu istemi girin:

update .gitignore and add __pycache__ folder

Örnek çıkış:

b06dae44f82cfa95.png

Kaynak Kontrolü görünümüne geçin ve şimdiye kadar yaptığınız değişiklikleri inceleyin:

2c41f8b842573384.png

7. Birim testleri ekleme

calendar.py dosyasını açın ve içerik menüsünden Gemini Code Assist >> Generate Unit Tests seçeneğini belirleyin.

6d21534189f9d18d.png

Gemini Code Assist sohbet penceresinde Enter tuşuna basın. Değişiklikleri inceleyin ve kabul edin.

dc0bac41d481fd34.png

Gemini'a testleri nasıl çalıştıracağınızı sorun:

How do I run the tests?

Terminalde önerilen komutları çalıştırın ve çıkışı inceleyin.

9ce654d02951888.png

8. Hataları kontrol etme

calendar.py dosyasını açın ve sohbet penceresinde şu istemi gönderin:

Are there any bugs in the conversion logic?

Önerilen değişiklikleri inceleyin ve sohbette kabul edin:

1ff4c84d70cd4a79.png

Değişiklikleri doğrulamak için birim testlerini yeniden çalıştırın:

python3 test_calendar.py

Hata mesajları görürseniz hatayı seçip bağlama ekleyerek Gemini'ın sorun giderme ve düzeltme konusunda yardımcı olmasını sağlayabilirsiniz.

70e77fd68358a29a.png

9. Refactor UI

Sohbet penceresinde şu istemi gönderin:

Refactor UI to use bootstrap library

Değişiklikleri inceleyip kabul edin:

b5fd026c01c88d26.png

Uygulamayı başlatın veya uygulama zaten çalışıyorsa sayfayı yeniden yükleyin.

Terminalde, çalışmıyorsa uygulamayı başlatın:

python3 main.py

Sayfayı yeniden yükleyip değişiklikleri kontrol edin.

b52a709e902040e3.png54664e527bcd9227.png

Hata sayfasını doğrulamak için negatif bir sayı göndermeyi deneyin.

f426b129e8aa64b7.png604f16773e868060.png

10. Arka Ucu Yeniden Düzenleme

Sohbet penceresinde şu istemi gönderin:

Store requests in memory and create a page to display conversion history. Add links on all pages to view the history.

Sohbetteki değişiklikleri inceleyip kabul edin:

8c1c2a1b79432490.png

Terminalde şu komutu çalıştırarak uygulamayı başlatın:

python3 main.py

Uygulamaya erişin ve geçmiş sayfasını incelemeden önce birden fazla istek gönderin.

ac5639d18b341b0a.png

Dönüşüm isteklerinin geçmişini inceleyin.

9ca680e193510640.png

11. Gemini Code Assist ile ilgili sonuç

Gemini Code Assist'in, mevcut kodu anlamaktan doküman oluşturmaya, birim testleri oluşturmaya ve hem kullanıcı arayüzü hem de arka uç bileşenlerini yeniden düzenlemeye kadar çeşitli geliştirme görevlerini nasıl önemli ölçüde kolaylaştırabileceğini gördünüz. Bağlamı anlama ve alakalı öneriler sunma özelliği sayesinde geliştiriciler için güçlü bir araçtır.

Gemini Code Assist ile daha fazla deneme yapmanızı öneririz. Farklı istemler deneyin, kendi kod tabanlarınızla özelliklerini keşfedin ve günlük geliştirme iş akışınızı nasıl iyileştirebileceğinizi öğrenin. Bu araçla ne kadar çok etkileşim kurarsanız üretkenliğinizi artırma ve kod kalitesini iyileştirme potansiyelini o kadar çok keşfedersiniz.

12. Tebrikler!

Tebrikler, codelab'i tamamladınız.

İşlediğimiz konular:

  • Yaygın geliştirici görevleri için Gemini Code Assist'i kullanma

Sıradaki adım:

  • Daha fazla uygulamalı oturum geliyor.

Temizleme

Bu eğitimde kullanılan kaynaklar için Google Cloud hesabınızın ücretlendirilmesini önlemek amacıyla kaynakları içeren projeyi silin veya projeyi koruyup tek tek kaynakları silin.

Projeyi silme

Faturalandırılmanın önüne geçmenin en kolay yolu, eğitim için oluşturduğunuz projeyi silmektir.

©2024 Google LLC. Tüm hakları saklıdır. Google ve Google logosu, Google LLC şirketinin ticari markalarıdır. Diğer tüm şirket ve ürün adları ilişkili oldukları şirketlerin ticari markaları olabilir.