Techniky vytváření výzev

Modely GPT-3, GPT-3.5, GPT-4 a GPT-4o z OpenAI jsou založené na příkazovém řádku. S modely založenými na dotazech uživatel komunikuje zadáním textového dotazu, na který model reaguje doplněním textu. Toto dokončení je pokračováním modelu vstupního textu.

I když jsou tyto modely mimořádně výkonné, jejich chování je také velmi citlivé na konkrétní dotazy. Proto je konstrukce dotazů důležitou dovedností, kterou je potřeba rozvíjet.

Konstrukce výzvy může být obtížná. V praxi se výzva chová ke konfiguraci hmotností modelu tak, aby dokončila požadovaný úkol, ale je to spíše umění než věda, která často vyžaduje zkušenosti a instinkt k vytvoření úspěšné výzvy. Cílem tohoto článku je pomoct vám začít s tímto procesem učení. Pokouší se zachytit obecné koncepty a vzory, které platí pro všechny modely GPT. Je ale důležité pochopit, že se každý model chová odlišně, takže učení nemusí platit stejně pro všechny modely.

Základy

Tato část popisuje základní koncepty a prvky výzev GPT.

Textové výzvy jsou způsob interakce uživatelů s modely GPT. Stejně jako u všech generativních jazykových modelů se modely GPT pokoušejí vytvořit další řadu slov, která budou pravděpodobně následovat z předchozího textu. Je to, jako bychom říkali , co je první věc, která přijde na vaši mysl, když říkám <prompt>? Níže uvedené příklady ukazují toto chování. Vzhledem k prvním slovům slavného obsahu je model schopen přesně pokračovat v textu.

Instrukce Dokončení
Čtyři skóre a sedm let před naším na tomto kontinentu, nový národ, pojatý v Liberty, a věnuje se návrhu, že všichni muži jsou rovni. […]
"Zavolej mi Ishmael." "Před několika lety , nevadí, jak dlouho přesně - mít malé o žádné peníze v mé kabelce, a nic zvláštního, co by mě zajímalo na břehu, myslel jsem, že budu plavat o něco málo a vidět vodní část světa." […]

Při vývoji složitějších výzev je užitečné mít na paměti toto základní chování. Bez ohledu na poskytnutou výzvu model jednoduše reaguje na to, co určuje, je s největší pravděpodobností (vzhledem k trénovacím datům a cílům trénování). Pokud ve výzvě položíte otázku, model neslouží k samostatné cestě kódu Q&A, ale zdá se, že odpovídá na otázku, protože odpověď je nejpravděpodobnějším druhem odpovědi pro danou otázku jako vstup.

Zobrazení výzvy ke komponentám

Pokud používáte rozhraní API pro dokončování, zatímco mezi různými částmi výzvy není žádné rozlišení, může být stále užitečné, když se naučíte a prodiskutujte základní komponenty výzvy. Rozhraní API pro dokončování chatu obsahuje různé části výzvy, které se odesílají do rozhraní API ve formě pole slovníků s přidruženými rolemi: systém, uživatel a asistent. Tyto pokyny se obecněji zaměřují na to, jak se zamyslet nad vytvářením výzev, a ne na poskytování preskriptivních pokynů specifických pro jedno rozhraní API.

Je také důležité pochopit, že i když mohou existovat další platné způsoby, jak rozptýlit výzvy, cílem tohoto rozpisu je poskytnout relativně jednoduchý způsob, jak uvažovat o výzev ke konstrukci. S rozhraním API pro dokončování jsou všechny komponenty volitelné, ale alespoň jedna musí být k dispozici a většina výzev obsahuje více než jednu komponentu. Mezi součástmi může být také šedá oblast. Pořadí uvedené níže přibližně odpovídá tomu, jak často se jednotlivé komponenty používají, od většiny po nejnižší.

Pokyny

Pokyny jsou pravděpodobně nejčastěji používanou komponentou výzvy. Pokyny jsou jednoduše následující: pokyny k modelu o tom, co dělat. I když jsou v konceptu jednoduché, můžou být v praxi složité. Následující tabulka to ilustruje zobrazením jednoduchých i složitějších instrukcí ve dvou různých formách.

Typ instrukce Instrukce Dokončení
Jednoduché pokyny Napište úvod do týdenního bulletinu. Vítejte v našem týdenním bulletinu. Tento týden se zaměřujeme na produktivitu. Budeme sdílet tipy a triky o tom, jak být produktivní ve všech oblastech vašeho života. Doufáme, že se vám líbí a rádi se podělíte se svými přáteli!
Složité pokyny Napište úvod do týdenního bulletinu společnosti Contoso. Měl by zmínit skvělé všechny ruce setkání, které jsme měli minulý týden a poděkovat týmu za veškerou jejich tvrdou práci v posledních několika měsících. Vítejte v týdenním bulletinu společnosti Contoso! Měli jsme skvělé všechny ruce setkání minulý týden a chci poděkovat týmu za veškerou jejich tvrdou práci za posledních pár měsíců. Těšíme se na jasnou budoucnost a jsem si jistá, že s odhodláním a závazkem našeho týmu dosáhneme skvělých věcí. Děkujeme, že jste součástí našeho týmu a těším se na spolupráci se všemi v nadcházejících týdnech a měsících. Upřímně, [Vaše jméno].
Složité pokyny Napište úvod do týdenního bulletinu, včetně následujících:
– Moje společnost má název contoso
- Nechutný pozdrav
- Děkujeme týmu za jejich tvrdou práci za pár náročných měsíců
- Pozitivní výhled na nadcházející čtvrtletí
- Podepsáno SLT
Dobrý den, tým Společnosti Contoso! Chtěl jsem chvilku poděkovat za vaši tvrdou práci za posledních pár měsíců. Bylo to těžké pár měsíců, ale všichni jste se spojili a udělali úžasnou práci. Jsem na tebe opravdu hrdá. Při pohledu na další čtvrtinu cítím opravdu pozitivní. Myslím, že dosáhneme některých skvělých věcí. Děkujeme znovu, vedoucí tým.

