← 返回列表

AI séria rozhovorov 7: Ako štandardne definovať Skill

1. Základný koncept Skill

Skill je súbor vykonateľných schopností zapuzdrených v Agente alebo AI systéme. Zvyčajne obsahuje:

  • Podmienka spustenia: Kedy sa volá (napr. príkaz používateľa, systémová udalosť).
  • Vstupné parametre: Dáta alebo kontext, ktoré je potrebné prijať.
  • Vykonávacia logika: Konkrétne kroky spracovania (napr. volanie API, spustenie kódu, dotazovanie sa znalostnej bázy).
  • Výstupný výsledok: Odpoveď alebo akcia vrátená volajúcemu.

2. Kroky na štandardnú definíciu Skill

1. Určenie názvu a popisu Skill

  • Názov: Krátky, jedinečný, sémantický (napr. search_web, send_email).
  • Popis: Jedna veta vysvetľujúca funkciu Skill, aby ho Agent mohol automaticky priradiť.

2. Definovanie vstupných parametrov (Input Schema)

Použite JSON Schema alebo podobný formát na určenie typu každého parametra, povinnosti, predvolenej hodnoty a obmedzení.

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "description": "Hľadaný výraz",
      "required": true
    },
    "max_results": {
      "type": "integer",
      "description": "Maximálny počet výsledkov",
      "default": 10
    }
  }
}

3. Napísanie vykonávacej logiky (Execution Logic)

  • Deterministická logika: Priame volanie funkcie, API alebo databázy.
  • Nedeterministická logika: Použitie LLM na generovanie odpovede (je potrebné poskytnúť šablónu promptu).
  • Spracovanie chýb: Definovanie timeoutu, opakovaní, stratégií degradácie.

4. Definovanie výstupného formátu (Output Schema)

Rovnako použite JSON Schema na popis štruktúry vrátených dát.

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

5. Pridanie metadát (Metadata)

  • Verzia: Pre jednoduchú správu iterácií.
  • Autor/správca: Zodpovednosť.
  • Závislosti: Potrebné externé služby alebo knižnice.
  • Obmedzenia použitia: Napr. frekvenčné limity, požiadavky na oprávnenia.

3. Príklad: Kompletná definícia Skill

name: "weather_query"
description: "Získa aktuálne počasie podľa názvu mesta"
version: "1.0.0"
author: "AI Team"

input:
  type: object
  properties:
    city:
      type: string
      description: "Názov mesta, napr. 'Bratislava'"
      required: true
    unit:
      type: string
      enum: ["celsius", "fahrenheit"]
      default: "celsius"

execute:
  - step: "Zavolať API počasia"
    api: "https://api.weather.com/v1/current"
    method: "GET"
    params:
      city: "{input.city}"
      unit: "{input.unit}"
  - step: "Formátovať výsledok"
    format: "Aktuálna teplota v {city} je {temperature}°{unit}"

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

4. Najlepšie postupy

  • Jednotná zodpovednosť: Každý Skill robí len jednu vec, vyhnite sa nadmernému previazaniu.
  • Sebaobsiahlosť: Pokiaľ možno nezávisí od externého globálneho stavu, vstup je výstup.
  • Testovateľnosť: Poskytnite mock dáta alebo sandbox prostredie na unit testovanie.
  • Dokumentácia: Pre každý Skill napíšte návod na použitie a príklady.

Pomocou vyššie uvedených metód definovaný Skill môže byť dynamicky riadený AI Agentom a zároveň priamo integrovaný vývojármi do systému, čím sa dosiahne efekt „napíš raz, používaj všade“.

评论

暂无已展示的评论。

发表评论(匿名)