Prompt engineering
Nejnovější moderní pokroky v prompt engineeringu: komplexní průvodce

Prompt engineering, umění a věda vytváření promptů, které vyvolávají požadované odpovědi z LLM, se stal kritickou oblastí výzkumu a vývoje.
Od zlepšování schopností rozumu až po umožnění bezproblémové integrace s externími nástroji a programy, nejnovější pokroky v prompt engineeringu odemykají nové hranice v oblasti umělé inteligence. níže diskutujeme o nejnovějších pokročilých technikách a strategiích, které formují budoucnost prompt engineeringu.
Pokročilé strategie promptingu pro komplexní řešení problémů
Zatímco CoT prompting se ukázal jako efektivní pro mnoho úloh rozumu, výzkumníci prozkoumali pokročilejší strategie promptingu pro řešení ještě komplexnějších problémů. Jednou z takových přístupů je Least-to-Most Prompting, který rozděluje komplexní problém na menší, lépe zvladatelné podproblémy, které se řeší nezávisle a poté se kombinují pro dosažení konečného řešení.
Další inovativní technikou je Tree of Thoughts (ToT) prompting, který umožňuje LLM generovat více linií rozumu nebo “myšlenek” paralelně, vyhodnocovat svůj vlastní pokrok směrem k řešení a vracet se nebo prozkoumávat alternativní cesty podle potřeby. Tento přístup využívá vyhledávací algoritmy, jako je šířková nebo hloubková prohledávání, umožňující LLM zapojit se do lookahead a backtracking během procesu řešení problému.
Integrace LLM s externími nástroji a programy
Zatímco LLM jsou neuvěřitelně silné, mají inherenty omezení, jako je neschopnost přístupu k aktuálnímu informace nebo provedení přesného matematického rozumu. Pro řešení těchto nedostatků výzkumníci vyvinuli techniky, které umožňují LLM bezproblémově integrovat s externími nástroji a programy.
Jedním z pozoruhodných příkladů je Toolformer, který učí LLM identifikovat scénáře, které vyžadují použití externích nástrojů, specifikovat, který nástroj použít, poskytnout relevantní vstup a začlenit výstup nástroje do konečného odpovědi. Tento přístup zahrnuje konstrukci syntetické trénovací datové sady, která demonstruje správné použití různých text-to-text API.
Další inovativní framework, Chameleon, používá “plug-and-play” přístup, který umožňuje centrálnímu LLM-založenému kontroléru generovat přirozené jazykové programy, které komponují a vykonávají širokou škálu nástrojů, včetně LLM, vizuálních modelů, vyhledávacích engine a Python funkcí. Tento modulární přístup umožňuje Chameleonu řešit komplexní, multimodální úkoly rozumu tím, že využívá silné stránky různých nástrojů a modelů.
Základní strategie promptingu
Zero-Shot Prompting
Zero-shot prompting zahrnuje popis úkolu v promptu a žádání modelu o řešení bez jakýchkoli příkladů. Například pro překlad “cheese” do francouzštiny by zero-shot prompt mohl být:
Přeložte následující anglické slovo do francouzštiny: cheese.
Tento přístup je přímočarý, ale může být omezen ambiguitou popisu úkolu.
Few-Shot Prompting
Few-shot prompting vylepšuje zero-shot prompting tím, že zahrnuje několik příkladů úkolu. Například:
Přeložte následující anglická slova do francouzštiny:
1. apple => pomme
2. house => maison
3. cheese => fromage
Tato metoda snižuje ambiguitu a poskytuje jasnější vodítko pro model, využívající schopnosti modelu učit se v kontextu.
Instruction Prompting
Instruction prompting explicitně popisuje požadovaný výstup, což je zvláště efektivní u modelů trénovaných k následování instrukcí. Například:
Přeložte slovo "cheese" do francouzštiny. Správný překlad je "fromage."
Modely jako GPT-4 byly speciálně fine-tunovány pro následování takových instrukcí přesně.
Pokročilé techniky promptingu
Zlepšení schopností rozumu pomocí Chain-of-Thought promptingu
Jedním z nejvýznamnějších průlomů v prompt engineeringu byla vývoj Chain-of-Thought (CoT) promptingu. Tato technika má za cíl vyvolat a zlepšit schopnosti rozumu LLM tím, že je povzbuzuje k generování krok za krokem myšlenkového procesu nebo rationálu předtím, než poskytne konečnou odpověď.