Primární obsah

Primární obsah odkazuje na nějaký druh textu, který model zpracovává nebo transformuje. Primární obsah se obvykle používá ve spojení s pokyny. Jednoduchým příkladem by byl překlad jazyka. V následujícím příkladu by byl anglický text považován za primární obsah, zatímco "Translate to French:" je instrukce.

Instrukce Dokončení
Můžeš mi prosím říct, jak se dostat do muzea?
Přeložit do francouzštiny:
Pouvez-vous s'il vous plaît me dire comment aller au musée?

Primární obsah může být také mnohem delší. V následujícím příkladu je primárním obsahem úvodní část z příspěvku na Wikipedii o časové složitosti, což je téměř 300 slov dlouhých. Tento obsah byl zkrácen v naší tabulce pro usnadnění zobrazení.

Instrukce Dokončení
V počítačových vědách je složitost času výpočetní složitost, která popisuje dobu potřebnou ke spuštění algoritmu. Časová složitost se běžně odhaduje [...]
Shrnutí předchozího textu v několika větách:
Složitost času je míra, jak dlouho trvá spuštění algoritmu. Obvykle se vyjadřuje jako funkce velikosti vstupu. Nejběžnějším měřítkem je složitost v nejhorším případě, což je maximální doba potřebná pro vstupy dané velikosti.
V počítačových vědách je složitost času výpočetní složitost, která popisuje dobu potřebnou ke spuštění algoritmu. Časová složitost se běžně odhaduje [...]
TL;DR (Příliš dlouho se nečetlo)
Časová složitost algoritmu je doba, kterou trvá spuštění algoritmu. Složitost času se obvykle odhaduje počítáním počtu základních operací provedených algoritmem a předpokládá se, že provedení každé základní operace trvá pevně stanovenou dobu. Složitost času je obecně vyjádřena jako funkce velikosti vstupu.

Modely GPT můžou také zpracovávat primární obsah, který je strukturovaný. V následujícím příkladu se jako součást výzvy předá modelu TSV o pivech v Belgii (zkráceně pro zobrazení v tomto článku). Dokáže správně interpretovat obsah a odpovídat na otázky týkající se dat.

Instrukce Dokončení
Belgian Beer Brands
Beer name Beer style color ABV Brewery
"Chimay Gold: ""Doree""" trappist pale ale gold 4.80% Chimay Brewery (official trappist)
"Chimay Blue: ""Grande Reserve""" trappist dark ale dark 9.00%
[…]
Odkazujete na výše uvedenou tabulku, kolik piv je menší než 6 % ABV?
V tabulce je 10 piv, které jsou menší než 6 % ABV.

Příklady

Úspěšné výzvy se často spoléhají na praxi učení "jeden snímek" nebo "pár snímků". To se týká zahrnutí jednoho nebo více příkladů požadovaného chování modelu, obvykle zahrnutím vstupních a výstupních párů. To se nenaučí v tom smyslu, že se model trvale změní, ale spíše že příklady lépe podmíní, aby model reagoval podle potřeby pouze pro aktuální odvozování. Použití výzev bez příkladů se někdy označuje jako učení s nulovým snímkem. Všimněte si, že s několika příklady učení rozhraní API pro dokončování chatu se obvykle přidávají do pole zpráv ve formě ukázkových interakcí uživatele/asistenta za počáteční systémovou zprávou.

Typ výuky Instrukce Dokončení
Nulový snímek Nadpis: Trenér sebevědomé zranění nezmáže Bojovníky
Téma:
Trenér si je jistý, že zranění nezmáže sezónu Warriors. Tým se stále zaměřuje na své cíle a že bude i nadále tvrdě pracovat na jejich dosažení.
Několik snímků Nadpis: Twins' Correa k použití opt-out, test zdarma agentury
Téma: Baseball
Nadpis: Katar World Cup mít zóny pro střídání
Téma: Fotbal
Nadpis: Yates: Fantasy fotbal intel pro týden 6
Téma: Fotbal
Nadpis: Trenér sebevědomé zranění nezmáže Bojovníky
Téma:
Basketbal

Výše uvedený příklad znázorňuje nástroj učení s několika snímky. Bez příkladů se zdá, že model odhaduje požadované chování, zatímco příklady čistě ukazují, jak pracovat s modelem. To také ukazuje sílu modelu, může odvodit kategorii popisku, která je chtěná, i bez "basketbalového" popisku v příkladech.

Tágo

Upozornění fungují jako "jumpstart" pro výstup modelu a pomáhají směrovat model na požadovaný výstup. Často se jedná o předponu, na kterou může model sestavit. V následujícím příkladu si ukážeme upozornění, které nasměruje příběh tak, aby zahrnoval klíčové prvky. Upozornění se často používají spolu s pokyny, ale ne vždy. V následujících příkladech se model používá ke shrnutí dlouhého e-mailu s oznámením. V jednom případě se používá upozornění, které vám pomůže zaměřit výstup modelu a navrhnout konkrétní výstupní formát (odrážkové body) v druhém.

V kontextu pokynů rozhraní API pro dokončování chatu mají podobu systémové zprávy a několik příkladů je označeno poskytnutím řady ukázkových interakcí uživatele/asistenta, které pomůžou model předvést.

