Yapay zeka aracısı becerilerini kullanma (Gemini CLI ve Firebase için aracısı becerileri ile)

1. Giriş

Agent Skills laboratuvarı kapak fotoğrafı

Bu laboratuvarda, LLM'lere özel bilgi ve iş akışlarına erişim sağlamak için Ajan Becerileri oluşturmayı öğreneceksiniz. Bu beceriyi, Gemini CLI'dan erişilebilen yerel bir beceri olarak oluşturursunuz.

Yapacaklarınız

  • En sevdiğiniz şeyler için kendi Agent Skills'inizi oluşturun.
  • Becerinizi sorgulamak için Gemini CLI'ı kullanın.
  • Firebase için resmi Agent Skills'i yükleyin ve bunları kullanarak uygulama oluşturup dağıtın.

Neler öğreneceksiniz?

  • Becerileri yapılandırma
  • SKILL.md dosyası nasıl yazılır?
  • Gemini CLI ile yerel becerileri kullanma

2. Proje Ayarları

  1. Google Hesabınız yoksa Google Hesabı oluşturmanız gerekir.
    • İş veya okul hesabı yerine kişisel hesap kullanıyorsanız. İş ve okul hesaplarında, bu laboratuvar için gereken API'leri etkinleştirmenizi engelleyen kısıtlamalar olabilir.
  2. Google Cloud Console'da oturum açın.
  3. Cloud Console'da faturalandırmayı etkinleştirin.
    • Bu laboratuvarı tamamlamak için 1 ABD dolarından daha az tutarda bulut kaynağı kullanmanız gerekir.
    • Daha fazla ücret ödememek için bu laboratuvarın sonundaki adımları uygulayarak kaynakları silebilirsiniz.
    • Yeni kullanıcılar 300 ABD doları değerinde ücretsiz deneme sürümünden yararlanabilir.
  4. Yeni bir proje oluşturun veya mevcut bir projeyi yeniden kullanmayı seçin.
    • Proje kotasıyla ilgili bir hata görürseniz yeni bir proje oluşturmak için mevcut bir projeyi yeniden kullanın veya mevcut bir projeyi silin.

3. Cloud Shell Düzenleyici'yi açma

  1. Doğrudan Cloud Shell Düzenleyici'ye gitmek için bu bağlantıyı tıklayın.
  2. Bugün herhangi bir noktada yetkilendirmeniz istenirse devam etmek için Yetkilendir'i tıklayın. Cloud Shell'e yetki vermek için tıklayın.
  3. Terminal ekranın alt kısmında görünmüyorsa açın:
    • Görünüm'ü tıklayın.
    • Terminal'i tıklayın.Cloud Shell Düzenleyici'de yeni terminal açma
  4. Terminalde şu komutla projenizi ayarlayın:
    • Biçim:
      gcloud config set project [PROJECT_ID]
      
    • Örnek:
      gcloud config set project lab-project-id-example
      
    • Proje kimliğinizi hatırlamıyorsanız:
      • Tüm proje kimliklerinizi şu komutla listeleyebilirsiniz:
        gcloud projects list | awk '/PROJECT_ID/{print $2}'
        
      Cloud Shell Düzenleyici terminalinde proje kimliğini ayarlama
  5. Şu mesajı görmeniz gerekir:
    Updated property [core/project].
    
    WARNING simgesini görüyorsanız ve Do you want to continue (Y/n)? soruluyorsa proje kimliğini yanlış girmiş olabilirsiniz. n tuşuna, Enter tuşuna basın ve gcloud config set project komutunu tekrar çalıştırmayı deneyin.

4. Özel becerinizi oluşturma

