Јазикот што AI навистина го разбира

Јазикот што AI навистина го разбира

Замисли дека читаш книга.

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

AI работи поинаку.

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

Еден збор не значи еден токен

Да ја земеме реченицата:

Човекот ја гледа како една целосна реченица составена од неколку зборови.

Моделот, пак, може да ја подели на повеќе токени. Во зависност од конкретниот tokenizer, дури и еден збор може да биде поделен на два или повеќе делови.

На пример, зборот „светот“ не мора секогаш да биде обработен како една единствена единица.

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

Зошто токените се толку важни?

Можеби никогаш директно нема да ги гледаш токените додека разговараш со AI, но тие влијаат на речиси секој аспект од работата со моделот.

  • влијаат на количината текст што моделот може да обработи;
  • влијаат на цената при користење API;
  • влијаат на времето потребно за обработка;
  • влијаат на големината на достапниот контекст;
  • посредно можат да влијаат и на квалитетот на резултатот ако внесеш премногу непотребни информации.

Многу AI сервиси не ја пресметуваат употребата според бројот на зборови, туку според бројот на влезни и излезни токени.

Зошто 100 зборови не се секогаш 100 токени?

Не постои едноставна формула според која еден збор секогаш е еднаков на еден токен.

Бројот на токени зависи од повеќе фактори:

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

Долг URL, сложен програмски идентификатор или необичен збор може да биде поделен на повеќе токени. Од друга страна, краток и чест збор може да биде претставен со само еден токен.

Зошто ова е важно за програмерите?

Замисли дека работиш на Laravel проект и сакаш AI да ти помогне при анализа или refactoring.

Проектот содржи:

  • 50 PHP датотеки;
  • 20 JavaScript датотеки;
  • SQL миграции;
  • CSS;
  • Blade шаблони;
  • configuration датотеки;
  • tests;
  • документација.

Ако се обидеш сето тоа да го испратиш одеднаш, лесно можеш да го потрошиш голем дел од достапниот контекст.

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

  • моделот да пропушти важен дел од кодот;
  • да повторува решение што веќе постои;
  • да предложи промена што не е усогласена со остатокот од архитектурата;
  • да изгуби дел од претходниот контекст;
  • да се фокусира на нерелевантни информации наместо на конкретниот проблем.

Работи со логички целини

Наместо да му го испратиш целиот проект, многу подобар пристап е прво да му дадеш краток опис на архитектурата, а потоа само оние делови од кодот што се релевантни за конкретната задача.

На пример, ако анализираш проблем со authentication, нема секогаш потреба да испраќаш CSS, marketing pages или неповрзани модули.

Ако работиш на subscription logic, фокусирај го контекстот на models, services, controllers, jobs, events, database schema и tests поврзани со subscriptions.

Аналогија со камион

Замисли камион со максимална носивост од 20 тони.

Ако се обидеш да натовариш 35 тони, не можеш да очекуваш дека сè ќе функционира нормално.

Слично е и со AI.

Контекстот е товарот. Токените се единиците од кои е составен тој товар. А секој модел има ограничување колку информации може да земе предвид во една интеракција.

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

Долг промпт не значи добар промпт

Една од честите грешки е идејата дека колку е подолг промптот, толку ќе биде подобар одговорот.

Тоа не е секогаш точно.

Долг промпт може да биде одличен ако секоја информација има функција. Но може да биде и многу слаб ако содржи повторувања, контрадикторни инструкции и непотребни детали.

Што се случува во долг разговор?

Колку разговорот станува подолг, толку повеќе содржина може да влезе во контекстот.

Тоа не значи дека секој AI систем секогаш „се сеќава“ на секоја порака што некогаш си ја испратил.

Во зависност од платформата, моделот може да има ограничен активен контекст, посебен механизам за memory или комбинација од повеќе техники.

Практична задача

Направи едноставен експеримент со AI моделот што најчесто го користиш.

Експеримент 1

Забележи:

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

Експеримент 2

Потоа спореди ги двата пристапа според:

  • точност;
  • јасност;
  • конзистентност;
  • брзина на работа;
  • број на потребни корекции.

Клучни поенти

  • AI не го обработува текстот директно како човек, туку најчесто го дели на токени.
  • Еден збор не мора да биде еднаков на еден токен.
  • Бројот на токени влијае на контекстот, брзината и трошокот при користење API.
  • Секој модел има ограничување на количината информации што може да ги земе предвид во една интеракција.
  • Повеќе контекст не значи автоматски подобар резултат.
  • Кај големи проекти релевантноста и организацијата на контекстот се поважни од неговата големина.
  • Долг промпт не е нужно подобар промпт.
  • Големите задачи често е корисно да се поделат на логички фази.

Continue reading the complete book

Unlock all frameworks, permanent library access and future content updates.