Počet upozornění Instrukce Dokončení
0 Hodnocení výkonu jsou základní součástí našeho přístupu k výkonu a vývoje ve společnosti Contoso. […]
Shrnutí výše uvedené e-mailové zprávy:
Účelem tohoto e-mailu je informovat zaměstnance o nedávných změnách prostředí kontroly výkonu, což je součástí přístupu Společnosti Contoso k výkonu a vývoji. Změny zahrnují vylepšenou strukturu, upgradované uživatelské prostředí v nástroji a prioritní výzvy. Kromě toho je teď k dispozici volitelná část Úvodní konverzace pro zaměstnance, kteří chtějí označovat témata, která chtějí probrat se svými manažery.
0 Hodnocení výkonu jsou základní součástí našeho přístupu k výkonu a vývoje ve společnosti Contoso. […]
Shrnutí výše uvedené e-mailové zprávy:
Klíčovým aspektem zprávy je
společnost Contoso vylepšuje možnosti kontroly výkonu tím, že se více zaměřuje na hlavní priority, očekávání a dopad. Kromě toho upgradují uživatelské prostředí v nástroji pomocí tipů, zdrojů a doprovodných materiálů. Nakonec přidávají pokyny k aktivaci základních priorit celé společnosti.
2 Hodnocení výkonu jsou základní součástí našeho přístupu k výkonu a vývoje ve společnosti Contoso. […]
Shrnutí výše uvedené e-mailové zprávy:
Klíčové body:
Společnost Contoso zavádí změny prostředí pro kontrolu výkonu na základě zpětné vazby od zaměstnanců.
• Změny zahrnují nové zaměření na základní priority, očekávání a dopad; upgradované uživatelské prostředí; a nové pokyny k základním prioritám celé společnosti.
• Kontroly výkonu jsou čas odrážet minulý výkon a učení a také plánovat budoucí priority a příležitosti růstu.
• Zaměstnanci a manažeři by měli předem napsat komentáře ke schůzce kontroly výkonu.
• Za rok by měly existovat alespoň dvě kontroly výkonu.
• Časová investice pro každou recenzi by měla zůstat přibližně stejná.

Podpůrný obsah

Podpůrný obsah je informace, které model může nějakým způsobem ovlivnit výstup. Liší se od primárního obsahu v tom, že není hlavním cílem úkolu, ale obvykle se používá společně s primárním obsahem. Mezi běžné příklady patří kontextové informace, jako je aktuální datum, jméno uživatele, uživatelské předvolby atd. Následující příklad používá podpůrný obsah, který pomáhá uspořádat sadu plánovaných workshopů pro uživatele. Bez podpory (důležitých témat) model jednoduše vypíše workshopy (zkrácené pro zobrazení), když je informován o mých důležitých tématech, model dokáže přesně seskupit schůzky.

Podpůrný obsah Instrukce Dokončení
Bez Seznam workshopů:
Popis názvu
Plánování workshopu, prosím, připojte se k nám, abychom zahájili náš workshop! Poslechněte si naše vedoucí pracovníky o prioritách a učení napříč skupinami pro nadcházející rok. Pozvánka na tuto událost již byla odeslána všem v [...]
Shrňte výše uvedené workshopy seskupené podle tématu:
Seznam workshopů:
Zahájení plánování workshopu
-Plánování workshopu zabalení
– Základní meetup
- Perspektivy řízené zákazníky
-Dopad a klíčové oblasti zaměření
-Osvědčené postupy
-Urychlení přijetí aplikace [...]
With Seznam workshopů:
Popis názvu
Plánování workshopu, prosím, připojte se k nám, abychom zahájili náš workshop! Poslechněte si naše vedoucí pracovníky o prioritách a učení napříč skupinami pro nadcházející rok. Pozvánka na tuto událost již byla odeslána všem v [...]
Moje důležitá témata: dotazování, vyhledávání, modely GPT
Shrňte výše uvedené workshopy seskupené podle mých důležitých témat:
1. Prompt Engineering:
- Nové tipy pro přípravu výzvy
- Umění prompt engineering
2. Hledání:
-Úvod do vektorového vyhledávání pomocí vkládání
3. Modely GPT:
- Úvod do GPT-4
- GPT-35-Turbo do hloubky.

Pokyny pro konkrétní scénáře

Principy přípravy výzev je sice možné generalizovat napříč mnoha různými typy modelů, ale některé modely očekávají specializovanou strukturu výzev. V případě modelů GPT Pro Azure OpenAI existují v současné době dvě různá rozhraní API, ve kterých přichází do hry příprava výzvy:

  • Rozhraní API pro dokončování chatu
  • Rozhraní API pro dokončování

Každé rozhraní API vyžaduje, aby se vstupní data naformátovala odlišně, což má vliv na celkový návrh výzvy. Rozhraní API pro dokončování chatu podporuje modely GPT-35-Turbo a GPT-4. Tyto modely jsou navržené tak, aby vstupy naformátovaly v konkrétním přepisu podobném chatu uloženém v poli slovníků.

Rozhraní API pro dokončování podporuje starší modely GPT-3 a má mnohem flexibilnější požadavky na zadávání, protože přebírá řetězec textu bez konkrétních pravidel formátu.

Techniky v této části vás naučí strategie pro zvýšení přesnosti a základu odpovědí, které vygenerujete pomocí velkého jazykového modelu (LLM). Je však důležité si uvědomit, že i při efektivním použití přípravy výzvy je potřeba ověřit odpovědi, které modely vygenerují. Jen proto, že pečlivě sestavená výzva fungovala dobře pro konkrétní scénář, neznamená to, že se obecněji zobecní pro určité případy použití. Pochopení omezení LLM je stejně důležité jako pochopení toho, jak využívat své silné stránky.