Aracı becerileri, bir yapay zeka aracısına talimat ve bilgi sağlayan en az bir SKILL.md dosyası içeren dizinlerdir. Bu bölümde, Gemini CLI'ya en sevdiğiniz şeyler hakkında bilgi veren bir beceri oluşturacaksınız.

  1. Bu laboratuvar için bir dizin oluşturun ve bu dizine gidin:
    mkdir ~/agent-skills-lab && cd ~/agent-skills-lab
    
  2. Proje beceriniz için bir dizin oluşturun:
    mkdir -p ~/agent-skills-lab/.agents/skills/my-favorite-things
    
  3. Beceri için yeni bir SKILL.md dosyası oluşturup açın:
    cloudshell edit ~/agent-skills-lab/.agents/skills/my-favorite-things/SKILL.md
    
    cloudshell edit komutu, SKILL.md dosyasını terminalin üstündeki düzenleyicide açar.
  4. SKILL.md dosyasına aşağıdaki içeriği ekleyin:
    ---
    name: my-favorite-things
    description: Provides personal information about my favorite color, food, and programming language. Use this skill when the user asks questions about my personal preferences or favorite things.
    ---
    
    # Knowledge
    
    - **Favorite Color:** Blue
    - **Favorite Food:** Pizza
    - **Favorite Programming Language:** Python
    
    If asked about one of my favorite things, please respond with the information provided above.
    

Yalnızca bir SKILL.md dosyasıyla ilk becerinizi oluşturdunuz. Bu beceriyi Gemini KSA'da kullanmanın zamanı geldi.

5. Gemini CLI'daki becerinizi kullanma

Başarıyla beceri oluşturduğunuz için bu beceri, .agents/skills dizininde yer aldığından Gemini CLI tarafından bulunabilir.

  1. Gemini CLI'yı başlatın:
    gemini
    
    Gemini CLI'ın yeni beceriyi tanıdığını görmeniz gerekir. Bazı varsayılan ayarları kabul etmek için Enter tuşuna basmanız gerekebilir.
  1. Gemini'ın bağlamı dahilinde kullanabileceği becerileri listelemesini sağlama
    /skills
    
    Kullanılabilir beceriler listesinde my-favorite-things simgesini görmeniz gerekir.
  2. Gemini'a en sevdiğiniz renk hakkında soru sorun:
    What is my favorite color?
    
    Gemini CLI, sorunuzu yanıtlamak için my-favorite-things becerisini kullanmalıdır. İstenirse Gemini CLI'nın beceriyi kullanmasına izin verin.

Çıkışta, Gemini CLI'ın becerinizi kullandığı ve "Mavi" veya "En sevdiğim renk mavi" gibi bir yanıt verdiği gösterilmelidir.

Başardınız! Başarıyla bir beceri oluşturdunuz ve Gemini CLI kullanarak bu beceriyi test ettiniz.

Oturumunuzu sonlandırmaya hazır olduğunuzda /quit yazıp Enter tuşuna basarak Gemini CLI'dan çıkın.

6. (İsteğe bağlı) Firebase Hosting'e uygulama oluşturma ve dağıtma

Kendi becerilerinizi oluşturmanın yanı sıra başkaları tarafından oluşturulan becerileri de yükleyebilirsiniz. Bu, taşınabilir becerilerin (kolayca paylaşılabilen ve yeniden kullanılabilen, bağımsız bilgi, talimat ve iş akışı modülleri) kullanımını gösterir.

Firebase için Temsilci Becerileri, bu taşınabilir modüllere iyi bir örnektir. Bu işlevler, yapay zeka asistanlarının Firebase'deki en iyi uygulamaları anlamasına ve karmaşık görevleri daha yüksek doğrulukla ve daha düşük jeton maliyetiyle yürütmesine yardımcı olmak için tasarlanmıştır.

Artık kullanıcı kimlik doğrulaması ve veritabanı içeren bir "Yapılacaklar" web uygulaması oluşturmak ve bunu Firebase Hosting'e dağıtmak için Firebase için Agent Skills'i kullanabilirsiniz.

