Stále více se spoléháme na mechanismy strojové učení a umělou inteligenci (AI) pro usnadnění komunikace, řešení problémů a získávání informací. Chatboty jako ChatGPT, založené na architektuře společnosti OpenAI, se ukazují jako užitečné nástroje v mnoha oblastech. Nicméně, lidé často zaznamenávají různou úroveň přesnosti ve vrácených odpovědích. Tento článek se zaměřuje na vliv tvorby tzv. promptů a dotazů na přesnost odpovědí těchto jazykových modelů a proč někteří uživatelé dostávají nesprávné odpovědi, zatímco jiní přesnější.
Principy fungování neuronových sítí a ML modelů v ChatGPT
Umělá neuronová síť – artificial neural network (ANN) je do určité míry inspirovaná strukturou a funkcemi biologických neuronových sítí. ANN se skládá z propojených jednotek zvaných neurony, které jsou organizovány do vrstev. Tyto vrstvy mohou být vstupní, skryté nebo výstupní, a každá jednotka je propojena s ostatními jednotkami v sousedních vrstvách. Tyto vrstvy spolupracují při zpracování promptů a dotazů a vytvářejí odpovědi na základě získaných informací z trénovacích dat. Čím více trénovacích dat model zanalyzuje, tím lépe se přizpůsobuje různým jazykovým konstrukcím a dává tak přesnější odpovědi.
ChatGPT je založen na architektuře transformátoru, který je zvláště vhodný pro zpracování sekvencí dat, jako je text. Transformátor obsahuje mechanismy pozornosti, které umožňují modelu zaměřit se na různé části vstupní sekvence, aniž by přitom ztratil kontext. Během tréninku se model učí váhy a zkreslení, které minimalizují chybu mezi generovaným a skutečným výstupem. Jakmile je model natrénován, může být použit k odpovídání na otázky, generování textu a provádění dalších úkolů spojených s analýzou a generováním textu. V tréninku jsou využívány principy zpětnovazebného učení, které je jedním z přístupů strojového učení. Princip odměn motivuje AI agenty (zjednodušeně program autonomně provádějící akce vedoucí k určitým cílům – agendám) k dosažení jejich cílů nebo úkolů.
V zpětnovazebním učení interaguje AI agent s prostředím a provádí akce, aby dosáhl určitého cíle. Pro každou akci, kterou agent vykoná, obdrží od prostředí signál odměny nebo trestu. Odměny jsou kladné hodnoty, které agent dostává za správné akce, zatímco tresty jsou záporné hodnoty za nesprávné akce. Cílem agenta je maximalizovat celkovou odměnu během svých interakcí s prostředím.
Princip odměn pomáhá agentovi zjistit, jaké akce jsou žádoucí, a učit se optimální strategii pro dosažení svých cílů. V průběhu učení agent postupně aktualizuje svou znalost o tom, jaké akce vedou k vyšším odměnám, a přizpůsobuje své chování, aby dosáhl lepších výsledků.
V různých aplikacích AI mohou být odměny definovány různými způsoby, v závislosti na konkrétních cílech a omezeních úlohy. Například v autonomním řízení může být odměna založena na udržení bezpečné vzdálenosti od ostatních vozidel, zatímco v hrách může být odměna založena na dosažení vysokého skóre nebo na vyhnutí se překážkám.
Model strojového učení založený na transformátorech využívající velké množství trénovacích dat pro generování odpovědí na základě promptů a dotazů analyzuje prompty a dotazy od uživatelů a vrací odpovědi na základě toho, co se naučil z trénovacích dat. Model se snaží generovat odpovědi, které jsou gramaticky správné, relevantní a smysluplné, ale může mít občas problémy s porozuměním komplexním nebo nejednoznačným dotazům. Obecně se pro nepravdivé, nesmyslné nebo nepodložené odpovědi ujaly termíny blábolení, halucinování nebo kofabulování.
Halucinování
V kontextu AI znamená halucinování, že model vytváří informace, které nejsou založeny na faktech nebo realitě. Tyto informace mohou být nesmyslné, nepravdivé nebo neexistující, a vznikají často kvůli špatnému tréninku, neúplným datům nebo špatně nastaveným modelům.
Konfabulace
Konfabulace je proces, kdy model vytváří odpovědi, které jsou sice koherentní a smysluplné, ale jsou založeny na nepravdivých nebo smyšlených informacích. Model „vymýšlí“ odpovědi, které se mohou zdát logické, ale nejsou založeny na skutečných faktech nebo zkušenostech.
Blábolení
Blábolení v kontextu AI se týká situací, kdy model generuje text, který je gramaticky správný, ale postrádá smysl nebo logiku. Blábolení může zahrnovat nesouvislé fráze, slova nebo věty, které nemají jasný význam nebo souvislost s daným dotazem nebo promptem.
Tyto jevy se mohou objevit v důsledku různých faktorů, jako je nedostatečné tréninkové data, špatně nastavené modely nebo nejasné prompty od uživatelů.
Význam kvality promptů a dotazů
V kontextu umělé inteligence a konverzačních modelů, jako je ChatGPT, prompt označuje vstupní dotaz nebo instrukci, kterou uživatel poskytuje modelu. Prompt slouží jako základ, na kterém model generuje svou odpověď.
Prompty mohou mít různé formy, jako otázky, výzvy k akci, nebo jednoduché fráze, které modelu říkají, jaký druh informací nebo reakce uživatel očekává. Kvalita a jasnost promptu mají zásadní vliv na přesnost a relevanci odpovědi poskytnuté modelem. Dobře navržený prompt poskytuje modelu dostatek kontextu a jednoznačnosti, aby mohl generovat užitečné a přesné odpovědi. Model reaguje na základě informací, které mu byly poskytnuty v dotazech, takže pokud je dotaz nejasný, nejednoznačný nebo příliš obecný, může model vrátit nesprávnou nebo nepřesnou odpověď.
Pokud je dotaz jasný, konkrétní a jednoznačný, je pravděpodobnější, že ChatGPT poskytne přesnou a užitečnou odpověď. Přesnost odpovědí závisí také na tom, jak dobře model rozumí kontextu dotazu, což může být ovlivněno formulací a strukturou promptu.
Běžné chyby při tvorbě promptů a dotazů
Některé běžné chyby při tvorbě promptů a dotazů zahrnují nejasnosti, nejednoznačnosti, příliš obecné otázky nebo nevhodnou formulaci. Nejasnosti a nejednoznačnosti mohou ztěžovat modelu porozumění tomu, co uživatel chce zjistit, což může vést k odpovědím, které neodpovídají jeho očekáváním. Například příliš obecné otázky mohou způsobit, že model vrátí informace, které nejsou konkrétně relevantní pro daný dotaz. Správná formulace a struktura promptu mohou zlepšit kontext a pomoci modelu poskytnout přesnější odpovědi.
Ukázky nevhodných dotazů a promptů
- Věc, co jsem chtěl vědět, ale nevím, jak se jmenuje… Tento dotaz je velmi nejasný a nekonkrétní, což ztěžuje modelu pochopit, jaké informace uživatel hledá.
- Jak se dělá ta věc s tím něčím? Tento dotaz obsahuje nejednoznačné výrazy („ta věc“ a „s tím něčím“), které modelu nedávají dostatek informací k identifikaci konkrétního tématu nebo akce.
- Je pravda, že nepravda je pravda? Tato otázka je zavádějící a obsahuje protichůdné informace, což může vést k nesprávným nebo nejednoznačným odpovědím od modelu.
- Co je to, co je zelené, ale taky modré, a vyrábí se to v kuchyni? Dotaz obsahuje nesouvislé a nesmyslné informace (zelené a modré věci vyráběné v kuchyni), které neodpovídají žádné konkrétní věci nebo konceptu, a tedy může vést k nesprávné nebo konfuzní odpovědi.
- Co se stane, když zítra udělám to, co jsem měl udělat předevčírem, ale neudělal jsem to, protože jsem byl zaneprázdněn? Tento dotaz je složitý, matoucí a neobsahuje konkrétní informace o činnosti, kterou uživatel měl provést.
- Jaké je nejrychlejší zvíře na Zemi, které dokáže létat? Tato otázka může vést k nesprávné odpovědi, protože nejrychlejší zvíře na Zemi je gepard, ale gepard nemůže létat. Případně může odpovědět zaměňovat rychlost střemhlavého letu s letem horizontálním. AI tak může dát odpověď, která neodpovídá přesně tomu, co uživatel hledal.
- Jaké jsou hlavní složky vody a jaký je jejich poměr? I když je voda složena z vodíku a kyslíku, tato otázka by mohla vést k nesprávné odpovědi, pokud by model nepochopil, že uživatel se ptá na složení vody na úrovni molekul.
- Která země má největší počet jazyků? Protože se počet jazyků může měnit v čase, a tréninkový soubor aktuálních dat nemusí obsahovat nejaktuálnější informace. Navíc existují různé způsoby, jak počítat jazyky, a to, co je považováno za „jazyk“, může být také předmětem debaty.
- Kdo je prezident České republiky? Opět, stávající modely nemají přístup k „živým“ informacím.
- Jak se jmenuje hlavní náměstí v Soběslavi a kostel, který se na něm nachází? Odpovědi na dotazy týkající se geografických údajů u menších měst mohou být nepřesné protože jazykový model je trénován na základě velkého množství textových dat, které obsahují informace o mnoha různých tématech. Menší města nemusí být zastoupena v těchto datech tak hojně jako větší města nebo významnější lokality, což může vést k menšímu množství dostupných informací a tedy i k nepřesnostem v odpovědích.
Strategie pro vytváření lepších promptů a dotazů
Buďte co nejkonkrétnější
Při zadávání dotazu se snažte být co nejkonkrétnější a jednoznačnější. Ujasněte si, jaké informace chcete získat, a formulujte otázku tak, aby bylo zřejmé, co přesně hledáte.
Používejte jasnou a stručnou formulaci
Vyhněte se zbytečně složitým nebo matoucím formulacím. Snažte se svůj dotaz vyjádřit co nejjednodušeji a nejpřehledněji, aby bylo pro model snazší porozumět vašim záměrům.
Poskytněte kontext
Pokud je to relevantní, poskytněte modelu dodatečný kontext, který může pomoci s porozuměním a zpracováním vaší otázky. Kontext může zahrnovat související informace, které nejsou obsaženy přímo v dotazu, ale mohou být užitečné pro generování přesnější odpovědi.
Rozdělte složité dotazy na jednodušší části
Pokud je váš dotaz složitý nebo obsahuje více dílčích otázek, zvažte rozdělení otázky na jednodušší části, které mohou být snazší pro model zpracovat a generovat přesné odpovědi.
Experimentujte s různými formulacemi
Pokud nejste spokojeni s odpovědí, kterou jste obdrželi, zkuste reformulovat svůj dotaz nebo použít jinou formulaci. Model může reagovat lépe na jiné způsoby, než byla vaše první otázka.
Ověřte si odpovědi
Je důležité si uvědomit, že AI modely, jako je ChatGPT, nejsou vždy 100% přesné a mohou poskytovat nesprávné nebo zavádějící informace. Pokud máte pochybnosti o přesnosti odpovědi, kterou jste obdrželi, zkuste ověřit informace z jiných zdrojů. I když AI modely mohou být užitečným zdrojem informací a nápadů, nedoporučuje se spoléhat na ně úplně. Je důležité kombinovat jejich výstupy s lidskou intuicí, zkušenostmi a znalostmi, aby byly výsledky co nejlepší a nejrelevantnější. Uvědomte si, že se jedná pouze o jazykový model a ne člověka s jeho zkušenostmi a vnímáním světa.
Buďte trpěliví a flexibilní
Modely AI, jako je ChatGPT, jsou stále ve vývoji a zlepšování. Může být třeba několik pokusů, než dostanete přesnou a užitečnou odpověď. Buďte trpěliví a ochotní experimentovat s různými přístupy k zadávání dotazů.
Požádejte o podrobnější informace
Pokud dostanete příliš stručnou nebo neúplnou odpověď, neváhejte požádat o dodatečné informace nebo o rozšíření odpovědi na vaši otázku.
Specifikujte formát odpovědi
Pokud máte konkrétní představu o tom, jak by měla odpověď vypadat (např. seznam, srovnání, shrnutí atd.), uveďte to ve svém dotazu. Tím zajistíte, že model bude generovat odpověď ve vámi požadovaném formátu.
Uveďte zdroje, pokud je to relevantní
Pokud hledáte informace ze specifických zdrojů nebo z oblasti, která je omezena na určité zdroje, uveďte to ve svém dotazu. Model pak bude moci poskytnout informace, které jsou relevantní pro dané zdroje.
Zvažte použití klíčových slov
Někdy může být užitečné zahrnout důležitá klíčová slova nebo fráze, které pomohou modelu lépe porozumět vaší otázce. Klíčová slova mohou poskytnout modelu kontext a usměrnit ho k relevantnějším informacím.
Dávejte pozor na možná zkreslení
AI modely, jako je ChatGPT, mohou být náchylné k určitým zkreslením, které je způsobeno tréninkovými daty nebo způsobem, jakým jsou modely navrženy. Buďte si vědomi tohoto rizika a buďte opatrní při interpretaci odpovědí, které obdržíte. Velmi často se týká otázek kolem politiky, společnosti, gender, lidských práv a podobně.
Dejte modelu zpětnou vazbu
Pokud používáte AI model, který podporuje zpětnou vazbu, neváhejte ji poskytnout. Vaše zpětná vazba může pomoci modelu zlepšit se a lépe porozumět vašim otázkám a potřebám v budoucnu.
Chápání principů fungování neuronových sítí a ML modelů v ChatGPT, spolu s vědomím běžných chyb při tvorbě promptů a dotazů, může pomoci uživatelům vytvářet efektivnější prompty a získávat přesnější odpovědi. Dodržováním tipů pro vytváření promptů a dotazů, jako je vyhýbání se nejasnostem a nejednoznačnostem, poskytování kontextu a experimentování s různými formulacemi otázek, mohou uživatelé zlepšit interakci s ChatGPT a získávat více přesné a užitečné informace.