Tato příručka nezabíná do hloubky mechaniky struktury zpráv pro dokončování chatu. Pokud s modely dokončování chatu pracujete programově, doporučujeme napřed přečíst našeho průvodce dokončováním chatu v rozhraní API pro dokončování chatu.

Poznámka:

Všechny příklady v této části příručky byly testovány na základní model GPT-4 v angličtině. Pokud čtete lokalizovanou verzi tohoto článku v jiném jazyce, představují tyto odpovědi lokalizovaný překlad výsledků v angličtině. Další informace o potenciálních omezeních v závislosti na tom, jaký jazyk používáte k zobrazení výzvy k zobrazení výzvy k modelu, najdete v naší poznámce k transparentnosti zodpovědné umělé inteligence.

Učení s několika snímky

Běžným způsobem přizpůsobení jazykových modelů novým úkolům je použití několika snímků učení. V rámci několika snímků učení se jako součást výzvy zobrazí sada příkladů trénování, která modelu poskytne další kontext.

Při použití rozhraní API pro dokončování chatu může řada zpráv mezi uživatelem a asistentem (napsaným v novém formátu výzvy) sloužit jako příklady pro několik snímků učení. Tyto příklady lze použít k vytvoření modelu, aby reagoval určitým způsobem, emuloval konkrétní chování a odpovědi na běžné otázky.

Systémová zpráva Příklady s několika snímky
Asistent je inteligentní chatovací robot navržený tak, aby uživatelům pomohl zodpovědět své otázky související s daněmi.
Instrukce
- Odpovězte pouze na otázky související s daněmi.
- Pokud si nejste jistí odpovědí, můžete říct "Nevím" nebo "Nejsem si jistý" a doporučit uživatelům přejít na web IRS, kde najdete další informace.
Uživatel – "Kdy potřebuji podat své daně?"
Asistent - "V roce 2023 budete muset podat své daně do 18. dubna. Datum spadá po obvyklém termínu 15. dubna, protože 15. dubna spadá do soboty v roce 2023. Další podrobnosti najdete v tématu https://www.irs.gov/filing/individuals/when-to-file "

Uživatel – "Jak můžu zkontrolovat stav refundace daně?"
Asistent - "Stav refundace daně můžete zkontrolovat návštěvou https://www.irs.gov/refunds "

Výše uvedená tabulka popisuje základní strukturu výzvy, ale podrobné vysvětlení přesného formátu výzvy, který budete potřebovat, najdete v průvodci dokončením chatu.

Nechatovací scénáře

I když je rozhraní API pro dokončování chatu optimalizované tak, aby fungovalo s více konverzacemi, můžete ho použít i pro nechatovací scénáře. Například pro scénář analýzy mínění můžete použít následující výzvu:

Systémová zpráva Uživatelská Pomocník
Jste asistent navržený tak, aby analyzoval mínění z dat řeči. Uživatelé vloží řetězec textu a odpovíte posouzením odpovědi mluvčího. Sazba v měřítku 1–10 (10 nejvyšší). Vysvětlete, proč bylo toto hodnocení uděleno. Ahoj, děkuji vám za volání contoso lékárny, kteří jsem mluvil s dnes, chápu vaši frustraci mary um mi říct, co přesně se snažíte dosáhnout OK uh jistě rád, že pro vás jednou zkontroluji, že jsem tady, že jste byli na obecné formě lipitor je, že správné OK uh tak vidím, že váš lékař přestal předplacet tyto léky ve dvaceti dvaceti skutečně OK uh uh Jo, rád bych vám to zkontroloval, protože někdy je v systému mezera a to prostě není hlášeno, takže se podívejme tady jen chvíli, takže vidím zde, že váš lékař měl tyto léky předepsané od dvaceti do dvaceti dvaceti dvaceti jedna OK um ano podle nejnovějších záznamů, které poskytuje kancelář lékaře, jste nyní na jiném lékovém metforminu by Líbí se vám, abychom se chystli a vyplnili tento předpis pro vás, abyste si mohli vyzvednout trochu formy v pěti stovkách miligramů uh jste velmi vítejte mary, dejte nám prosím vědět, jestli je tu něco jiného, co pro vás dnes můžeme udělat. Hodnocení mínění: 8
Mluvčí v tomto textu se zdá být zdvořilý, užitečný a trpělivý při řešení problémů zákazníka. Vezmou si čas na kontrolu informací, poskytnou jasné vysvětlení a nabídnou pomoc. Hodnocení ale není 10, protože v některých částech konverzace stále existuje stopa nejistoty, která nemusí zákazníkovi sdělit úplnou důvěru.

Začněte s jasnými pokyny

Důležité informace o sekvenci se zobrazí v příkazovém řádku. Je to proto, že modely stylu GPT jsou vytvořeny určitým způsobem, který definuje, jak zpracovávají vstup. Náš výzkum naznačuje, že před sdílením dalších kontextových informací nebo příkladů může modelu pomoct vytvořit výstupy s vyšší kvalitou.

Poznámka:

Přestože se tato technika stále obecně doporučuje, na rozdíl od předchozích verzí modelu (GPT-3 a předchozích), naše testování ukázalo, že odezva modelu s modely ChatGPT a GPT-4 byla stejná bez ohledu na to, jestli se technika využívá. V následujícím příkladu vidíme, že přidání příkazu "Několik zdrojů ... erupce" na začátku nebo na konci výzvy nezpůsobila žádnou změnu v konečné odpovědi modelu.