Projenizi oluşturma

  1. Hâlâ Gemini CLI'daysanız çıkmak için /quit yazın.
  2. Projeniz için yeni bir dizin oluşturun ve bu dizine gidin:
    mkdir ~/todo-app && cd ~/todo-app
    
  3. Google Hesabınızı kullanarak Firebase'e giriş yapın. Cloud Shell'de olduğunuz için --no-localhost işaretini kullanın:
    firebase login --no-localhost
    
    1. KSA istemleriyle etkileşim kurun:
      • Enable Gemini in Firebase features? sorusu sorulduğunda Y (Evet için) yazın ve Enter tuşuna basın.
      • Allow Firebase to collect CLI and Emulator Suite usage and error reporting information? sorusu sorulduğunda Y (Evet için) yazın ve Enter tuşuna basın.
    2. Tarayıcıda yetkilendirme:
      • Terminalde bir URL görürsünüz. Oturum açma sayfasını yeni bir tarayıcı sekmesinde açmak için bağlantıyı tıklayın.
      • Adım 1/3 (Komutu onaylayın): Evet, bu komutu az önce çalıştırdım'ı tıklayın.
      • Adım 2/3 (Oturum kimliğini onaylayın): Oturum kimliğinin terminalinizde gösterilenle eşleştiğinden emin olun ve Evet, bu benim oturum kimliğim'i tıklayın.
      • Adım 3/3 (Kodu kopyalama): Yetkilendirme kodunu panonuza kopyalamak için Kopyala'yı tıklayın.
    3. Giriş işlemini tamamlayın:
      • Cloud Shell terminaline dönün ve ? Enter authorization code: isteminde yetkilendirme kodunu yapıştırın.
      • Enter tuşuna basın.
    İşlemin başarılı olduğunu belirten bir mesaj görmeniz gerekir: ✔ Success! Logged in as .

Firebase için Agent Skills'i yükleme

Proje dizininizi oluşturduğunuza göre, Firebase için Agent Skills'i bu dizine yüklemeniz gerekir.

Firebase için Agent Skills'i terminalinizdeki skills CLI ile yükleyebilirsiniz:

npx skills add firebase/agent-skills

Yükleme sırasında hangi becerilerin yükleneceğini seçmeniz istenir. Listede gezinmek için ok tuşlarınızı, bu becerileri seçmek için boşluk çubuğunu kullanın.

  • firebase-basics
  • firebase-hosting-basics
  • firebase-auth-basics
  • firebase-firestore-enterprise-native-mode

Dört Firebase becerisi seçme

Sonraki istemlerde Enter tuşuna basarak varsayılanları güvenle kabul edebilirsiniz.

Bu komut, firebase-basics ve firebase-hosting-basics gibi becerileri indirip yükleyerek my-favorite-things becerinizin yanı sıra Gemini CLI'da kullanılabilir hâle getirir.

Firebase için Agent Skills hakkında daha fazla bilgi edinmek üzere kullanılabilir beceriler başlıklı makaleyi inceleyin.

Temel bir web uygulaması oluşturma ve dağıtma

  1. Projeniz için gerekli API'leri etkinleştirin:
    gcloud services enable \
      cloudresourcemanager.googleapis.com \
      firebase.googleapis.com
    
  2. Mevcut Google Cloud projenizde Firebase'i etkinleştirin:
    firebase projects:addfirebase ${GOOGLE_CLOUD_PROJECT}
    
  3. Gemini CLI'yı başlatın:
    gemini
    
  4. Gemini'dan temel bir index.html oluşturmasını isteyin:
    Generate an index.html file with the content "Hello Firebase Hosting" and
    deploy the application to Firebase Hosting using the current Google Cloud
    Project.
    
    Gemini, index.html oluşturmanızı ve firebase yürütmenizi ister. Bunu yapmasına izin vermek için Enter tuşuna basın.Gemini CLI, web sitenizi oluşturmak ve dağıtmak için Firebase için Agent Skills'i kullanmalıdır. Gerekirse onaylarla ilgili olarak temsilciye yol gösterin.

Dağıtım tamamlandığında web uygulamanız için bir URL sağlanır. Cloud Shell Editor terminalinde bağlantıları açmak için ctrl+click (Windows) veya cmc+click (Mac) tuşunu kullanın. Dağıtılan uygulamanızın URL'sini ziyaret edin.