Left: Traditional methods of prompting LLMs rely on generic inputs (0-shot CoT) or necessitate labeled examples (few-shot CoT). Right: The novel approach prompts LLMs to self-create relevant examples prior to problem-solving, removing the need for labeling while customizing examples to each unique problem
CoT prompting funguje tak, že LLM je představen s příklady, které zahrnují nejen vstup a výstup, ale také mezitímní kroky rozumu nebo “řetězec myšlenek”, které vedou k řešení. Získáním zkušeností z těchto exemplářů může LLM poté generovat svůj vlastní řetězec myšlenek, když je představen s novými problémy, zlepšuje tak svou schopnost řešit komplexní úkoly rozumu.
Příklad:
Vstup: Natalie má 3 jablka a chce je rozdělit rovnoměrně se svými 2 přáteli. Kolik jablek dostane každý člověk? Řetězec myšlenek: Okay, pojďme to rozdělit krok za krokem:
- Natalie má 3 jablka
- Chce je rozdělit rovnoměrně se svými 2 přáteli
- Takže je tam 3 lidí (Natalie a její 2 přátelé)
- Pro rozdělení jablek rovnoměrně, dělíme celkový počet jablek (3) počtem lidí (3)
- 3 děleno 3 je 1
- Takže každý člověk dostane 1 jablko. Výstup: Každý člověk dostane 1 jablko.
Explicitně generováním myšlenkového procesu prokázaly LLM jako GPT-3 a Codex významné zlepšení v aritmetických, společenských a symbolických úkolech rozumu.
Sebe-konzistence
Sebe-konzistence zlepšuje spolehlivost CoT promptingu generováním více řetězců myšlenek a přijetím většinového hlasu o konečné odpovědi. Tato metoda snižuje dopad jakéhokoli jednotlivého chybného řetězce myšlenek.
Least-to-Most Prompting
Least-to-most prompting rozděluje komplexní problémy na jednodušší podproblémy, řeší každý z nich sekvenčně a používá kontext předchozích řešení pro informování následujících kroků. Tento přístup je prospěšný pro více-krokové úkoly rozumu.
Nejnovější pokroky v prompt engineeringu
Prompt engineering se rychle vyvíjí a několik inovativních technik se objevilo pro zlepšení výkonu velkých jazykových modelů (LLM). Podívejme se na některé z těchto pokročilých metod podrobněji:
Auto-CoT (Automatický Chain-of-Thought Prompting)
Co to je: Auto-CoT je metoda, která automatizuje generování řetězců rozumu pro LLM, eliminuje potřebu ručně vytvořených exemplářů. Tato technika používá zero-shot Chain-of-Thought (CoT) prompting, kde je model veden k myšlení krok za krokem pro generování svých řetězců rozumu.
Jak to funguje:
- Zero-Shot CoT Prompting: Model je dán jednoduchý prompt, jako je “Pojďme to rozdělit krok za krokem”, aby povzbudil detailní myšlení.
- Různorodost demonstrací: Auto-CoT vybírá rozmanité otázky a generuje řetězce rozumu pro tyto otázky, zajišťuje tak různorodost problémů a řetězců rozumu.
Výhody:
- Automatizace: Snižuje manuální úsilí potřebné pro vytvoření demonstrací rozumu.
- Výkon: Na různých úkolech rozumu Auto-CoT dosáhl nebo překonal výkon manuálního CoT promptingu.
Komplexita-založený prompting
Co to je: Tato technika vybírá příklady s nejvyšší komplexitou (tj. nejvíce kroků rozumu) pro zařazení do promptu. Cílem je zlepšit výkon modelu na úkolech vyžadujících více kroků rozumu.
Jak to funguje:
- Výběr příkladů: Prompt je vybrán na základě počtu kroků rozumu, které obsahuje.
- Konzistence založená na komplexitě: Během dekódování jsou vzorkovány více řetězce rozumu a je přijat většinový hlas z nejkomplexnějších řetězců.
Výhody:
- Zlepšení výkonu: Substantiálně lepší přesnost na úkolech rozumu s více kroky.
- Odolnost: Účinný i při různých distribucích promptů a šumu v datech.
Progressive-Hint Prompting (PHP)
Co to je: PHP iterativně zlepšuje odpovědi modelu pomocí dříve generovaných rationálních jako náznaků. Tato metoda využívá předchozí odpovědi modelu pro vedení k správné odpovědi prostřednictvím více iterací.
Jak to funguje:
- Počáteční odpověď: Model generuje základní odpověď pomocí standardního promptu.
- Náznaky a zlepšení: Tato základní odpověď je poté použita jako náznak v následujících promptech pro zlepšení odpovědi.
- Iterativní proces: Tento proces pokračuje, dokud se odpověď nestabilizuje přes po sobě jdoucí iterace.
Výhody:
- Přesnost: Značné zlepšení v přesnosti rozumu.
- Účinnost: Snižuje počet vzorkovaných cest, zlepšuje tak výpočetní účinnost.
Decomposed Prompting (DecomP)
Co to je: DecomP rozděluje komplexní úkoly na jednodušší podúkoly, každý z nich je zpracován specifickým promptem nebo modelem. Tento modulární přístup umožňuje efektivnější zpracování složitých problémů.
Jak to funguje:
- Rozdělení úkolu: Hlavní problém je rozdělen na jednodušší podúkoly.
- Zpracování podúkolů: Každý podúkol je zpracován specifickým modelem nebo promptem.
- Modulární integrace: Tyto zpracovatelé mohou být optimalizováni, nahrazeni nebo kombinováni podle potřeby pro řešení komplexního úkolu.
Výhody:
- Flexibilita: Umožňuje snadné ladění a zlepšování specifických podúkolů.
- Škálovatelnost: Efektivně zpracovává úkoly s dlouhými kontexty a složitými podúkoly.
Hypotheses-to-Theories (HtT) Prompting
Co to je: HtT používá vědecký objevný proces, kde model generuje a ověřuje hypotézy pro řešení komplexních problémů. Tato metoda zahrnuje vytvoření knihovny pravidel z ověřených hypotéz, které model používá pro rozumné úsudky.
Jak to funguje:
- Indukční fáze: Model generuje potenciální pravidla a ověřuje je proti trénovacím příkladům.
- Vytvoření knihovny pravidel: Ověřená pravidla jsou shromážděna do knihovny pravidel.
- Dedukční fáze: Model aplikuje tato pravidla na nové problémy, využívaje knihovny pravidel pro vedení svého rozumu.
Výhody:
- Přesnost: Snižuje pravděpodobnost chyb, spoléhaje se na ověřenou sadu pravidel.
- Přenositelnost: Naučená pravidla lze přenést přes různé modely a formy problémů.
Techniky promptingu s nástroji
Toolformer
Toolformer integruje LLM s externími nástroji přes text-to-text API, umožňující modelu použít tyto nástroje pro řešení problémů, které by jinak nemohl řešit. Například LLM by mohl zavolat kalkulačku API pro provedení aritmetických operací.
Chameleon
Chameleon používá centrální LLM-založené řízení pro generování programu, který komponuje a vykonává širokou škálu nástrojů, včetně LLM, vizuálních modelů, vyhledávacích engine a Python funkcí. Tento modulární přístup umožňuje Chameleonu řešit komplexní, multimodální úkoly rozumu tím, že využívá silné stránky různých nástrojů a modelů.
GPT4Tools
GPT4Tools fine-tunuje open-source LLM pro použití multimodálních nástrojů přes self-instrukční přístup, demonstruje, že i ne-proprietary modely mohou efektivně využívat externí nástroje pro zlepšení výkonu.
Gorilla a HuggingGPT
Oba Gorilla a HuggingGPT integrují LLM s specializovanými hlubokými učícími se modely dostupnými online. Tyto systémy využívají proces retrivální fine-tunace a plánování a koordinace, aby řešily komplexní úkoly zahrnující více modelů.
Program-Aided Language Models (PALs) a Programs of Thoughts (PoTs)
Kromě integrace s externími nástroji prozkoumali výzkumníci způsoby, jak vylepšit schopnosti rozumu LLM kombinováním přirozeného jazyka s programovacími konstrukcemi. Program-Aided Language Models (PALs) a Programs of Thoughts (PoTs) jsou dva takové přístupy, které využívají kód pro augmentaci procesu rozumu LLM.
PALs povzbuzují LLM k generování rationálu, který prokládá přirozený jazyk s kódem (například Python), který lze poté spustit pro produkci konečného řešení. Tento přístup řeší běžný případ selhání, kdy LLM generuje správný řetězec myšlenek, ale produkuje nesprávnou konečnou odpověď.
Podobně PoTs využívají symbolickou matematickou knihovnu, jako je SymPy, umožňující LLM definovat matematické symboly a výrazy, které lze kombinovat a vyhodnocovat pomocí funkce SymPy. Delegováním složitých výpočtů na kódový interpret umožňují tyto techniky oddělit rozumné úsudky od výpočtu, umožňující LLM řešit složitější problémy efektivněji.
Porozumění a využití kontextových oken
Výkon LLM silně závisí na jejich schopnosti zpracovat a využít kontext poskytnutý v promptu. Výzkumníci prozkoumali, jak LLM zpracovávají dlouhé kontexty a jaký je dopad irelevantních nebo rušivých informací na jejich výstupy.
Jevem “Lost in the Middle” je zdůrazněno, jak LLM tendují věnovat více pozornosti informacím na začátku a konci kontextu, zatímco informace uprostřed jsou často přehlíženy nebo “ztraceny”. Tento vhled má důsledky pro prompt engineering, protože pečlivé umístění relevantních informací v kontextu může významně ovlivnit výkon.
Další směr výzkumu se zaměřuje na zmírnění negativních účinků irelevantního kontextu, které mohou výrazně zhoršit výkon LLM. Techniky, jako je sebe-konzistence, explicitní instrukce ignorovat irelevantní informace a zahrnutí exemplářů, které demonstrují řešení problémů s irelevantním kontextem, mohou pomoci LLM naučit se soustředit na nejrelevantnější informace.
Zlepšení schopností psaní pomocí strategií promptingu
Zatímco LLM vynikají v generování lidsky podobného textu, jejich schopnosti psaní lze dále vylepšit pomocí specializovaných strategií promptingu. Jednou z takových technik je Skeleton-of-Thought (SoT) prompting, který cílí na snížení latence sekvenčního dekódování napodobováním lidského procesu psaní.
SoT prompting zahrnuje povzbuzení LLM k generování kostry nebo náčrtu odpovědi jako první, následovaného paralelními API voláními pro vyplnění detailů každého prvku náčrtu. Tento přístup nejen zlepšuje latenci inference, ale může také vylepšit kvalitu psaní, povzbuzující LLM k lepšímu plánování a strukturování svého výstupu.
Další strategií promptingu je Chain of Density (CoD) prompting, který se zaměřuje na zlepšení hustoty informací ve shrnutích generovaných LLM. Iterativním přidáváním entit do shrnutí, zatímco délka zůstává fixní, umožňuje CoD prompting uživatelům prozkoumat kompromis mezi stručností a úplností, nakonec produkujíc více informativní a čitelná shrnutí.
Nové směry a budoucí vyhlídky
Obor prompt engineering se rychle vyvíjí, s výzkumníky neustále prozkoumávajícími nové hranice a tlačími hranice toho, co je možné s LLM. Některé z nových směrů zahrnují:
- Active Prompting: Techniky, které využívají principy aktivního učení založeného na nejistotě pro identifikaci a anotaci nejvíce prospěšných exemplářů pro řešení specifických úloh rozumu.
- Multimodální prompting: Rozšíření strategií promptingu pro zpracování multimodálních vstupů, kombinujících text, obrázky a další datové modality.
- Automatická generace promptů: Vývoj optimalizačních technik pro automatickou generaci účinných promptů přizpůsobených specifickým úlohám nebo doménám.
- Interpretovatelnost a vysvětlitelnost: Prozkoumání strategií promptingu, které zlepšují interpretovatelnost a vysvětlitelnost výstupů LLM, umožňujících lepší transparentnost a důvěru v jejich rozhodovací procesy.
Jak LLM pokračují ve vývoji a nacházejí aplikace v různých doménách, prompt engineering bude hrát zásadní roli v odemknutí jejich plného potenciálu. Používáním nejnovějších technik a strategií promptingu mohou výzkumníci a praktici vyvíjet silnější, spolehlivější a úkol-specifické AI řešení, která tlačí hranice toho, co je možné s přírodním jazykovým zpracováním.
Závěr
Obor prompt engineeringu pro velké jazykové modely se rychle vyvíjí, s výzkumníky neustále tlačími hranice toho, co je možné. Od zlepšování schopností rozumu pomocí technik, jako je Chain-of-Thought prompting, až po integraci LLM s externími nástroji a programy, nejnovější pokroky v prompt engineeringu odemykají nové hranice v oblasti umělé inteligence.