Systémová zpráva Uživatelská Pomocník
Jste asistent umělé inteligence, který pomáhá lidem najít informace. Vaším úkolem je ověřit, jestli příkaz "Několik zdrojů zmíní šanci na další velkou erupci" je podporován konkrétní uvozovkou z následující sady fragmentů kódu.
---
ÚRYVKY
[1] 14% pravděpodobnost, že megaquake udeří Do Seattlu, odborníci říkají
SEATTLE - V příštích 50 letech existuje 14% pravděpodobnost, že zemětřesení Cascadia 9 dosáhne Seattlu, odhady amerického geologického průzkumu. "Bohužel nemůžeme...

[2] Odborníci na zemětřesení prokládají nejnovější výhled na Seattle 'Really Big One'
"Říkáme, že v příštích 50 letech je přibližně 14% šance na další zemětřesení o velikosti-9," řekl geofyzik na University of Washington...
---
Je výrok "Několik zdrojů zmíní šanci na další velké erupce" přímo implikuje nebo uvádí fragmenty kódu?
Ne, příkaz není přímo implicitní ani uvedený fragmenty kódu. Fragmenty kódu zmiňují šanci na "megaquake" a "velikost 9 kaskádového zemětřesení" v příštích 50 letech, ale nezmiňujte šanci na další velkou erupci.

Opakování pokynů na konci

Modely můžou být náchylné k předsudkům ekence, což v tomto kontextu znamená, že informace na konci výzvy můžou mít větší vliv na výstup než informace na začátku výzvy. Proto je vhodné experimentovat s opakováním pokynů na konci výzvy a vyhodnocením dopadu na vygenerovanou odpověď.

Úvod do výstupu

To odkazuje na zahrnutí několika slov nebo frází na konec výzvy k získání odpovědi modelu, která následuje za požadovaným formulářem. Například pomocí upozornění, jako “Here’s a bulleted list of key points:\n- ” je například může pomoct zajistit, aby byl výstup formátovaný jako seznam odrážek.

Systémová zpráva Uživatelská Pomocník
Jste asistent umělé inteligence, který pomáhá lidem najít informace. Odpovězte co nejvíce slov. John Smith je ženatý s Lucy Smith. Mají pět dětí a pracuje jako softwarový inženýr v Microsoftu. Jaké vyhledávací dotazy mám udělat, abych to zkontroloval? ## Jedním z možných vyhledávacích dotazů je: John Smith se oženil s Lucy Smith pět dětských softwarových inženýrů Microsoftu

V předchozí výzvě je text Jedním možným vyhledávacím dotazem: vytvoří model tak, aby vytvořil jeden výstup. Bez tohoto upozornění model vytvoří jako výstup několik vyhledávacích dotazů.

Přidání jasné syntaxe

Použití jasné syntaxe pro vaši výzvu , včetně interpunkce, nadpisů a značek oddílů, pomáhá komunikovat záměr a často usnadňuje analýzu výstupů.

V následujícím příkladu byly oddělovače (--- v tomto případě) přidány mezi různé zdroje informací nebo kroků. To umožňuje použití --- jako stav zastavení pro generování. Kromě toho se nadpisy oddílů nebo speciální proměnné zobrazují velkými písmeny, aby se odlišily.

Systémová zpráva Uživatelská Pomocník
Jste asistent umělé inteligence, který pomáhá lidem najít informace. Přečtete si odstavec a pak vydáte dotazy vyhledávacímu webu, abyste ho mohli zkontrolovat. Vysvětlujte také dotazy.
---
ODSTAVEC
John Smith je ženatý s Lucy Smith. Mají pět dětí a pracuje jako softwarový inženýr v Microsoftu. Jaké vyhledávací dotazy mám udělat, abych to zkontroloval?
---
DOTAZY
1. "John Smith Microsoft" - Chcete-li zkontrolovat, zda je John Smith skutečně zaměstnaný v Microsoftu.
2. "John Smith Lucy Smith" - Chcete-li zkontrolovat, zda je John Smith ženatý s Lucy Smith.
3. "John Smith děti" - Chcete-li zkontrolovat, zda John Smith má pět dětí.

Pokud si nejste jistí, jakou syntaxi použít, zvažte použití Jazyka Markdown nebo XML. Modely byly vytrénovány na rozsáhlém webovém obsahu v JAZYCE XML a Markdownu, což může poskytovat lepší výsledky.

Rozdělení úkolu

Velké jazykové modely (LLM) často fungují lépe, pokud je úloha rozdělená do menších kroků. Například ve výzvě vyhledávacího dotazu, na kterou jste odkazovali dříve, může být výzva restrukturalizována tak, aby byl model nejprve instruován k extrahování relevantních faktů a potom pokyn k vygenerování vyhledávacích dotazů, které lze použít k ověření těchto faktů.

Systémová zpráva Uživatelská Pomocník
Jste asistent umělé inteligence, který pomáhá lidem najít informace. Přečtete si odstavec a pak vydáte dotazy vyhledávacímu webu, abyste ho mohli zkontrolovat.
---
ODSTAVEC
John Smith je ženatý s Lucy Smith. Mají pět dětí a pracuje jako softwarový inženýr v Microsoftu. Jaké vyhledávací dotazy mám udělat, abych to zkontroloval?
---
Teď extrahujete faktické deklarace identity a vydáte dotazy, abyste je zkontrolovali. Při vydávání dotazu použijte funkci SEARCH("query")

FAKTICKÉ NÁROKY
1. John Smith je ženatý Lucy Smith
2. Mají pět dětí
3. Pracuje jako softwarový inženýr v Microsoftu

DOTAZY
SEARCH("John Smith se oženil Lucy Smith")
SEARCH("John Smith family size")
SEARCH("John Smith Microsoft software engineer")