Firebase Authentication'ı ekleme

  1. Henüz başlatılmadıysa Gemini KSA'yı başlatın:
    gemini
    
    Gemini, "Bu klasöre güveniyor musunuz?" gibi sorular sorabilir. Varsayılanları kabul etmek için Enter tuşuna basın.
  2. Şimdi Gemini'dan Google ile oturum açma özelliğini eklemesini isteyin:
    Generate HTML, CSS, and Javascript for a single page application.
    It should use Google Sign-in with Firebase Authentication.
    A user should be able to sign in with their Google Account.
    Deploy when you are done and give the URL to the user.
    
    Gemini, index.html, style.css ve script.js gibi dosyalar oluşturmanızı veya güncellemenizi isteyebilir. Buna izin verin. Gemini, Firebase konsolunda bazı işlemler yapmanızı isteyebilir. CLI, denemesini isterseniz bu işlemlerin çoğunu yapabilir ancak Cloud Shell örneğinizde Firebase CLI'nin eski bir sürümü yüklüyse adımları manuel olarak (ör. Google OAuth'u etkinleştirme) tamamlamanız gerekebilir.

Dağıtım tamamlandığında web uygulamanız için bir URL sağlanır. Cloud Shell Editor terminalinde bağlantıları açmak için ctrl+click (Windows) veya cmc+click (Mac) tuşunu kullanın. Dağıtılan uygulamanızın URL'sini ziyaret edin.

En son değişikliklerinizin görünmesi için ctrl+shift+R (Windows) veya cmd+shift+R (Mac) ile "Önbelleği kullanmadan yenileme" yapmanız gerekebilir.

Cloud Firestore ekleme

  1. Henüz başlatılmadıysa Gemini KSA'yı başlatın:
    gemini
    
    Gemini, "Bu klasöre güveniyor musunuz?" gibi sorular sorabilir. Varsayılanları kabul etmek için Enter tuşuna basın.
  2. Gemini'dan görevleri kaydetmek için Firestore'u eklemesini isteyin:
    Update the application to save tasks in Cloud Firestore for the signed-in user.
    A user should be able to add new tasks and see a list of their tasks.
    Deploy when you are done and give the URL to the user.
    
    Gemini, dosyaları günceller. Buna izin verin.

Dağıtım tamamlandığında web uygulamanız için bir URL sağlanır. Cloud Shell Editor terminalinde bağlantıları açmak için ctrl+click (Windows) veya cmc+click (Mac) tuşunu kullanın. Dağıtılan uygulamanızın URL'sini ziyaret edin.

En son değişikliklerinizin görünmesi için ctrl+shift+R (Windows) veya cmd+shift+R (Mac) ile "Önbelleği kullanmadan yenileme" yapmanız gerekebilir.

Uygulamanız beklendiği gibi çalışmıyorsa beklediğiniz işlevselliği elde etmek için Gemini CLI ile çalışmaya devam edin. Örnek: shell Hide the task form when the user is logged out. Update the security rules so the user can see their TODOs.

Yeni Firebase uygulamanızda görmek istediğiniz özellikleri eklemek için laboratuvarla denemeler yapmaya devam edin.

7. Sonuç

Tebrikler! Başarıyla bir beceri oluşturdunuz ve Gemini CLI için ek becerileri nasıl yükleyeceğinizi öğrendiniz.

(İsteğe bağlı) Temizleme

Temizleme yapmak isterseniz ek ücret ödememek için Cloud projenizi silebilirsiniz.

İsterseniz projeyi silebilirsiniz:

gcloud projects delete $GOOGLE_CLOUD_PROJECT

Ayrıca, yer açmak için Cloud Shell diskinizdeki gereksiz kaynakları da silebilirsiniz.

  1. Laboratuvar dizinini silin (bu işlem hem beceriyi hem de uygulamayı kaldırır):
    rm -rf ~/agent-skills-lab
    
  2. "Yapılacaklar" uygulama dizinini silin (dizini dışarıda oluşturduysanız):
    rm -rf ~/todo-app
    

Cloud Shell'inizi varsayılan durumuna sıfırlamanız gerekirse bunu güvenli bir şekilde nasıl yapacağınızla ilgili talimatlar için resmi belgelere göz atabilirsiniz.