Главна навигација

Учење на системски промпти: нова парадигма за системите за ВИ

Учењето на системски промпти им помага на тимовите да го подобрат однесувањето на ВИ без повторно обучување на моделите и полесно да ги разберат ограничувањата.

Дали ви се случило одреден промпт да функционира добро, а потоа одеднаш да престане да функционира?

Дали некогаш сте се заглавиле во циклус на постојано поправање на системскиот промпт во обид да ги подобрите резултатите, но ништо не функционирало?

Учењето на системски промпти можеби е токму она што ви треба.

Учењето на системски промпти (SPL) е нова област на интерес во заедницата за ВИ, која во мај широко ја популаризираше Андреј Карпати на X.

Учењето на системски промпти ги надминува ограничувањата на нефлексибилните и кревки системи за ВИ што се потпираат на статични системски промпти или сложени поставки за фино приспособување. Тоа нуди уште еден начин за поддршка на континуираното учење во системите за ВИ.

Пред да навлеземе во темата, накратко да ги разгледаме основите на задавањето промпти.

Кога развиваме агент или приспособен модел, најпрво мора да осмислиме две клучни компоненти:

  1. Системски промпт

  2. Кориснички промпт

Системските промпти ги утврдуваат основните правила за однесувањето на моделот. Кога се пишуваат за приспособени решенија за ВИ, тие често почнуваат вака:

“You are an intelligent assistant. Your role is to perform <insert task here>.

You must not do (A), (B), or (C).”

За разлика од нив, корисничките промпти обично го содржат барањето на корисникот и други релевантни информации, како неговата временска зона и претпочитања. Еден кориснички промпт би можел да изгледа вака:

Слика од екранот со вовед.

I’m in the capital city of Portugal. Can you suggest some things I can do tonight?

Протекувањето системски промпти стана вообичаено по објавувањето нови модели од големите лаборатории за ВИ, бидејќи корисниците ги пробиваат чет-ботовите за да ги откријат нивните основни инструкции. Популарен репозиториум на GitHub сега собира многу од овие системски промпти на едно место. Тие ја откриваат „тајната состојка“ што лабораториите за ВИ ја развивале со текот на времето за да поттикнат соодветно однесување на моделите. На пример, неодамна протечениот системски промпт на GPT-5 (откриен во ChatGPT) содржи околу 6.000 зборови, што покажува колку знаење и насоки мора да се вградат за да се обликува однесувањето на системот.

Овие сеопфатни системски промпти обично опфаќаат неколку клучни области, како што се:

  • Инструкции за пребарување

  • Дефиниции на алатки

  • Кориснички претпочитања

  • Инструкции за цитирање

  • Брзи поправки за познати проблеми

Во практика, програмерите на приспособени системи за ВИ рачно и постепено ги поправаат системските промпти додека ги тестираат и усовршуваат апликациите, првенствено користејќи евалуации за да го насочат процесот на подобрување.

Други начини за насочување на однесувањето на моделот се:

  • Дизајнирање на промпти, вклучително и генерирање дополнето со пребарување (RAG), кое ја контролира содржината што му се доставува на моделот

  • Фино приспособување (директно менување на основните тежини на моделот)

Што ако постои уште еден начин да се влијае врз однесувањето на моделот? Замислете систем што динамично го учи и усовршува сопствениот системски промпт користејќи претходно создадени размислувања, планови и стратегии. За да ги оцени своите резултати, тој би можел да ги користи и повратните информации од корисниците и евалуациите со голем јазичен модел (LLM) како оценувач.

Што е учење на системски промпти?

Размислете за постојан деловен предизвик што сакате да го автоматизирате со помош на агентски систем. За ефикасни решенија се потребни способности за расудување што ја надминуваат основната автоматизација на работните процеси. Во такви случаи, неопходно е во системот за ВИ да се вклучи компонента за создавање планови. Тоа му овозможува на системот да работи со повеќе агенти на различни начини, зависно од задачата. Поединечните чекори може да содржат инструкции за пристап до други агенти за извршување подзадачи или за користење алатки.

Слика од екранот што објаснува што е учење на системски промпти.

Забелешка: Алатка за агент е секоја надворешна функција, API или ресурс што агентот за ВИ може да го повика за да излезе од рамките на текстот и да преземе реални дејства.

Може да го „засеете“ системскиот промпт на моделот со план што ги следи логичните чекори што би ги презел човек, иако на големите јазични модели (LLM) обично им требаат поконкретни насоки за користењето алатки, форматирањето на резултатите и сродните барања. Понекогаш оптималната стратегија може да биде нејасна или можеби решавате проблем што не бил повторно разгледан затоа што претходно се сметал за решен. Токму тука помага учењето на системски промпти (SPL).

SPL постепено го подобрува системскиот промпт со вградување претходно создадени стратегии. Како што се појавуваат нови проблеми, системот постепено собира знаење и станува поотпорен. Замислете го како создавање прирачник за решавање проблеми во вашата област.