Všimněte si použití jasné syntaxe k rozlišení oddílů a úvodu výstupu. V tomto jednoduchém příkladu není rozdělení úkolu z jednoho na dva kroky velmi dramatické, ale když se to snažíte udělat pro větší část textu s mnoha faktickými tvrzeními, může rozdělení úkolu výrazně změnit.

Použití cenových možností

Někdy můžeme model získat tak, aby používal cenovou dostupnost , a nespoléhat se na své vlastní parametry pro informace a odpovědi. Hledání může být například cenová dostupnost, která pomáhá zmírnit odpovědi na základě prostředků infrastruktury a získat aktuální informace.

Jedním z jednoduchých způsobů, jak použít cenovou dostupnost, je zastavit generování, jakmile model vygeneruje volání cenové dostupnosti, a pak výsledky vložte zpět do výzvy. Níže je příklad toho, co by následné volání mohlo být po provedení výše uvedených volání SEARCH . Všimněte si, jak jsme výsledky hledání vložili do výzvy a nahradili předchozí volání FUNKCE SEARCH .

Systémová zpráva Uživatelská Pomocník
Jste asistent umělé inteligence, který pomáhá lidem najít informace. Přečtete si odstavec, extrahujete faktické deklarace a pak je pomocí výsledků vyhledávacího webu zkontrolujete.
---
ODSTAVEC
John Smith je ženatý s Lucy Smith. Mají pět dětí a pracuje jako softwarový inženýr v Microsoftu. Jaké vyhledávací dotazy mám udělat, abych to zkontroloval?
---
FAKTICKÉ NÁROKY
John Smith je ženatý s Lucy Smith
- John a Lucy mají pět dětí
- John pracuje jako softwarový inženýr v Microsoftu
---
Tady jsou různé vyhledávací dotazy vydané pro zkoumání výše uvedených deklarací identity:
VYHLEDÁVACÍ DOTAZY
John Smith se oženil s Lucy Smithovou
- John Smith počet dětí
– Softwarový inženýr John Smith od Microsoftu
---
Tady jsou fragmenty výsledků hledání:
ÚRYVKY:
[1] Svatba Johna Smitha byla 25. září 2012 ...
[2] John Smith byl doprovázen svou ženou Lucy na párty
[3] John byl doprovázen fotbalovou hrou svými dvěma dcerami a třemi syny
[4] Po útratě 10 let v Microsoftu založil Smith svůj vlastní startup, Tailspin Toys
[5] John M je novák města a on se oženil s Fionou. Mají dceru jménem Lucy
---
Vzhledem k fragmentům kódu zkontrolujte každou z výše uvedených faktových tvrzení:
John Smith je ženatý s Lucy Smith: Potvrzeno. Fragment kódu [1] a [2] zmiňují John Smithovu ženu jako Lucy.

John a Lucy mají pět dětí: Potvrzeno. Fragment kódu [3] uvádí, že John byl doprovázen svými dvěma dcerami a třemi syny.

- John pracuje jako softwarový inženýr v Microsoftu: Částečně potvrzeno. Fragment kódu [4] zmíní, že John strávil 10 let v Microsoftu, ale explicitně neuvádí, že tam aktuálně pracuje. Další výzkum může být nutný k potvrzení jeho současného pracovního stavu.

Řetěz myšlenkových výzev

Jedná se o variantu techniky rozdělení úkolu. Místo rozdělení úkolu na menší kroky se v tomto přístupu dá odpověď modelu pokyn, aby postupoval krok za krokem a představil všechny příslušné kroky. Tím se snižuje možnost nepřesnosti výsledků a usnadňuje vyhodnocení odezvy modelu.

Systémová zpráva Uživatelská Pomocník
Jste asistent umělé inteligence, který pomáhá lidem najít informace. Kdo byl nejvíce zdobený (maximální medaile) individuální sportovce v olympijských hrách, které se konaly v Sydney? V odpovědi proveďte podrobný přístup, citujte zdroje a před sdílením konečné odpovědi v následujícím formátu uveďte odůvodnění: ANSWER je: <name> Krok 1: Určete rok olympijských her v Sydney. Olympijské hry v Sydney se konaly v roce 2000.

Krok 2: Najděte seznam jednotlivých sportovců, kteří vyhráli více medailí v olympijských hrách v Sydney 2000.

Podle oficiálních webových stránek olympijských her bylo několik individuálních sportovců, kteří vyhráli více medailí v olympijských hrách v Sydney 2000. Mezi některé z názvových jmen patří:
• Ian Thorpe (Austrálie) - 3 zlato, 2 stříbro, 0 bronz
• Pieter van den Hoogenband (Nizozemsko) - 2 zlato, 0 stříbro, 2 bronzové
• Lenny Krayzelburg (USA) - 3 zlato, 0 stříbro, 0 bronzová
• Inge de Bruijn (Nizozemsko) - 3 zlato, 1 stříbro, 0 bronz

Krok 3: Určete sportovce s nejvíce medailemi. Po kontrole seznamu jednotlivých sportovců, kteří vyhráli více medailí v olympijských hrách v Sydney 2000, vidíme, že sportovce s největším počtem medailí je Ian Thorpe z Austrálie, který vyhrál celkem 5 medailí (3 zlaté a 2 stříbro).

Odpověď je tedy: Ian Thorpe.

Určení výstupní struktury

Použití výzvy k určení struktury výstupu může mít významný vliv na povahu a kvalitu výsledků. Někdy vstupy systémových zpráv jako "zapisovat pouze pravdivá fakta" nebo "nevytváření informací" nemusí být přiměřené zmírnění rizik. Místo toho můžete požádat o odpověď modelu tak, aby obsahovala citace, což může vést ke snížení prevalenci nesprávných odpovědí.

