Harness инженеринг: какво представлява и как работи
Достъпно ръководство за това какво е harness за ИИ и как harness инженерингът определя какво могат да правят ИИ агентите.

Какво означава инженеринг на harness
Инженерингът на harness е работата по изграждане на harness на даден AI инструмент, т.е. на всяка част от инструмента освен AI модела.
Моделът е AI системата, обучена върху големи обеми текст, за да може да чете и пише на естествен език. Примери за AI модели са GPT на OpenAI, Claude на Anthropic и Gemini на Google.
Сам по себе си моделът може само да приема текст (а понякога изображения или аудио) и да връща текст в отговор. Той не може да помни минали разговори, да търси актуална информация или да изпълнява код. Затова се нуждае от harness, който управлява каква информация получава моделът, кои приложения може да използва, какво му е позволено да прави и как се проверява работата му.
Дори обикновеният чат асистент се нуждае от harness. Моделът забравя всяка размяна на реплики веднага щом отговори, затова harness съхранява запис на разговора. Ако някой попита за Париж и после добави „какво е населението му?“, harness изпраща двата въпроса на модела заедно. Така моделът разбира, че „му“ се отнася за Париж.
Инженерингът на harness е една от причините два инструмента, изградени върху един и същ модел, да се представят толкова различно. Например в един независим тест изследователите запазиха същия модел (GPT5) и промениха само harness, а резултатът на модела в тест по програмиране се промени с до 11%.
Разработчиците на AI модели като Anthropic и OpenAI изграждат harness за собствените си AI продукти, например Claude Code и Codex. А компаниите, които създават AI продукти, проектират harness за избраните от тях базови модели. Хората, които използват AI инструменти, също оформят част от harness. Много инструменти им позволяват да добавят постоянни инструкции, да свързват приложения и да избират кои действия изискват тяхното одобрение, преди инструментът да продължи.
Инженеринг на harness за AI агенти
Всеки AI инструмент има harness, но инженерингът на harness става особено важен при работа с AI агенти. Агентите сами изпълняват многоетапни задачи, например проучване на конкуренти и въвеждане на резултатите в електронна таблица, а harness управлява всяка стъпка. Затова, ако harness допусне грешка, например извлече миналогодишните цени, тя ще се отрази и на всички следващи стъпки.
Повечето harness за агенти имат шест основни части:
1. Цикълът на агента
Цикълът на агента е код в harness, който придвижва задачата напред стъпка по стъпка.
AI моделът решава коя е следващата стъпка, необходима за изпълнението на задачата, и написва извикване на инструмент: кратка заявка, която посочва инструмент в harness, например уеб търсене, и какво трябва да направи той.
Harness разпознава заявката, изпълнява търсенето и добавя резултатите към информацията, която моделът вижда. Моделът ги прочита и решава какво да направи след това.
2. Управление на контекста
Моделът придобива общи знания по време на обучението, но тези знания стигат само до датата, на която обучението е приключило. Те не включват нищо специфично за конкретната задача, като файловете на дадена компания, днешните новини или казаното по-рано в разговора.
За всичко това моделът разчита на своя контекстен прозорец: текста, който harness му подава преди всеки отговор, като инструкциите, заявката, разговора дотук и резултатите от търсенето.
Прозорецът побира само фиксирано количество текст. И дори преди да се запълни, моделите понякога пропускат информация, скрита в средата на дълги входни данни.
Затова harness поема управлението на контекста и подбира само информацията, нужна за всяка стъпка. Например, ако задачата е да се сравнят цените на пет конкурента, harness може да включи страницата с цени на всяка компания, а не целия ѝ уебсайт. При дълги задачи harness може също да замени подробния запис на предишните стъпки с кратко обобщение, така че моделът да следи какво е свършил, без тази история да запълва прозореца.
3. Инструменти
Инструментите са код, който изпълнява действията, поискани от модела. Всеки инструмент отговаря за един вид действие, например търсене в мрежата, отваряне и четене на уеб страница, изпълнение на код или редактиране на файл. Когато моделът напише извикване на инструмент, harness го предава на правилния инструмент и връща резултата.
Много harness включват и конектори – инструменти, които свързват агента с конкретно приложение, например имейл, календар или споделен диск, чрез достъп, предоставен от човек. С конектор за календар например агентът може да провери дали някой е свободен, преди да предложи час за среща.
4. Памет
Паметта е съхранена информация, която се пренася от една сесия в следващата. По време на сесията harness записва кратки бележки, например предпочитанията на даден човек или докъде е стигнал проектът. В началото на следващата сесия harness добавя тези бележки в контекстния прозорец, така че моделът да ги прочете, преди да прочете новата заявка. Така например агентът може да продължи седмичния отчет оттам, докъдето е стигнал, вместо да започва отначало.
5. Разрешения
Разрешенията са правила за това до какво агентът има достъп и какво може да прави. Правилата за достъп определят кои файлове, приложения или уебсайтове може да отваря. Правилата за одобрение определят кои действия трябва да изчакат одобрението на човек, например изпращане на съобщение или извършване на покупка.
Компанията, която създава агента, задава част от тези правила в кода на harness. След това администраторите на дадена организация могат да добавят свои, а отделните потребители могат да избират например кои акаунти да свържат.
6. Проверка
Проверката е код, който проверява работата на агента, преди тя да стигне до човек. Тя използва два вида проверки:
- Фиксирани правила – конкретни тестове, които всеки път дават един и същ резултат (успех или неуспех), например потвърждаване, че всяка цифра в отчета се среща в документ, който агентът действително е прочел.
- Преглед от друг AI модел, който прочита работата и я оценява. Той може да улови проблеми, които трудно се превръщат в правило, например обобщение, в което липсва важен момент.
Нито една проверка не улавя всичко, затова harness обикновено комбинират двата вида. Когато проверка открие проблем, harness добавя описанието му в контекстния прозорец на модела и връща задачата обратно през цикъла на агента. Моделът отстранява проблема и опитва отново, така че много грешки се коригират, преди потребителят да види резултата.
Примери за инженеринг на harness
Подготовка за среща с клиент
Задача: Акаунт мениджър възлага на агент да подготви брифинг за утрешната среща с клиент, включващ отворените въпроси и проект на дневен ред.
Какво прави harness:
- Чрез имейл конектор агентът търси в пощата на мениджъра съобщения, разменени с клиента.
- Разрешенията му позволяват да чете имейли, но не и да ги изпраща.
- Управлението на контекста подава на модела само съобщенията с този клиент от последните три месеца, а не цялата поща.
- Цикълът на агента изпълнява няколко кръга търсене и четене, а моделът групира откритото в отворени въпроси.
- След това проверката потвърждава, че всеки въпрос в брифинга води до реален имейл.
Възможен резултат: Мениджърът получава брифинг от една страница, в който всяка точка може да бъде проследена до имейла, от който произлиза.
Актуализиране на месечен отчет за продажбите
Задача: Ръководител на операциите възлага на агент да актуализира месечния отчет за продажбите с данните за този месец.
Какво прави harness:
- Паметта зарежда бележки от сесията през миналия месец, включително формата на отчета и молбата на ръководителя цифрите да се закръглят до хиляди.
- Инструмент за файлове отваря таблицата с продажбите в споделения диск на екипа.
- Разрешенията позволяват на агента да редактира черновата на отчета, но не и изходната таблица, така че оригиналните данни да не могат да бъдат променени по погрешка.
- Проверката потвърждава, че сумите в отчета съвпадат с таблицата.
Възможен резултат: Отчетът пристига в същия формат като миналия месец, без потребителят да трябва да го обяснява отново.
Сортиране на споделена пощенска кутия
Задача: Екип за поддръжка възлага на агент да сортира сутрешните входящи заявки по тема и да подготви чернови на отговори на най-честите от тях.
Какво прави harness:
- Цикълът на агента обработва пощенската кутия съобщение по съобщение.
- За всяко от тях моделът избира етикет за тема, а harness го поставя чрез имейл конектора.
- В началото на задачата harness добавя одобрените шаблони за отговори на екипа в контекстния прозорец като ориентир, така че моделът да базира всяка чернова на шаблон.
- Правило за одобрение задържа всеки отговор като чернова, докато някой от екипа не го прегледа и изпрати.
Възможен резултат: Екипът започва деня със сортирани заявки и отговори, които чакат преглед.
Отстраняване на грешка в уебсайт
Задача: Разработчик възлага на агент за програмиране да отстрани грешка, заради която бутонът за плащане не работи.
Какво прави harness:
- Агентът работи в sandbox – изолирано копие на кода, в което промените му не могат да засегнат работещия уебсайт.
- Инструмент за код позволява на модела да чете и редактира файлове.
- След всяка промяна проверката стартира автоматизираните тестове на проекта.
- Всички неуспешни тестове се връщат на модела като нова информация.
Възможен резултат: Агентът продължава да коригира поправката си, докато тестовете не минат успешно. След това разработчикът преглежда промяната, преди тя да бъде публикувана.
Инженеринг на harness срещу инженеринг на промптове срещу инженеринг на контекста
Инженерингът на промптове е работата по създаване и оптимизиране на отделна заявка. Инженерингът на контекста е работата по управление на всичко, което моделът вижда. Инженерингът на harness е процесът на проектиране и усъвършенстване на цялата система, в която работи моделът.
Термин | Кой обикновено го прави | Пример от задача за проучване на конкуренти |
Инженеринг на промптове | Всеки, който пише заявка | Искане за „един ред за всеки конкурент, една колона за всяко ценово ниво“ |
Инженеринг на контекста | Хората, които изграждат harness, както и потребителите, които прикачват файлове или шаблони | Подаване към модела на страницата с цени на всеки конкурент и на шаблона за таблица на екипа |
Инженеринг на harness | Компаниите, които създават AI продукти, както и екипите и потребителите, които избират настройки и предпочитания и качват информация | Решаване кои инструменти може да използва агентът, кои действия изискват одобрение и как се проверява работата му |
Как потребителите могат да влияят на harness на AI инструментите
По-голямата част от harness на агента идва от компанията, която създава агента, но много AI продукти позволяват на потребителите да променят част от него чрез настройки като персонализирани инструкции, свързани приложения и одобрения.
Потребителите могат да оформят harness на агента и да подобрят резултатите му по четири начина:
1. Постоянни инструкции
Постоянните инструкции са бележки, които човек пише веднъж, за да може harness да ги добавя в контекстния прозорец в началото на всяка задача. Струва си да се зададат за всичко, което човек иначе би повтарял в заявка след заявка: кой е и с какво се занимава, как предпочита да бъде написана работата или правилата за повтаряща се задача, като месечния отчет за даден клиент.
Много AI продукти предлагат постоянни инструкции на две нива. Инструкциите за целия акаунт са подходящи за неща, валидни за цялата работа, например предпочитания за правопис. Инструкциите за проект са подходящи за отделен клиент или работен процес, така че указанията за единия да не се пренасят в другия.
Постоянните инструкции работят по един и същ начин в чат асистентите и в агентите, но агентите зависят повече от тях. В чат човек може да коригира AI след всеки отговор. Агентът може да предприеме много стъпки, преди някой да види работата му, затова инструкциите, дадени предварително, са един от малкото начини да бъде насочван по пътя.
Как да пишете ефективни постоянни инструкции
- Започнете с кратка инструкция, например: „Аз съм маркетинг мениджър в софтуерна компания. Пиши на ясен и прост английски, дръж обобщенията под 200 думи и използвай американски правопис.“
- Допълвайте ги, когато AI сгреши. Ако AI продължава да закръгля цифри, които екипът иска да са точни, добавете ред, който уточнява това.
- Правете инструкциите конкретни: „Давай точни цифри, никога закръглени“ е по-добре от „Бъди точен“.
- Поддържайте списъка кратък и премахвайте редовете, щом престанат да са полезни, тъй като всеки ред заема място в контекстния прозорец.
2. Свързани приложения
Свързаните приложения свързват AI продукта с инструментите, които човек вече използва, например имейл, календар или споделен диск. След като дадено приложение бъде свързано, AI може да работи със собствената информация на човека, а не само с това, което е поставено в чата.
Струва си да настроите връзки, когато дадена задача зависи от информация, която се намира в тези приложения, например подготовка на брифинг за среща от имейл кореспонденция или обобщаване на документи в споделен диск.
Как да свързвате приложения безопасно
- Свързвайте само приложенията, които са нужни за задачата, тъй като всяка връзка добавя още една възможност за грешки.
- Избирайте достъп само за четене, когато е наличен. Например агент, който подготвя брифинги за срещи, трябва да чете имейли, а не да ги изпраща.
- Задавайте връзките по проект, когато продуктът го позволява. В Perplexity например потребителите могат да избират кои конектори да използва всеки проект.
- Не забравяйте да прекъснете връзката с приложенията, които вече не използвате.
3. Настройки за одобрение
Настройките за одобрение определят кои действия трябва да изчакат одобрението на човек, преди AI да продължи. Някои одобрения са вградени в продукта, а някои продукти позволяват на потребителите да избират кои други действия изискват одобрение.
Как да зададете правила за одобрение
- Изисквайте одобрение за действия, които не могат да бъдат отменени, като изпращане на съобщение, извършване на покупка или изтриване на файл.
- Списъкът с одобрения трябва да е кратък. Ако агентът иска съгласие за всяка малка стъпка, хората започват да одобряват, без да четат.
4. Стандарти и проверки
Повечето ИИ продукти имат някои вградени стандарти. Perplexity например посочва източници към отговорите си, така че всяко твърдение да може да бъде проверено. Стандартите, зададени от потребителя, добавят това, което продуктът не може да знае сам, например предпочитания от екипа формат на отчетите.
Как да зададете стандарти за работата на ИИ
- Предоставете шаблон за повтарящите се задачи, така че ИИ да има готова структура, която да попълни.
- Споделете пример за предишна работа, която е харесала на екипа, за да може ИИ да възпроизведе тона и нивото на детайлност.
- Изисквайте връзка към източника до всяко число.
- Преглеждайте внимателно първите резултати и превръщайте всеки повтарящ се пропуск в нова постоянна инструкция.
Как Perplexity подхожда към harness за агенти
Perplexity Computer работи върху harness, независим от модела, който обединява над 20 усъвършенствани модела в една система. Той разделя всяка задача на подзадачи, възлага ги на подагенти (отделни агенти, всеки от които поема една част) и насочва всяка част от работата към подходящ за нея модел.
Разгледайте как да настроите инструкции, файлове и конектори в ръководството за проекти в Perplexity.
Често задавани въпроси
Какво е harness инженер?
Harness инженерът проектира и поддържа системата, която позволява на ИИ модела да върши надеждна работа. Това може да означава добавяне на нов инструмент, който агентът да използва, откриване на причината агентът да повтаря една и съща грешка или затягане на проверките, които той изпълнява, преди да завърши задача. Засега това не е стандартна длъжност, но положението може да се промени. Работата обикновено се върши от софтуерни инженери в ИИ компании или в екипи, които създават агенти. В промишлеността същото наименование се отнася до човек, който проектира кабелни снопове, т.е. събраните заедно кабели в автомобилите и машините.
Какво е harness за агенти?
Под harness за агенти обикновено се разбира всичко в един ИИ агент освен самия модел. Това включва кода, който изпълнява цикъла на агента, управлява контекста, извършва извикванията на инструменти, съхранява паметта, прилага разрешенията и проверява работата на агента, преди тя да стигне до човек.
Всеки ИИ инструмент има ли harness?
Да. Дори обикновен чат асистент разчита на harness, за да следи разговора, тъй като моделът сам по себе си не помни предишните съобщения.
Разработчиците могат да използват модел и като му изпращат заявки от собствения си софтуер чрез API (връзка, която позволява на една програма да изпраща заявки до друга). В този случай собственият код на разработчика върши работата на harness.
Ще направят ли по-добрите модели harness ненужен?
По-добрите модели може да се нуждаят от по-малко насоки стъпка по стъпка, така че част от това, което harness върши днес, може да намалее. Но сам по себе си моделът само превръща текст в текст. Той няма нито връзка с интернет, нито достъп до други приложения. Достъпът до файлове, извършването на действия и прилагането на правила за одобрение се случват в софтуера около модела, така че тази работа вероятно ще остане за harness, колкото и способни да станат моделите.