Skills
Bir skill, tek bir talep türü için ayrıntılı adımları tutar: iade, beden seçimi, toplu sipariş gibi. Agent her skill'in adını ve ne zaman kullanılacağını her zaman görür; adımların tamamını yalnızca konuşma gerektirdiğinde yükler. Böylece her zaman gönderilen talimatlarınız kısa kalır, agent da özen gerektiren durumlarda tam olarak ne yapacağını bilir. Skill'ler SKILL.md biçimiyle uyumludur; içe ve dışa aktarabilirsiniz.
Skill'ler nasıl çalışır
- Her mesajda modelin talimatlarında bir
## Skillsbölümü bulunur: her skill'in adı ve Ne zaman kullanılır metni. Skill'in başka hiçbir kısmı gönderilmez. - Model bir skill'in konuşmaya uyduğuna karar verdiğinde, skill'in adıyla yerleşik
load_skilltool'unu çağırır. - Peki skill'in Talimatlar'ını ve Bu skill'in kullandığı tool'lar listesini döndürür; model yanıtın geri kalanında bunlara uyar.
Bir skill'i ne zaman yükleyeceğine model yalnızca Ne zaman kullanılır metnine bakarak karar verir. Bu metin skill'in en önemli kısmıdır.
Bir yanıtta kullanılan skill'ler Test panelinde ve konuşmanın izinde listelenir; doğru skill'in yüklendiğini buradan kontrol edebilirsiniz.
Skills, Instructions, Tools ve Knowledge
| Instructions | Skills | Tools | Knowledge | |
|---|---|---|---|---|
| Nedir | Kurallar ve kimlik | Adım adım prosedürler | İşlemler: API çağrıları ve kod | Başvuru belgeleri |
| Model ne zaman görür | Her mesajda | Adı ve "ne zaman"ı her mesajda; adımları yalnızca yüklenince | Adı ve açıklaması her mesajda; sonucu çağrılınca | Mesajla eşleşen bölümler, eşleşme olduğunda |
| Kim karar verir | Her zaman (ya da bir koşul) | Model | Model | Her mesaj için otomatik arama |
| Neye uygun | Üslup, kesin kurallar, kapsam | İade akışı, randevu akışı, sorun giderme | Sipariş sorgulama, randevu, hesaplama | Fiyat listeleri, politikalar, kılavuzlar, SSS |
| Boyut | Kısa tutun | Her biri en fazla 20.000 karakter | — | Büyük |
Karar vermenin kolay bir yolu:
- Agent'ın her zaman uyması gerekiyorsa, bir instruction'dır.
- Bir talep türünün adım adım nasıl ele alınacağıysa, bir skill'dir.
- Bir şey yapıyorsa ya da canlı veri getiriyorsa, bir tool'dur.
- Bakılacak bilgiyse, knowledge'dır.
Skill'ler ve tool'lar birlikte çalışır: bir skill çoğu zaman hangi adımda hangi tool'un çağrılacağını söyler.
Skill oluşturma
- Agent'ı açın ve Skills sayfasına gidin.
- Listenin altındaki Yeni skill'e tıklayın.
- Başlık, Ne zaman kullanılır (AI bunu her zaman görür) ve Talimatlar alanlarını doldurun.
- Adımların kullandığı tool'ları Bu skill'in kullandığı tool'lar altına ekleyin.
- Test panelini açmak için karttaki Test'e tıklayın ve skill'i tetiklemesi gereken bir mesaj yazın.
- Yayınlayın. Skill'ler taslağın parçasıdır; Test paneli taslağı hemen kullanır.
Skill ayarları
| Ayar | Ne işe yarar | Sınır |
|---|---|---|
| Başlık | Peki panelinde insanların gördüğü ad. | Zorunlu, en fazla 80 karakter |
| AI'ın kullandığı ad | Modelin load_skill ile kullandığı ad, örneğin iade. Siz değiştirmediğiniz sürece başlıktan doldurulur. | Küçük harf, rakam ve _, harfle başlar, en fazla 64 karakter. Agent'ın skill'leri arasında benzersiz. |
| Ne zaman kullanılır (AI bunu her zaman görür) | Tetikleyici. Modelin yüklemeden önce gördüğü tek kısım. | Zorunlu, en fazla 500 karakter |
| Talimatlar | Markdown ile adımlar (SKILL.md biçimi). Yalnızca AI bu skill'in konuşmaya uyduğuna karar verdiğinde yüklenir. | Zorunlu, en fazla 20.000 karakter |
| Bu skill'in kullandığı tool'lar | Talimatlarla birlikte modele gösterilen tool adları. | En fazla 30 |
Bir agent'ın en fazla 30 skill'i olabilir.
Bu skill'in kullandığı tool'lar
Ekle'ye tıklayarak agent'ın HTTP tool'ları arasından seçim yapın; handoff açıksa request_human, web search açıksa web_search ve read_page de listelenir. Agent'ta olmayan bir tool (örneğin sonradan silinmiş) bu agent'ta yok olarak görünür.
Bu liste model için bir yönlendirmedir, bir izin değildir. Skill yüklendiğinde model adımlardan sonra "Tools for this skill: …" satırını okur. Agent'ın diğer tool'ları kullanılabilir kalır; listelenen tool'lar da skill olmadan kullanılabilir.
İyi bir tetikleyici yazmak
Ne zaman kullanılır metni, skill'in hiç yüklenip yüklenmeyeceğine karar verir. Model için yazın:
- Durumla başlayın. "Müşteri bir ürünü iade etmek ya da değiştirmek istediğinde kullan."
- İşaretleri sayın. Müşterilerin kullandığı kelimeler ve niyetler: "iade, para iadesi, değişim, yanlış beden, hasarlı ürün".
- Yakın bir komşusu varsa ne zaman kullanılmayacağını söyleyin: "Kargo takibi için değil: siparis_durumu kullan."
- Her skill tek bir iş. Tek tetikleyicide iki iş, skill'in ya çok sık ya da hiç çalışmamasına yol açar. Bölün.
| Zayıf | Daha iyi |
|---|---|
| İadeler | Müşteri bir ürünü iade etmek, değiştirmek ya da parasını geri almak istediğinde kullan; yanlış beden ve hasarlı ürün dahil. |
| Randevu işleri | Hasta randevu almak, randevusunu ertelemek ya da iptal etmek istediğinde kullan. Tedavi fiyatı soruları için değil. |
| Entegrasyon konuları | Kullanıcı bir entegrasyondan (Trendyol, iyzico, e-Fatura) gelen verinin panellerinde eksik ya da yanlış olduğunu söylediğinde kullan. |
Adımları yazmak
Talimatlar yalnızca skill yüklendikten sonra okunur; bu yüzden uzun ve kesin olabilir.
- Adımları numaralandırın, agent'ın yapması gereken sırayla.
- Her adımda neyin sorulacağını, neyin kontrol edileceğini ve hangi tool'un çağrılacağını tam adıyla (
siparis_durumu) yazın. - Dalları ele alın: sipariş çok eskiyse, tool hata verirse, müşteri kabul etmezse ne olacak.
- Açık bir sonuçla bitirin: müşteriye ne söylenecek, ne zaman devredilecek.
- Markdown kullanın: başlıklar, listeler ve iyi yanıtlardan kısa örnekler.
- Her zaman geçerli kuralları tekrarlamayın. Üslup ve kimlik talimatlarınızdan gelir.
SKILL.md içe ve dışa aktarma
Skill'ler SKILL.md biçimini kullanır: önce bir frontmatter bloğu, ardından Markdown ile talimatlar.
---
name: İade ve değişim
description: Müşteri bir ürünü iade etmek, değiştirmek ya da parasını geri almak istediğinde kullan.
allowed-tools: siparis_durumu, request_human
---
## İade ve değişim
1. Sipariş numarasını ve nedeni sor.
2. ...
- SKILL.md içe aktar (listenin altında) bir ya da daha fazla
.mddosyasını okur.namebaşlık olur ve sadeleştirilerek AI'ın kullandığı ada dönüşür (iade_ve_degisim).description, Ne zaman kullanılır olur.allowed-tools(virgül ya da boşlukla ayrılmış) Bu skill'in kullandığı tool'lar olur. Frontmatter'dan sonraki her şey talimatlar olur. - Bir ad zaten kullanılıyorsa Peki sonuna
_2,_3gibi ekler. - Bir skill kartındaki SKILL.md dışa aktar, paylaşmaya ya da başka yerde kullanmaya hazır
<ad>.SKILL.mddosyasını indirir.
İçe aktarma hataları (sunucudan İngilizce gelir):
| Hata | Ne yapmalı |
|---|---|
| A SKILL.md file starts with a --- frontmatter block | Dosyanın en başına --- bloğunu ekleyin. |
| The frontmatter needs a description (when to use the skill) | Bir description: satırı ekleyin. |
Kartta görünen sorunlar
| Mesaj | Ne yapmalı |
|---|---|
| Bir başlık verin | Başlık'ı doldurun. |
| AI adı yalnızca küçük harf, rakam ve _ içerebilir | AI'ın kullandığı ad'ı düzeltin. |
| Bu AI adını başka bir skill kullanıyor | Başka bir ad seçin. |
| AI'ın bunu ne zaman kullanacağını yazın | Ne zaman kullanılır'ı doldurun. |
| Talimatları yazın | Talimatlar'ı doldurun. |
Skill'i test etmek
- Test panelini açmak için skill kartındaki Test'e tıklayın.
- Skill'in ele alması gereken bir mesajı bir müşteri gibi yazın.
- Yanıtın Skills listesinde skill'inizin göründüğünü ve agent'ın adımlara uyduğunu kontrol edin.
- Skill'i tetiklememesi gereken bir mesaj da yazın ve skill'in yüklenmediğini kontrol edin.
Skill yüklenmiyorsa tetikleyiciyi daha net yazın. Çok sık yükleniyorsa ne zaman kullanılmayacağını ekleyin. Bkz. Test etme.
Örnekler
E-ticaret mağazası: iade
| Ayar | Değer |
|---|---|
| Başlık | İade ve değişim |
| AI'ın kullandığı ad | iade |
| Ne zaman kullanılır | Müşteri bir ürünü iade etmek, değiştirmek ya da parasını geri almak istediğinde kullan; yanlış beden ve hasarlı ürün dahil. Kargo takibi için değil. |
| Bu skill'in kullandığı tool'lar | siparis_durumu, request_human |
Talimatlar:
## İade ve değişim
1. Sipariş numarası elinde yoksa iste; iade nedenini sor.
2. Sipariş numarasıyla `siparis_durumu` çağır.
- Sipariş bulunamazsa müşteriden numarayı kontrol etmesini iste. İki başarısız denemeden sonra devret.
3. İade süresini kontrol et: ürünler teslimattan sonra 14 gün içinde iade edilebilir.
- 14 günden eskiyse iade süresinin dolduğunu kibarca açıkla. Israr ederse bir kişiye bağlamayı öner.
4. Ürünü kontrol et:
- Giyilmiş ayakkabı ve açılmış çorap, hasarlı değilse iade edilemez.
- Hasarlı ya da yanlış ürün: özür dile, fotoğraf iste ve request_human ile devret. Kargo bizden.
5. Normal iade ya da değişimde adımları anlat:
- Başka bedenle değişim: ücretsiz; eski ürün bize ulaşınca yenisini göndeririz.
- Para iadesi: ürün bize ulaştıktan sonra 5 iş günü içinde, ödemenin yapıldığı karta.
- İade formunun bağlantısını gönder: https://magazan.com/iade
6. Başka bir isteği olup olmadığını sorarak bitir.
Ürün bize ulaşmadan asla para iadesi sözü verme.
Diş kliniği: randevu talepleri
| Ayar | Değer |
|---|---|
| Başlık | Randevu talepleri |
| AI'ın kullandığı ad | randevu |
| Ne zaman kullanılır | Hasta randevu almak, randevusunu ertelemek ya da iptal etmek istediğinde kullan. Tedavi fiyatı soruları için değil. |
| Bu skill'in kullandığı tool'lar | randevu_talebi, request_human |
Talimatlar:
## Randevu talepleri
### Randevu alma
1. Hangi tedaviye ihtiyacı olduğunu sor. Bilmiyorsa muayene öner.
2. Ad soyad, telefon numarası (+90 5xx xxx xx xx) ve tercih ettiği iki günü al.
3. Bilgileri tekrarla ve hastadan onaylamasını iste.
4. `randevu_talebi` çağır. Ön büronun onayını bekler.
5. Hastaya kliniğin tam saati onaylamak için arayacağını söyle.
### Erteleme ya da iptal
1. Adını ve mevcut randevu gününü sor.
2. "randevu erteleme" ya da "randevu iptali" nedeniyle request_human ile devret.
3. Hastaya ön büronun onaylayacağını söyle.
### Acil durumlar
Hasta şiddetli ağrı, şişlik ya da kanamadan söz ederse randevu adımlarını atla ve talimatlardaki acil numarayı ver.
Yazılım şirketi destek masası: eksik entegrasyon verisi
| Ayar | Değer |
|---|---|
| Başlık | Entegrasyon verisi eksik |
| AI'ın kullandığı ad | entegrasyon_senkron |
| Ne zaman kullanılır | Kullanıcı bir entegrasyondan (Trendyol, iyzico, e-Fatura) gelen verinin panellerinde eksik, gecikmeli ya da yanlış olduğunu söylediğinde kullan. |
| Bu skill'in kullandığı tool'lar | hesap_durumu, request_human |
Talimatlar:
## Entegrasyon verisi eksik
1. Hangi entegrasyon ve hangi panel olduğunu, verinin ne zamandan beri yanlış göründüğünü sor.
2. Firma vergi numarasını iste ve `hesap_durumu` çağır.
3. `entegrasyonlar[].son_senkron` ve `entegrasyonlar[].hata` alanlarını oku:
- Son senkron 1 saatten yeni ve hata yoksa: verinin görünmesi 1 saati bulabilir. Biraz sonra tekrar bakmasını iste.
- Hata "token_expired": Ayarlar → Entegrasyonlar → Yeniden bağlan adımıyla yeniden bağlamasını söyle.
- Hata "rate_limited": senkron 24 saat içinde kendiliğinden devam eder.
- Başka bir hata ya da 24 saati aşan senkronsuzluk: hata metniyle birlikte request_human ile devret.
4. Asla şifre ya da API anahtarı isteme.