Pokud dáváte modelu pokyn, aby při vytváření příkazů citoval zdrojový materiál, jsou tyto příkazy mnohem pravděpodobnější, že budou uzemněny. Když žádáte o citace, musí model při každém vygenerování odpovědi provést dvě chyby: první chyba je vytvořenou odpovědí a druhá je chybná citace. Všimněte si, že čím blíž je citace textem, který podporuje, tím kratší vzdálenost před modelem musí předjímat citaci, což naznačuje, že vložené citace jsou lepším zmírněním pro generování nepravdivého obsahu než citace na konci obsahu.

Podobně pokud model požádáte o extrakci faktických tvrzení z odstavce, může extrahovat složené příkazy, jako je "X dělá Y AND Z" (což může být obtížnější ověřit). Můžete se tomu vyhnout zadáním výstupní struktury, například (entity1, relace, entita2).

Následující příklady ukazují použití citací a nasměrování odpovědi modelu tak, aby odpovídaly definované struktuře.

Systémová zpráva Uživatelská Pomocník
Jste asistent umělé inteligence, který pomáhá lidem najít informace V následující konverzaci uveďte různé chování, které vykazuje agent zákaznické podpory.
---
Ahoj, děkuji vám za volání contoso lékárny, kteří jsem mluvil s dnes, chápu vaši frustraci mary um mi říct, co přesně se snažíte dosáhnout OK uh jistě rád, že pro vás jednou zkontroluji, že jsem tady, že jste byli na obecné formě lipitor je, že správné OK uh tak vidím, že váš lékař přestal předplacet tyto léky ve dvaceti dvaceti skutečně OK uh uh Jo, rád bych vám to zkontroloval, protože někdy je v systému mezera a to prostě není hlášeno, takže se podívejme tady jen chvíli, takže vidím zde, že váš lékař měl tyto léky předepsané od dvaceti do dvaceti dvaceti dvaceti jedna OK um ano podle nejnovějších záznamů, které poskytuje kancelář lékaře, jste nyní na jiném lékovém metforminu by Líbí se vám, abychom se chystli a vyplnili tento předpis pro vás, abyste si mohli vyzvednout trochu formy v pěti stovkách miligramů uh jste velmi vítejte mary, dejte nám prosím vědět, jestli je tu něco jiného, co pro vás dnes můžeme udělat.
---
Jak reagoval agent zákaznické podpory?
Klasifikujte a uveďte jejich různé chování a uveďte důvod klasifikace pomocí funkce BEHAVIOR("reason") formátu.
1. Zdvořilé chování pozdravu("Agent zahájí konverzaci s zdvořilým pozdravem a požádá o jméno volajícího")
2. Empatitické CHOVÁNÍ("Agent uznává frustraci Mary a snaží se pochopit její obavy")
3. Pozorné CHOVÁNÍ("Agent naslouchá problému zákazníka a žádá o další podrobnosti")
4. Proaktivní CHOVÁNÍ ("Nabídky agentů ke kontrole problému pro zákazníka")
5. Informativní CHOVÁNÍ("Agent poskytuje relevantní informace o historii předpisů zákazníka")
6. Důkladné CHOVÁNÍ("Agent kontroluje případné mezery v systému a poskytuje úplnou odpověď")
7. Confirmatory BEHAVIOR("Agent potvrzuje aktuální léky se zákazníkem")
8. Chování orientované na řešení ("Agent nabízí vyplnit nový předpis pro zákazníka")
9. Zdvořilé CHOVÁNÍ("Agent díky zákazníkovi a v případě potřeby nabízí další pomoc")
Systémová zpráva Uživatelská Pomocník
Jste asistent umělé inteligence, který pomáhá lidem najít informace. Seskupte následující titulky zpráv do kategorií témat na základě vzorů, které jsou vidět v textu. Uveďte také důvod, jak byly tyto kategorie definovány.
Output format (Výstupní formát):
{
"TOPIC_NAME": "",
"NADPISY": [],
"DŮVOD": ""
}

Nadpisy vstupních zpráv:
1. "Od knih po prezentace v 10s s AR + ML"
2. "Demo z roku 1993 z 32-let-let Yann LeCun ukazující z první Světové convolutional Network for Text Recognition"
3. "Model pohybu prvního řádu použitý k animaci obrazů"
4. "Robinhood a další zprostředkovatelé doslova blokují nákup $GME, $NOK, $BB, $AMC; povolit prodej"
5. "United Airlines stock down over 5% premarket trading"
Výstup:

{
"ARTIFICIAL_INTELLIGENCE": {
"NADPISY": [
"Od knih k prezentacím v 10s s AR + ML",
"Demo z roku 1993 z 32-let-rok-old Yann LeCun předvádí z první Světové convolutional Network for Text Recognition",
"Model pohybu prvního řádu použitý k animaci obrazů"
],
"ODŮVODNĚNÍ": "Tyto nadpisy se vztahují k umělé inteligenci, strojovému učení a jejich aplikacím v různých oblastech."
},
"FINANCIAL_MARKETS": {
"NADPISY": [
"Robinhood a další zprostředkovatelé doslova blokují nákup $GME, $NOK, $BB, $AMC; povolit prodej",
"United Airlines stock down over 5% premarket trading",
"Bitcoin byl před rokem téměř $20,000"
],
"ODŮVODNĚNÍ": "Tyto nadpisy souvisejí s finančními trhy, akciemi, burzami a obchodními platformami."
}
}

Parametry teploty a Top_p

