AI серија интервјуа 7: Како правилно да се дефинира вештина
1. Основен концепт на вештина
Вештина е група на извршни способности инкапсулирани во Агент (интелигентен систем) или AI систем. Таа обично вклучува:
- Услов за активирање: кога се повикува (на пример, корисничка команда, системски настан).
- Влезни параметри: податоци или контекст што треба да се примат.
- Извршна логика: конкретни чекори за обработка (на пример, повикување API, извршување код, пребарување база на знаење).
- Излезен резултат: одговор или акција вратена на повикувачот.
2. Чекори за правилно дефинирање на вештина
1. Дефинирајте го името и описот на вештината
- Име: кратко, уникатно, семантичко (на пример,
search_web,send_email). - Опис: една реченица што ја објаснува функцијата на вештината, за да може Агентот автоматски да ја совпадне.
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. Пример: целосна дефиниција на вештина
name: "weather_query"
description: "Проверете го моменталното време според името на градот"
version: "1.0.0"
author: "AI Team"
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. Најдобри практики
- Единствена одговорност: секоја вештина прави само една работа, избегнувајте прекумерно спојување.
- Самодостатност: колку што е можно, не зависете од надворешна глобална состојба, влезот е излез.
- Тестирање: обезбедете mock податоци или sandbox околина за единечни тестови.
- Документација: напишете упатства за употреба и примери за секоја вештина.
Со вештините дефинирани на овој начин, тие можат да бидат динамички распоредени од AI Агент, а исто така директно интегрирани од развивачите во системот, постигнувајќи ефект на повторна употреба „напиши еднаш, користи насекаде“.
评论
暂无已展示的评论。
发表评论(匿名)