Hlavní navigace

Jak si pokecat (a programovat) s neuronkou ChatGPT, aby to stálo za ten čas

20. 1. 2023
Doba čtení: 12 minut

Sdílet

 Autor: Depositphotos
Pracovat s různými „AI“ generátory bude zanedlouho zásadní schopností v řadě kreativních oborů, říká blogger Martin Jurica. Jak z konverzačních modelů dostat co nejlepší výsledky?

S různými „AI“ (ony to nejsou AI, a už vůbec to není inteligentní, ale co už) si povídám víc než rok. Hodně jsem se z toho naučil, hodně mě to baví, myslím si, že tohle je schopnost, co bude během pár měsíců kruciální pro většinu aktuálně kreativních oborů (od copy po programování). 

Tohle shrnutí je čistě subjektivní, je místy asi naivní, můžete se tomu smát, akorát mi to fakt funguje a ze služeb typu ChatGPT tímhle přístupem těžím maximum. Předpokládám, že s příchodem GPT-4 za pár měsíců, vedle které bude GPT-3 vypadat jak chabá betaverze, bude tohle platit i nadále a bude to ještě důležitější.

 

Server Lupa.cz slaví 25. narozeniny. K výročí vám nabídneme sérii textů, podcastů a offline diskusí k dopadům AI na podobu internetu. Vše najdete na této speciální stránce.

Takže tady jsou mé postřehy v bodech. A pak se podíváme na jejich praktickou aplikaci při chatu s GPT-3.5. Píšu to pro ChatGPT verze 3.5, ale platí to obecně pro konverzační „AI“.

A podotýkám – ano, píšu si s tím česky. Což programátory jistě nenechá chladnými, neb čeština v kódu je zlo atd. Jenže tohle je beta, sbírá data, zlepšuje se a já si myslím, že anglických konverzací má více než dost, tak ji učím češtinu. A ano – pokud budete konverzovat v angličtině, získáte mnohem lepší výsledky.

1. Buďte na neuronku slušní a milí. Fakt. Mám ověřeno, že násobně lepší výsledky vrací v případě, když prosím a děkuji. Nebo mi to možná jen tak přijde, protože pro mě je naprosto přirozené poprosit, když chci pomoc, a poděkovat, když se mi jí dostane. Hele, nic to nestojí, tak to zkuste.

2. Malé krůčky, to je základ. Neuronky sice mají obrovský korpus dat, ze kterého citují (ok, ze kterého syntetizují, jak mi bylo opraveno na Twitteru, když jsem to psal), ale délka výstupu je omezená. Hodně. Když chcete delší odpověď, rozdělte ji otázkami na části. Místo „Napiš mi referát o subsaharské Africe“ začněte „Můžeme se pobavit o subsaharské Africe?“ a pak pokračujte: „Jaké je tam podnebí?“ „Jaká zvířata tam žijí?“ „To je zajímavé, můžeš se rozepsat o těch lvech?“ „A co ten baobab? To je taky zajímavé!“ Úplně stejně to funguje u programování (jak si ukážeme dále). Chtít celý program nemá smysl, jedeme po funkcích. Pamatujte: pamatuje si to celý chat, ale výstup se nevejde do jedné odpovědi (což se asi změní s komerčním modelem, ale teď to je prostě omezené délkou).

3. Musíte vědět, o čem se bavíte. Vždycky. Aktuální jazykové modely jsou navrženy tak, aby odpovídaly. Vždycky. O správnost nejde, hlavně aby byla odpověď. Je to jak v tom vtipu: Tati, co je to kamzík? – Taková blbá ryba. – Ale tady píšou, že kamzík skáče po skalách!? – Tak vidíš, jaká to je blbá ryba. Takže při vědomí tohoto to fakt berme spíš jako demo. Nedá se tomu věřit a nechat si tím napsat bakalářku nebo program je risk (pokud ale víte, o čem / co to píše, tak směle do toho, úpravy to umí – když je to o ně požádáno).

4. Berte to vždy jako tabula rasa. Každý chat je nová instance (krom těch, ve kterých pokračujete, ono si to pamatuje, když chce). Neuronka si nastavuje parametry průběžně, ale nejvíc ji ovlivníte při počátečním zadání. Toho se většinou drží po celou dobu. Já se vždy představím a napíšu obecně, „o čem se budeme bavit“. Není to inteligentní, není to AI (a dlouho ještě nebude), ale úplně blbé to taky není. Když chci programovat, zadám nejprve v jakém jazyku, jaké knihovny chci použít a co je cílem. Když se chci bavit o literatuře, zadám nejprve autory a žánr. A tak dále. Ta věc pak ví, kde a co má hledat. Jinak se klidně můžete bavit o kuchařkách, co napsal Shakespeare, a odpovědi budou věrohodné a velmi dobré. Konkrétně tohle jsem zkusil, tady je výstup ChatGPT:

