AI շարքի հարցազրույց 7. Ինչպես կանոնակարգել Skill-ը
1. Skill-ի հիմնական հասկացությունը
Skill-ը Agent-ի (ինտելեկտուալ գործակալ) կամ AI համակարգի մեջ ներառված կատարելի գործողությունների միավոր է: Այն սովորաբար ներառում է.
- Գործարկման պայման. երբ է այն կանչվում (օրինակ՝ օգտատիրոջ հրահանգ, համակարգային իրադարձություն):
- Մուտքային պարամետրեր. տվյալներ կամ համատեքստ, որոնք պետք է ստանա:
- Կատարման տրամաբանություն. մշակման կոնկրետ քայլեր (օրինակ՝ API-ի կանչ, կոդի գործարկում, գիտելիքների բազայի հարցում):
- Արդյունք. պատասխան կամ գործողություն, որը վերադարձվում է կանչողին:
2. Skill-ի կանոնակարգված սահմանման քայլեր
1. Skill-ի անվան և նկարագրության որոշում
- Անուն. կարճ, եզակի, իմաստալից (օրինակ՝
search_web,send_email): - Նկարագրություն. մեկ նախադասությամբ նկարագրել Skill-ի գործառույթը, որպեսզի Agent-ը կարողանա ավտոմատ համապատասխանեցնել:
2. Մուտքային սխեմայի (Input Schema) սահմանում
Օգտագործել JSON Schema կամ նմանատիպ ձևաչափ, հստակեցնել յուրաքանչյուր պարամետրի տեսակը, պարտադիր լինելը, լռելյայն արժեքը և սահմանափակումները:
{
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "Որոնման բանալի բառ",
"required": true
},
"max_results": {
"type": "integer",
"description": "Առավելագույն վերադարձվող արդյունքների քանակ",
"default": 10
}
}
}
3. Կատարման տրամաբանության (Execution Logic) գրում
- Դետերմինիստական տրամաբանություն. ուղղակիորեն կանչել ֆունկցիա, API կամ տվյալների բազա:
- Ոչ դետերմինիստական տրամաբանություն. օգտագործել LLM-ը պատասխան ստեղծելու համար (անհրաժեշտ է prompt ձևանմուշ):
- Սխալների մշակում. սահմանել ժամկետանց, կրկնափորձ, իջեցման ռազմավարություններ:
4. Ելքային ձևաչափի (Output Schema) սահմանում
Նույնպես օգտագործել JSON Schema՝ վերադարձվող տվյալների կառուցվածքը նկարագրելու համար:
{
"type": "object",
"properties": {
"results": {
"type": "array",
"items": {
"type": "object",
"properties": {
"title": { "type": "string" },
"url": { "type": "string", "format": "uri" }
}
}
}
}
}
5. Լրացուցիչ մետատվյալներ (Metadata)
- Տարբերակի համար. հեշտացնում է կառավարումը:
- Հեղինակ/պահպանող. պատասխանատվության սահմանում:
- Կախվածություններ. արտաքին ծառայություններ կամ գրադարաններ:
- Օգտագործման սահմանափակումներ. օրինակ՝ հաճախականության սահմանափակում, թույլտվության պահանջներ:
3. Օրինակ՝ ամբողջական Skill-ի սահմանում
name: "weather_query"
description: "Հարցում է ընթացիկ եղանակը քաղաքի անվան հիման վրա"
version: "1.0.0"
author: "AI Թիմ"
input:
type: object
properties:
city:
type: string
description: "Քաղաքի անուն, օրինակ՝ 'Երևան'"
required: true
unit:
type: string
enum: ["celsius", "fahrenheit"]
default: "celsius"
execute:
- step: "Կանչել եղանակի API"
api: "https://api.weather.com/v1/current"
method: "GET"
params:
city: "{input.city}"
unit: "{input.unit}"
- step: "Ձևաչափել արդյունքը"
format: "{city}-ում ընթացիկ ջերմաստիճանը {temperature}°{unit} է"
output:
type: object
properties:
temperature:
type: number
condition:
type: string
humidity:
type: number
4. Լավագույն փորձ
- Միակ պատասխանատվություն. յուրաքանչյուր Skill կատարում է միայն մեկ գործողություն, խուսափել չափազանց կապակցումից:
- Ինքնաբավություն. հնարավորինս չկախվել արտաքին գլոբալ վիճակից, մուտքը հավասար է ելքին:
- Թեստավորելիություն. տրամադրել mock տվյալներ կամ sandbox միջավայր միավորային թեստավորման համար:
- Փաստաթղթավորում. յուրաքանչյուր Skill-ի համար գրել օգտագործման հրահանգներ և օրինակներ:
Վերոնշյալ մեթոդներով սահմանված Skill-ը կարող է և՛ դինամիկ կերպով կառավարվել AI Agent-ի կողմից, և՛ ուղղակիորեն ինտեգրվել մշակողների կողմից համակարգում՝ ապահովելով «մեկ անգամ գրել, ամենուր օգտագործել» վերաօգտագործման էֆեկտ:
评论
暂无已展示的评论。
发表评论(匿名)