SPL постепено ги вградува сознанијата од корисничките повратни информации во системскиот промпт. Како што созрева системот, може да откриете повторливи проблеми што можат да се сведат на поопшти принципи од повисоко ниво.

Водич чекор по чекор

Да погледнеме подетално како функционира процесот, чекор по чекор:

  1. Почнете со корисничкото барање, со кое од системот се бара да изврши конкретна задача.

    1. Ако системот решава само еден проблем, може да примените „алчен“ пристап и да ги изберете стратегиите со највисоки оцени од претходните извршувања. Или, може да поттикнете истражување со земање примероци од распределба што им дава предност на високо оценетите стратегии, но повремено вклучува и пониско оценети. Ова е особено корисно кога штотуку почнувате да собирате стратегии.

    2. За системи наменети за различни групи проблеми, размислете за додавање слој за класификација или за користење векторски претставувања и косинусна сличност — истите техники што обично се користат во RAG — за да ги најдете релевантните пристапи. Ова ви помага да изберете стратегии соодветни за конкретниот проблем — на пример, стратегии приспособени за програмерски задачи.

Забелешка: Векторските претставувања што се користат со косинусна сличност ни овозможуваат да измериме колку тесно се поврзани две информации, па полесно можеме да усогласиме документи, барања или идеи дури и кога се формулирани различно.

Пример за почетна, поедноставена збирка стратегии за решавање програмерски проблеми.

Забелешка: Прикажаните „почетни стратегии“ служат само како пример. Во реални програмерски сценарија, дополнително би ги усовршиле. За специфични деловни проблеми би требало со текот на времето да се собираат дополнителни сознанија.

Generation_id (обратен редослед)

Тема

Оцена

Strategy_text

Објаснување

4

програмирање

1

Разберете ги проблемот, ограничувањата и граничните случаи. Осмислете алгоритам со соодветни податочни структури. Потврдете го планот со примери и инваријанти. Напишете чист и читлив код. Усовршете го со рефакторирање, оптимизација и конечно форматирање. Користење алатки: Кога користите алатка, накратко објаснете зошто била потребна.

Ги вградува и спојува најсилните елементи од трите стратегии подолу.

3

програмирање

1

Разберете ги проблемот, ограничувањата и граничните случаи. Осмислете алгоритам со соодветни податочни структури. Потврдете го планот со примери и инваријанти. Напишете чист и читлив код. Усовршете го со рефакторирање, оптимизација и конечно форматирање.

Посеопфатна стратегија, но не содржи насоки за користење алатки.

2

програмирање

-1

Разберете ги проблемот, ограничувањата и граничните случаи. Осмислете алгоритам со соодветните податоци. Напишете чист и читлив код. Користење алатки: кога пристапувате до алатки, накратко објаснете зошто сте ја употребиле таа алатка.

Подобра стратегија што го споменува користењето алатки, но сè уште може да се подобри.

1

програмирање

-1

Површно разгледајте го проблемот. Решете го проблемот. Создајте минимални тестови. Поднесете што и да може да се изврши.

Споменува тестови, но во целина е слаба стратегија.

3. Откако ќе земете примерок од N, вградете ги во системскиот промпт. Така, создавањето планови се заснова врз претходни стручни повратни информации, наместо моделот да создава планови со минимални насоки. Поттикнете го моделот да „размислува неконвенционално“ и да додава чекори кога е потребно, наместо само дословно да ги копира примерните стратегии.

Слика од екранот со водич чекор по чекор.

4. Со динамично создадениот системски промпт, создајте нова стратегија за да одговорите на барањето на корисникот. Овој процес треба да создаде дополнителни задачи што ќе го подобрат конечниот резултат. Целта е креативност: спојте ги најсилните елементи од претходните стратегии, обединете ги чекорите што се преклопуваат и додајте корисни нови чекори каде што е потребно.

Забелешка: Запомнете дека температурата е параметар што може да се приспособи за да се добијат поразновидни и помалку детерминистички резултати, што е корисно кога е потребна креативност. Кога температурата е поголема од нула, секој создаден план може да се разликува.

5. Откако ќе го добиете резултатот од моделот, оценете го според конкретни критериуми што дефинираат добро решение за вашиот проблем, користејќи човечки оценувач или голем јазичен модел (LLM) како оценувач. За претходно споменатиот пример со активности во Португалија, критериумите за оценување би можеле да бидат:

  • Концизност (одговор ограничен на една реченица)

  • Релевантност на предложената активност

  • Точност на локацијата

6. Врз основа на оваа евалуација, употребете друг модел за да ја усовршите стратегијата. Во изборен циклус за повратни информации може да се вклучи човечки придонес и да се поддржат заеднички подобрувања. Зачувајте ја усовршената стратегија во базата на податоци со соодветни метаподатоци за да ги следите верзиите и промените.

Слика од екранот со водич чекор по чекор.