Autor: screenshot, Martin Jurica

5. Jste rodiči (nebo kamarády), ne oponenty diplomky. Přístup „Špatně! Za pět!“ nikam nevede. Jazykový model se snaží odpovědět na otázky, kterým ale nerozumí. Takže chválit, když se trefí, a opravit (něžně), když se netrefí. Tohle nejsou státnice a cílem není to dát studentovi sežrat. Já chválím za každou správnou odpověď, třeba: Výborně, takhle jsem si to představoval! A pokud algoritmus udělá chybu, tak mu napíšu: To byl dobrý pokus, ale není to správně, zkus se zamyslet a napsat to znovu. Většinou získám lepší výsledek. Stejně tak vedu neuronku po cestě ke správné odpovědi. Ona se učí a postupně najde ten „pattern“ a dá mi odpovědi i na otázky, na které já tu odpověď neznám (to je na samostatný článek, to někdy příště).

6. Nemá to city. Ne, opravdu ne. Ale když se k tomu chováte, jako by je to mělo, získáte lepší pocit z konverzace. Jak jsem psal v bodě 1, děkuji a prosím neuronku, protože mi to tak vyhovuje (té AI to je jedno), stejně tak dávám do zadání smajlíky (to nemusíte, to už je spíš můj úlet), průběžně se ptám, „jak se jí líbí konverzace“, občas přidám nějaký ten vtip a tak dále. Nevím, jaký to má vliv na výstupy, ale mně to pomáhá. Jo a jednou mi to odpovědělo na fór. Zakončil jsem zadání: „a to je vlastně i odpověď na základní otázku života a tak vůbec.“ A ono mi to odepsalo: Rozumím, takže 42 a jedna kachna. Dosud nevím, jak se s tím vypořádat, ale je to nádherné (před tím jsem „pro odlehčení“ napsal dva fóry s kachnou. Asi mi to chtělo udělat radost).

7. Mějte plán. Než začnete kecat s neuronkou, promyslete si „co, jak, proč a k čemu“ chcete. Jinak se velice snadno ztratíte v konverzaci (ono to umí hezky „naslouchat“ a odbíhat od tématu) a budete akorát plýtvat časem. Jako jo, může to být příjemné (a má být), ale když po hodině datlování do klávesnice zjistíte, že jste si sice pěkně pokecali, ale k výsledku nedošli, tak to trošku naštve. Vždycky si proto nejdřív napíšu/vymyslím „todo list“ a jedu podle něj. Jakékoliv odbočky mile, ale nekompromisně utnu hned po prvním pokusu. Uvědomte si, že chcete čas ušetřit, ne o něj přijít (netýká se samozřejmě „konverzací pro konverzaci“, kdy chcete zabít čas (což nechápu), a prostě jen pokecat, pak samozřejmě plkejte, jak je libo).

8. Ověřujte. Všechno. Jak jsem psal výše – ono to primárně chce odpovědět, i když to neví odpověď. Když vám to servíruje „fakta“, googlete. Když vám to píše kód, průběžně testujte – když se vám něco nezdá, dejte to neuronce vědět. Ve stylu: „Zajímavý přístup, ale tady vidím, že tam je nekonečná rekurze, můžeš to upravit?“ Většinou může a udělá to. Nebo rovnou pošlete úpravu v odpovědi. Ono se to omluví a poučí (většinou).

9. Je to chytřejší, než to vypadá, šetřete znaky. To se týká hlavně reakcí na výstupy GPT. Není potřeba být extra konkrétní a specifikovat v reakcích každý detail. Místo: „V tom programu na řádku 6 zaměň statickou proměnou ‚diameter‘ za uživatelský vstup po spuštění programu, kdy uživatel zadá ‚diameter‘ po zobrazení promptu ‚Zadejte průměr pro výpočet obsahu kruhu:‘“ je naprosto v pohodě použít: „Uprav tak, aby průměr vždy zadal uživatel“. Udělá to přesně to samé. A pokud ne, tak na další pokus už jo. Šetří to čas. Hodně.

