AI Serisi Mülakat 7: Bir Skill Nasıl Standart Bir Şekilde Tanımlanır
1. Skill'in Temel Kavramı
Skill, Agent (akıllı ajan) veya AI sistemi içinde kapsüllenmiş bir dizi yürütülebilir yetenek birimidir. Genellikle şunları içerir:
- Tetikleme koşulu: Ne zaman çağrılacağı (kullanıcı komutu, sistem olayı gibi).
- Girdi parametreleri: Alınması gereken veri veya bağlam.
- Yürütme mantığı: Spesifik işlem adımları (API çağrısı, kod çalıştırma, bilgi tabanı sorgulama gibi).
- Çıktı sonucu: Çağırana döndürülen yanıt veya eylem.
2. Skill'i Standart Tanımlama Adımları
1. Skill'in Adını ve Açıklamasını Belirleme
- Ad: Kısa, benzersiz, anlamlı (
search_web,send_emailgibi). - Açıklama: Skill'in işlevini tek cümleyle açıklayın, böylece Agent otomatik eşleme yapabilir.
2. Girdi Parametrelerini Tanımlama (Girdi Şeması)
JSON Şeması veya benzer bir format kullanarak her parametrenin türünü, zorunlu olup olmadığını, varsayılan değerini ve kısıtlamalarını belirtin.
{
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "Arama anahtar kelimesi",
"required": true
},
"max_results": {
"type": "integer",
"description": "Maksimum döndürülecek sonuç sayısı",
"default": 10
}
}
}
3. Yürütme Mantığını Yazma (Yürütme Mantığı)
- Deterministik mantık: Doğrudan fonksiyon, API veya veritabanı çağrısı.
- Deterministik olmayan mantık: LLM kullanarak yanıt oluşturma (prompt şablonu sağlanmalı).
- Hata yönetimi: Zaman aşımı, yeniden deneme, düşürme stratejileri tanımlayın.
4. Çıktı Formatını Tanımlama (Çıktı Şeması)
Yine JSON Şeması kullanarak döndürülen veri yapısını tanımlayın.
{
"type": "object",
"properties": {
"results": {
"type": "array",
"items": {
"type": "object",
"properties": {
"title": { "type": "string" },
"url": { "type": "string", "format": "uri" }
}
}
}
}
}
5. Ek Metaveri Ekleme (Metaveri)
- Sürüm numarası: Yinelemeli yönetim için.
- Yazar/sorumlu: Sorumluluk ataması.
- Bağımlılıklar: Gerekli harici hizmetler veya kütüphaneler.
- Kullanım kısıtlamaları: Frekans sınırlamaları, izin gereksinimleri gibi.
3. Örnek: Tam Bir Skill Tanımı
name: "weather_query"
description: "Şehir adına göre güncel hava durumunu sorgula"
version: "1.0.0"
author: "AI Ekibi"
input:
type: object
properties:
city:
type: string
description: "Şehir adı, örn. 'İstanbul'"
required: true
unit:
type: string
enum: ["celsius", "fahrenheit"]
default: "celsius"
execute:
- step: "Hava durumu API'sini çağır"
api: "https://api.weather.com/v1/current"
method: "GET"
params:
city: "{input.city}"
unit: "{input.unit}"
- step: "Sonucu biçimlendir"
format: "{city} için sıcaklık {temperature}°{unit}"
output:
type: object
properties:
temperature:
type: number
condition:
type: string
humidity:
type: number
4. En İyi Uygulamalar
- Tek sorumluluk: Her Skill yalnızca bir iş yapmalı, aşırı bağımlılıktan kaçının.
- Kendi kendine yeterli: Mümkün olduğunca harici global duruma bağımlı olmayın, girdi çıktıyı belirler.
- Test edilebilir: Birim testleri için mock veri veya sanal ortam sağlayın.
- Belgelenmiş: Her Skill için kullanım kılavuzu ve örnekler yazın.
Yukarıdaki yöntemlerle tanımlanan bir Skill, hem AI Agent tarafından dinamik olarak yönlendirilebilir hem de geliştiriciler tarafından doğrudan sisteme entegre edilebilir, böylece "bir kere yaz, her yerde kullan" yeniden kullanım etkisi elde edilir.
评论
暂无已展示的评论。
发表评论(匿名)