Тогаш, зошто да се вложува сиот овој труд? Би можеле рачно да ги прегледувате резултатите и соодветно да го приспособувате системскиот промпт. Сепак, моќните модели за расудување можат да ги усовршуваат стратегиите користејќи ги и контекстот на резултатот и човечките повратни информации. Иако луѓето лесно ги забележуваат недостатоците кај едноставните пристапи, нивното откривање станува тешко и заморно кај сложени системи што решаваат поширок спектар проблеми.

На големите јазични модели (LLM) често им требаат детални инструкции и дополнителни чекори за да го соберат контекстуалното знаење што луѓето природно го внесуваат во решавањето на проблемот. Бројот на потребни задачи може брзо да расте додека системот се проширува за да опфати поширок спектар проблеми. На пример, луѓето што решаваат програмерски проблеми може интуитивно да ја разберат околната кодна база, додека голем јазичен модел (LLM) можеби прво ќе треба да „прочита“ повеќе датотеки.

Влијанието од примената на SPL во вашите решенија за ВИ

Откривање нови начини за решавање проблеми

  • Кога помага: Замислете дека раководите со тим за корисничка поддршка, а агент за ВИ ги распределува барањата. Со текот на времето, SPL може да открие метод за категоризација што вашиот тим не го разгледал, со што ќе се намали стапката на ескалации.

  • Кога не помага: Ако барањата за усогласеност или прописите веќе ги дефинираат работните процеси, како кај финансиското известување, SPL може да понуди мала вредност бидејќи креативноста станува ризик наместо предност.

Унапредување на соработката меѓу луѓето и ВИ

  • Кога помага: На позиции што бараат интензивно истражување, како пазарно разузнавање или стратегија за производи, можете да соработувате со ВИ така што ќе ги усовршувате нејзините планови, ќе ги збогатувате резултатите и ќе ги вградувате подобрувањата за идна употреба. Секоја интеракција ја зголемува ефикасноста на системот.

  • Кога не помага: Ако вашиот тим ја користи ВИ главно за едноставни работни процеси со минимален човечки придонес, како обработка на фактури, дополнителниот труд за соработка може да ја надмине користа.

Приспособување кон нови проблеми

  • Кога помага: Да претпоставиме дека се проширувате во нов регион и ВИ одеднаш мора да одговара на прашања за локалните даноци. SPL ви овозможува брзо да ги вградите новите правила и евристики кога ќе се појават, спречувајќи повторување на грешките.

  • Кога не помага: Ако вашата средина е статична, како при претворање транскрипти од состаноци во стандардизирани резимеа, постојаното приспособување носи минимална корист.

Предизвици и фактори на ризик

Теоретски, сето ова звучи ветувачки, но примената на SPL носи вистински предизвици. Подолу разгледуваме некои од главните предизвици:

Недостиг на конвергенција

Во раните фази на создавањето стратегии, напредокот често запира: новите резултати не се надоврзуваат на претходните, па динамиката забавува. Ова обично се должи на два главни проблема:

    • Решение: Однапред вградете го целото достапно деловно знаење за системот да има богата основа од која ќе црпи.

    • Решение: Осмислете детална рубрика што оценува повеќе аспекти на одговорот, како точност, јасност и релевантност, и приспособете го земањето примероци за да ги одразува овие сигнали.

Експлозија на стратегии

Ако системот создава стотици стратегии, но добива премалку повратни информации за да ги разликува добрите од лошите, земањето примероци брзо станува неуправливо. Решението е прочистување.

Кога ја усовршувате збирката стратегии, земете го предвид следново:

  • Животен век: Повлечете ги стратегиите штом ќе надминат утврден временски период или број генерации.

  • Оцена: Користете ја рубриката за евалуација за да ги отстраните стратегиите што постојано даваат слаби резултати. Комбинацијата со животниот век гарантира дека ги задржувате само пристапите што ја докажуваат својата вредност со текот на времето.

  • Оценување со голем јазичен модел (LLM): Периодично оценувајте ги стратегиите за да ги откриете оние што веќе не нудат уникатни сознанија, бидејќи нивните корисни елементи веројатно веќе се вградени во поновите верзии.

Решение: Однесувајте се кон базата на стратегии како кон жив систем: редовно прочистувајте ја за да остане само релевантното знаење со висока вредност.

Заклучок

Учењето на системски промпти сè уште е во зародиш, но неговиот потенцијал е огромен. Компаниите што се потпираат само на статични промпти или бескрајно фино приспособување ќе се соочат со познати ограничувања: кревки системи, растечки трошоци и залуден труд. SPL нуди излез од тој циклус преку создавање системи што се подобруваат со текот на времето и вградуваат принципи од повисоко ниво наместо изолирани поправки.

SPL сè уште се развива, но насоката е јасна: системите што можат да учат од самите себе ќе ги надминат оние што не можат. Сега е време да експериментирате, да почнете со мали чекори, да ги забележувате научените лекции и да ги поставите темелите за системи за ВИ што се подобруваат со секоја интеракција.

Автор

George Williamson