10. Ověřujte si, s jakou sadou dat pracujete. Zjistit tohle bolelo hodně. Je omezená i délka vstupu a paměť chatu. Ono to sice napíše „pošli mi libovolný text, zpracuju ho“, ale kecá to. Takže doporučuju vyzkoušet, kolik toho neuronka zvládne pojmout. To se dá udělat jednoduše – pošlu delší text (třeba článek) a pak ještě před tím, než požádám o analýzu, se zeptám: „Napiš mi poslední větu z textu, který jsem ti poslal“. A šup, víme, jaký má limit (bývá to kolem 2000 znaků, ale mění se to teď neustále, s každou novou verzí ChatGPT). Dobrá zpráva: jde to pak posílat po částech, složí si to do jednoho textu. Jakmile to do chatu narvete, můžete s tím pracovat, pamatuje si to. A ještě jeden tip – pokud definujeme na začátku nějaké základní podmínky, je dobré se na ně po cca 20 odpovědích zeptat, ono to občas „zapomene“.

11. Víc pokusů není na škodu, naopak. ChatGPT má (měl, od napsání textu se tohle změnilo, funkce už je pryč, ale možná se zase vrátí) tlačítko „Try again“, využívejte ho. Když odpověď neodpovídá představě, tak cvak a zkusit znovu. Každá varianta je jiná a právě ta, od které pokračujete, udává i další vývoj konverzace. Nebát se toho (já s tím měl na začátku problém, snažil jsem se spíš psát, „v čem není odpověď ideální“, ale zabralo to daleko víc času než to nechat neuronku přepsat).

12. Hrajte si a zkoušejte. Mám už na experimenty s AI vyhrazenu cca hodinu denně, protože si myslím, že to je účelně vynaložený čas a brzo jako když to najdu. Zkoušejte cokoliv (akorát tomu, prosím, nenadávejte – pamatujte, že Skynet se blíží). Pokud píšete (cokoliv), je zajímavé tomu předložit své texty (či jejich části) a zkusit požádat o jinou formulaci, pokračování, shrnutí a tak, padají z toho zajímavé nápady. Nebo brainstorming k nějakému nápadu. Nebo si zkusit vymyslet vtip (některé mé poslední tweety napsala AI, přiznávám). Nebo cokoliv. A zkoušejte různé přístupy – ať už formou, nebo obsahem.

13. Zkuste angličtinu. Pokud máte angličtinu na konverzační úrovni, nebojte se ji použít. Vzhledem k tomu, že naprostá většina dat, nad kterými jsou tyhle „AI“ trénované, je v angličtině, získáte logicky daleko lepší odpovědi. A rychleji. O programování ani nemluvím (ta čeština v kódu na ukázce níže rve oči i mně). A navíc si angličtinu procvičíte (není ani potřeba psát perfektně, překlepy to interpretuje bez zaváhání).

<a>Dalších X tipů si nechám na příště, protože tohle už i tak nikdo nedočte. A to ještě nekončíme. Teď už ale budou jen výstupy ChatGPT. A budou dva. Nejprve za mě AI napsala to, co jsem psal výše. A pak si dáme to programování.

Tak co, neuronko, jak s tebou povídat?

První výstup z ChatGPT. Požádal jsem neuronku: „Ahoj. Chtěl bych tě poprosit o napsání krátkého článku, v bodech, na téma: Jak nejlépe konverzovat s ChatGPT, abychom získali co nejlepší a nejrelevantnější výsledky.“ A pak párkrát požádal o pokračování. Toto je její odpověď (bez úprav):

