← 返回列表

AI série rozhovorů 7: Jak standardně definovat dovednost

1. Základní koncept dovednosti

Dovednost je sada spustitelných schopností zapouzdřených v agentovi nebo AI systému. Obvykle obsahuje:

  • Spouštěcí podmínky: kdy je volána (např. uživatelský příkaz, systémová událost).
  • Vstupní parametry: data nebo kontext, která je třeba přijmout.
  • Prováděcí logika: konkrétní kroky zpracování (např. volání API, spuštění kódu, dotazování znalostní báze).
  • Výstupní výsledky: odpověď nebo akce vrácená volajícímu.

2. Kroky standardní definice dovednosti

1. Určení názvu a popisu dovednosti

  • Název: krátký, jedinečný, sémantický (např. search_web, send_email).
  • Popis: jedna věta vysvětlující funkci dovednosti, usnadňující automatické přiřazení agentem.

2. Definice vstupních parametrů (Input Schema)

Použijte JSON Schema nebo podobný formát k určení typu každého parametru, povinnosti, výchozí hodnoty a omezení.

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "description": "Vyhledávací klíčové slovo",
      "required": true
    },
    "max_results": {
      "type": "integer",
      "description": "Maximální počet vrácených výsledků",
      "default": 10
    }
  }
}

3. Napsání prováděcí logiky (Execution Logic)

  • Deterministická logika: přímé volání funkce, API nebo databáze.
  • Nedeterministická logika: použití LLM k generování odpovědi (je třeba poskytnout šablonu promptu).
  • Zpracování chyb: definice časového limitu, opakování, strategie degradace.

4. Definice výstupního formátu (Output Schema)

Stejně použijte JSON Schema k popisu struktury vrácených dat.

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

5. Přidání metadat (Metadata)

  • Verze: usnadňuje iterativní správu.
  • Autor/správce: odpovědnost.
  • Závislosti: externí služby nebo knihovny.
  • Omezení použití: např. frekvenční limity, požadavky na oprávnění.

3. Příklad: Kompletní definice dovednosti

name: "weather_query"
description: "Zjištění aktuálního počasí podle názvu města"
version: "1.0.0"
author: "AI Tým"

input:
  type: object
  properties:
    city:
      type: string
      description: "Název města, např. 'Praha'"
      required: true
    unit:
      type: string
      enum: ["celsius", "fahrenheit"]
      default: "celsius"

execute:
  - step: "Volání API počasí"
    api: "https://api.weather.com/v1/current"
    method: "GET"
    params:
      city: "{input.city}"
      unit: "{input.unit}"
  - step: "Formátování výsledku"
    format: "Aktuální teplota v {city} je {temperature}°{unit}"

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

4. Nejlepší praktiky

  • Jednotná odpovědnost: každá dovednost dělá jen jednu věc, vyhněte se nadměrnému propojení.
  • Soběstačnost: pokud možno nezávislost na externím globálním stavu, vstup je výstup.
  • Testovatelnost: poskytněte mock data nebo sandboxové prostředí pro unit testy.
  • Dokumentace: pro každou dovednost napište návod k použití a příklady.

Pomocí výše uvedených metod definovaná dovednost může být dynamicky plánována AI agentem i přímo integrována vývojáři do systému, čímž se dosáhne efektu "napiš jednou, použij všude".

评论

暂无已展示的评论。

发表评论(匿名)