← 返回列表

AI sorozat interjú 7: Hogyan definiáljunk egy Skillt szabványosan

1. A Skill alapfogalmai

A Skill az Agent (intelligens ágens) vagy AI rendszer által beágyazott, végrehajtható képesség egységek halmaza. Általában tartalmazza:

  • Kiváltó feltétel: Mikor hívódik meg (pl. felhasználói utasítás, rendszeresemény).
  • Bemeneti paraméterek: A fogadandó adatok vagy kontextus.
  • Végrehajtási logika: A konkrét feldolgozási lépések (pl. API hívás, kód futtatása, tudásbázis lekérdezése).
  • Kimeneti eredmény: A hívónak visszaküldött válasz vagy művelet.

2. A Skill szabványos definiálásának lépései

1. A Skill nevének és leírásának meghatározása

  • Név: Rövid, egyedi, szemantikus (pl. search_web, send_email).
  • Leírás: Egy mondatban ismertesse a Skill funkcióját, hogy az Agent automatikusan illeszteni tudja.

2. Bemeneti paraméterek definiálása (Input Schema)

Használjon JSON Schema-t vagy hasonló formátumot, adja meg az egyes paraméterek típusát, kötelezőségét, alapértékét és korlátait.

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "description": "Keresőkulcsszó",
      "required": true
    },
    "max_results": {
      "type": "integer",
      "description": "Maximális visszaadott találatok száma",
      "default": 10
    }
  }
}

3. Végrehajtási logika megírása (Execution Logic)

  • Determinisztikus logika: Közvetlen függvény-, API- vagy adatbázishívás.
  • Nem determinisztikus logika: LLM használata válasz generálásához (prompt sablon megadásával).
  • Hibakezelés: Időtúllépés, újrapróbálkozás, visszalépési stratégia definiálása.

4. Kimeneti formátum definiálása (Output Schema)

Szintén JSON Schema segítségével írja le a visszaadott adatstruktúrát.

{
  "type": "object",
  "properties": {
    "results": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "title": { "type": "string" },
          "url": { "type": "string", "format": "uri" }
        }
      }
    }
  }
}

5. Kiegészítő metaadatok (Metadata)

  • Verziószám: Iterációs menedzsmenthez.
  • Szerző/karbantartó: Felelősség megjelölése.
  • Függőségek: Külső szolgáltatások vagy könyvtárak.
  • Használati korlátozások: Pl. gyakorisági korlát, jogosultsági követelmények.

3. Példa: Egy teljes Skill definíció

name: "weather_query"
description: "Aktuális időjárás lekérdezése városnév alapján"
version: "1.0.0"
author: "AI Csapat"

input:
  type: object
  properties:
    city:
      type: string
      description: "Városnév, pl. 'Budapest'"
      required: true
    unit:
      type: string
      enum: ["celsius", "fahrenheit"]
      default: "celsius"

execute:
  - step: "Időjárás API hívása"
    api: "https://api.weather.com/v1/current"
    method: "GET"
    params:
      city: "{input.city}"
      unit: "{input.unit}"
  - step: "Eredmény formázása"
    format: "A(z) {city} jelenlegi hőmérséklete {temperature}°{unit}"

output:
  type: object
  properties:
    temperature:
      type: number
    condition:
      type: string
    humidity:
      type: number

4. Legjobb gyakorlatok

  • Egyetlen felelősség: Minden Skill csak egy dolgot csináljon, kerülje a túlzott összefonódást.
  • Önálló: Lehetőleg ne függjön külső globális állapottól, a bemenet határozza meg a kimenetet.
  • Tesztelhető: Biztosítson mock adatokat vagy homokozó környezetet egységtesztekhez.
  • Dokumentált: Írjon használati útmutatót és példákat minden Skillhez.

A fenti módszerekkel definiált Skill-t az AI Agent dinamikusan ütemezheti, és a fejlesztők közvetlenül integrálhatják a rendszerbe, elérve az "egyszer írd, mindenhol használd" újrafelhasználási hatást.

评论

暂无已展示的评论。

发表评论(匿名)