Rád vám pomohu s tímto tématem. Zde jsou několik tipů pro konverzování s ChatGPT, abyste dosáhli co nejlepších a nejrelevantnějších výsledků:

  1. Snažte se vyjádřit se jasně a stručně. ChatGPT je schopen zpracovat dlouhé a složité věty, ale čím více specifické informace mu poskytnete, tím lépe bude schopen reagovat.
  2. Zadávejte konkrétní otázky. ChatGPT je schopen odpovědět na širokou škálu otázek, ale nejlepší výsledky získáte, když se zaměříte na konkrétní témata nebo otázky.
  3. Vyhněte se příliš otevřeným otázkám. Otázky typu “Co bys mi o něčem mohl říct?” jsou příliš vágní a ChatGPT může mít problém s tím, co přesně odpovědět. Místo toho se zaměřte na konkrétní témata nebo otázky.
  4. Vyhněte se nadměrnému opakování stejných otázek nebo informací. ChatGPT je schopen si pamatovat předchozí konverzaci a pokud se k něčemu vrátíte, může být schopen vám poskytnout více podrobné informace.
  5. Buďte trpěliví. ChatGPT je umělá inteligence a může vyžadovat nějaký čas, než na vaši otázku odpoví. Neodcházejte příliš brzy, ale zároveň se snažte neopakovat stejnou otázku příliš mnohokrát.
  6. Využijte různé způsoby zadávání otázek. Můžete zkusit zadávat otázky v různých tvaroch, například v podobě řeči těla nebo pomocí emotikonů, abyste mohli lépe vyjádřit své myšlenky.
  7. Snažte se být konkrétní a neopakujte se. ChatGPT je schopen zpracovat dlouhé a složité věty, ale čím více specifické informace mu poskytnete, tím lépe bude schopen reagovat.
  8. Snažte se vyhnout se nevhodnému chování nebo jazyku. ChatGPT je umělá inteligence a není schopen pochopit nebo reagovat na nevhodné nebo urážlivé chování. Snažte se vyhnout se takovému chování, abyste dosáhli co nejlepších výsledků.
  9. Vyhněte se příliš složitým nebo technickým tématům. ChatGPT je schopen zpracovat širokou škálu témat, ale může mít problém s příliš složitými nebo technickými tématy. Snažte se zaměřit na témata, která jsou pro ChatGPT snadno zpracovatelná.
  10. Buďte trpěliví a snažte se být zábavní. ChatGPT je umělá inteligence a může vyžadovat nějaký čas, než na vaši otázku odpoví. Snažte se být trpěliví a zároveň se snažte být zábavní, abyste si konverzaci užili.
  11. Snažte se vyhnout se příliš otevřeným otázkám. Otázky typu “Co bys mi o něčem mohl říct?” jsou příliš vágní a ChatGPT může mít problém s tím, co přesně odpovědět. Místo toho se zaměřte na konkrétní témata nebo otázky.
  12. Vyhněte se nadměrnému opakování stejných otázek nebo informací. ChatGPT je schopen si pamatovat předchozí konverzaci a pokud se k něčemu vrátíte, může být schopen vám poskytnout více podrobné informace.
  13. Snažte se vyhnout se nesmyslným nebo zbytečným otázkám. ChatGPT je schopen zpracovat širokou škálu témat, ale nesmyslné nebo zbytečné otázky mu mohou znepříjemnit práci a mohou vést k nedostatečným nebo nerelevantním odpovědím.
  14. Buďte přirození. ChatGPT je schopen zpracovat širokou škálu způsobů mluvy a jazyků, takže se nemusíte bát mluvit přirozeně.
  15. Vyzkoušejte různé témata. ChatGPT je schopen zpracovat širokou škálu témat, takže se nebojte vyzkoušet různá témata a zjistit, co vás zajímá.

Tady jsem se ještě zeptal: „Nyní projdi předchozí body, cos mi napsal, odeber duplicity a napiš je stručněji“. A tohle je výsledek:

Rád vám pomohu s tímto úkolem. Zde je seznam tipů pro konverzaci s ChatGPT bez duplicit a stručněji:

  1. Vyjádřete se jasně a stručně.
  2. Zadávejte konkrétní otázky.
  3. Vyhněte se příliš otevřeným otázkám.
  4. Vyhněte se opakování stejných otázek nebo informací.
  5. Využijte různé způsoby zadávání otázek.
  6. Buďte konkrétní a neopakujte se.
  7. Vyhněte se nevhodnému chování nebo jazyku.
  8. Vyhněte se příliš složitým nebo technickým tématům.
  9. Buďte trpěliví a snažte se být zábavní.
  10. Vyhněte se nesmyslným nebo zbytečným otázkám.
  11. Buďte přirození.
  12. Vyzkoušejte různá témata.

Doufám, že tyto tipy vám pomohou získat co nejlepší výsledky při konverzaci s ChatGPT. Snažte se je aplikovat a budete překvapeni, jak vám ChatGPT dokáže pomoci s vašimi otázkami a zájmy. 

A jdeme programovat…

Zkusíme naprogramovat „monitor aktivity na Twitteru“, půjde o jednoduchý Python script, za použití existujících knihoven, který bude hlídat výskyt zadaného textu v reálném čase a výsledky vypíše na obrazovku. Nic, co by začátečník s podporou Google nezvládl za půl hodiny (a profík, co ví, jak na to, za 5 minut), je to jen příklad.

Dám to jako video, necelé 4 minuty, nebudu to sem přepisovat/kopírovat. Teď mi jde jen o ukázku práce s ChatGPT, ne o ten Python kód, který je naprosto triviální. Všimněte si, že používám vše, co jsem popsal výše – od milého oslovení přes návrh lepšího řešení až po Zahraj to znovu, Same. Hotovo jsme měli (ano, ten kód funguje) za 8 minut (video je zrychlené, za blikání se omlouvám, zapomněl jsem vypnout f.lux…). Na neuronku dobré, ne?

BRAND24

Text původně vyšel na blogu autora, Lupa jej vydává v aktualizované a redakčně upravené verzi.

Byl pro vás článek přínosný?

Upozorníme vás na články, které by vám neměly uniknout (maximálně 2x týdně).