Generování textu 2/3


Ať vás článek inspiruje, více si povíme na školení!


V této kapitole si řekneme něco víc o prompt engineeringu, tedy technikách promptování velkých jazykových modelů (LLM), jejichž prostřednictvím budeme model instruovat a výstupy ladit k našim představám, což je naprosto elementární pro jakoukoliv implementaci do firemního prostředí.

Pro trénování prompt engineeringu potřebujete pracovat nad samotným jazykovým modelem, například nad GPT od OpenAI. Pozor, nejde o ChatGPT – to je už konkrétní aplikace/UI nad LLM GPT, zatímco nám se jedná o přímý přístup do LLM, abychom si přizpůsobili chování modelu, zahrnuli specifická data nebo implementovali vlastní logiky a automatizace zpracování odpovědí. K modelu GPT se dostanete tak, že si otevřete účet na https://platform.openai.com a pošlete na něj minimálně 5USD. (opět: nijak to nesouvisí se službou ChatGPT – tedy i když máte placený ChatGPT, musíte poslat minimálně těch 5USD na Platformu OpenAI a z nich vám bude kreditu odečítán podle objemu vašeho provozu)

Při práci s LLM nebudete začínat od nuly, ale začnete systémovou message, kterou dáte modelu instrukce, jak chcete, aby odpovídal – tj. dáte mu roli jako „jsi ten a ten, tohle umíš, v tomhle si dobrý, k tomuto se nevyjadřuj, odpovídej mi tak a tak…„. Odladit systémovou zprávu doporučuju v angličtině, LLM jsou v angličtině lepší, protože anglických textů si načetly několikanásobně větší kvanta něž těch českých. Závěrem zprávy pak můžete dát instrukci, ať odpovídá česky.

Častý business scénář je práce nad nějakým konkrétním textem, budete z něj potřebovat dolovat informace, extrahovat entity, posuzovat styl anebo sentiment, nechávat t si navrhovat zlepšení. Pro taková cvičení budete pracovat s něčím, čemu se říká incontext learning: model umí co umí a aplikuje to nad datovým obsahem, který mu obsáhnete promptu. V takové konverzaci s LLM budete střídat některé ze základních technik:

  • Zero-shot-learning: umožňujete modelu pochopit a reagovat na úkoly bez předchozího trénování nebo příkladů
  • Few-shot-learning: AI se učí z pár příkladů, jak reagovat na nové situace (dáte mu pár příkladů, jak si odpověď představujete, jakým stylem má odpovídat)
  • In-context learning je technika, kdy se nemusíme spoléhat na informace, které model měl v okamžiku svého trénování a nové informace mohou být obsažené právě v promptu

Jistě jste slyšeli o tom, že model má někdy tendenci v odpovědích halucinovat. Jedna z technik, jak výrazně omezit halucinace, je verifikace; pokud si nejste jeho odpovědí jistí, jednoduše se ho zeptejte „Je tvá předchozí odpověď správná?“ Tím mu dáte možnost se zamyslet a svou odpověď verifikovat. Jakmile se totiž model rozjede třeba i špatným směrem, tak v tom směru doplňováním pokračuje a neotočí – tímto dostane šanci se zorientovat. Další funkční technikou je chain of thoughts: budete po modelu chtít, aby krok za krokem svou odpověď vysvětloval. Tím mu opět dáte prostor komplexní otázku lépe zodpovědět.

Je důležité být si vědom toho, že slabší modely se budou méně držet vašich instrukcí a u horšího modelu bude představovat více práce z něj dostat výstup, jaký potřebuju a spolehlivě. Proof-of-concept se proto doporučuje dělat na tom nejlepším dostupném modelu, jeho následné postupné ladění pak přesunout na levnější modely. Principiálně se ale všechny LLM v čase zlepšují, tak to je.

Pokud základy práce nad vlastním textem přijdou zajímavé, tak další kapitola bude ještě zajímavější: řekneme si jak postavit zákaznického chatbota nad našimi daty.


Chcete příležitosti AI pochopit lépe?