Změna parametru teploty změní výstup modelu. Parametr teploty lze nastavit v rozmezí od 0 do 2. Vyšší hodnota, například 0,7, způsobí, že výstup bude náhodnější a vytvoří více divergentní odpovědi, zatímco nižší hodnota, například. 0.2, zvýžňuje výstup zaměření a beton. Fiktivní příběh by mohl být generován pomocí vyšší teploty. Vzhledem k tomu, že k vygenerování právního dokumentu se doporučuje použít mnohem nižší teplotu. Top_probability je další parametr a podobá se teplotě v tom, že také řídí náhodnost odpovědi modelu, ale dělá to jiným způsobem. Obecné doporučení je změnit jeden z těchto dvou parametrů najednou, nikoli obojí.

Poskytnutí kontextu uzemnění

Jedním z nejúčinnějších způsobů, jak poskytnout spolehlivé odpovědi, je poskytnout datům modelu, aby nakreslily své odpovědi z (zemírající data). Pokud váš případ použití využívá aktuální a spolehlivé informace a nejedná se čistě o kreativní scénář, důrazně doporučujeme poskytovat podkladová data. Obecně platí, že čím blíže můžete získat zdrojový materiál k konečné formě požadované odpovědi, tím méně práce, kterou model potřebuje udělat, což znamená, že existuje menší příležitost k chybám. Tady je příklad, kdy je v systému k dispozici nedávný blog popisující spuštění GPT-4 ve službě Azure OpenAI a požádal o pojmenování některých jeho raných zákazníků.

Systémová zpráva Uživatelská Pomocník
Jste asistent umělé inteligence, který pomáhá lidem najít informace. Odpovědi poskytnete výhradně z následujícího textu a odpovíte na 100 slov nebo méně:
"V Microsoftu neustále objevujeme nové způsoby, jak uvolnit kreativitu, odemykat produktivitu a dovednosti na úrovni, aby mohli využívat AI více lidí. To umožňuje našim zákazníkům ...

… tím snižuje pravděpodobnost, že model generuje škodlivou odpověď."1

Odpovězte na 100 slov nebo méně. Seznamy odrážek používejte všude, kde je to možné.
Kdo jsou někteří z prvních zákazníků modelů GPT-4 služby Azure OpenAI Service? Tady jsou někteří z prvních zákazníků modelů GPT-4 služby Azure OpenAI:
- Epic Healthcare: Plánují používat GPT-4, aby pomohli lékařům a zdravotní sestram strávit méně času na zadávání a vyšetřování dat.
– Coursera: Používají službu Azure OpenAI s GPT-4 k vytvoření nového výukového prostředí využívajícího AI na své platformě.
- Coca-Cola: Používají Azure OpenAI k vytvoření znalostního centra a plánují využívat multimodální funkce GPT-4 pro marketing, reklamu, vztahy s veřejností a vztahy se zákazníky.
– Ostatní společnosti všech velikostí používají Azure AI ke zlepšení zkušeností zákazníků, shrnutí dlouhodobého obsahu, psaní softwaru a snížení rizika předpovídáním správných daňových dat.

1 Text z webu Azure OpenAI GPT-4 launch blog.

Osvědčené postupy

  • Buďte specifická. Ponechávejte co nejmenší prostor interpretaci. Omezte provozní prostor.
  • Buďte popisní. Používejte analogii.
  • Poklikejte dolů. Někdy se může stát, že se budete muset do modelu opakovat. Udílejte pokyny před a po primárním obsahu, používejte instrukce a nápovědy atd.
  • Záleží na pořadí. Pořadí, ve kterém prezentujete informace modelu, může mít vliv na výstup. Bez ohledu na to, jestli před obsah vložíte pokyny ("sumarizovat následující...") nebo za ("sumarizovat výše uvedené...") může být rozdíl ve výstupu. Dokonce i na pořadí několika příkladů může záležet. To se označuje jako odchylka aktuálnosti.
  • Dejte modelu "out". Někdy může být užitečné dát modelu alternativní cestu, pokud nemůže dokončit přiřazený úkol. Když třeba položíte otázku na část textu, můžete zahrnout něco jako "odpovědět s textem nenalezena", pokud odpověď není k dispozici. To může modelu pomoct vyhnout se generování falešných odpovědí.

Prostorová efektivita

I když se velikost vstupu s každou novou generací modelů GPT zvětšuje, budou i nadále existovat scénáře, které poskytují více dat, než model dokáže zpracovat. Modely GPT rozdělují slova na tokeny. I když běžná slova s více slabiky jsou často jedním tokenem, méně běžná slova se přerušují slabiky. Tokeny můžou být někdy čítače intuitivní, jak je znázorněno v příkladu níže, který ukazuje hranice tokenů pro různé formáty kalendářních dat. V tomto případě je pravopis celého měsíce efektivnější než plně číselné datum. Aktuální rozsah podpory tokenů pochází z 2 000 tokenů s dřívějšími modely GPT-3 až na 32 768 tokenů s 32k verzí nejnovějšího modelu GPT-4.

Snímek obrazovky s řetězcem textu se zvýrazněnými barvami, které označují hranice tokenu

Vzhledem k tomuto omezenému prostoru je důležité ho co nejefektivněji používat.

  • Tabulky – jak je znázorněno v příkladech v předchozí části, modely GPT dokážou snadno pochopit tabulková formátovaná data. Může to být efektivní způsob, jak zahrnout data místo před každým polem s názvem (například json).
  • Prázdné znaky – po sobě jdoucí prázdné znaky jsou považovány za samostatné tokeny, což může být snadný způsob, jak ztrácet místo. Mezery před slovem se na druhou stranu obvykle považují za součást stejného tokenu jako slovo. Pečlivě sledujte použití prázdných znaků a nepoužívejte interpunkci, když mezera sama udělá.