Učení s nulovým snímkem a několika snímky
Tento článek vysvětluje učení s nulovým snímkem a učení s několika snímky pro přípravu výzev v .NET, včetně jejich primárních případů použití.
Výkon modelu GPT přináší výhody z rychlého inženýrství, praxe poskytování pokynů a příkladů modelu za účelem upřesnění jeho výstupu. Učení s nulovým snímkem a učení s několika snímky jsou techniky, které můžete použít při poskytování příkladů.
Při učení s nulovým snímkem zahrnete výzvy, ale ne doslovné dokončování. Můžete zahrnout dokončování, která se skládají jenom z upozornění. Učení s nulovým snímkem spoléhá zcela na stávající znalosti modelu k vygenerování odpovědí, což snižuje počet vytvořených tokenů a může vám pomoct řídit náklady. Učení s nulovým snímkem se ale nepřidá do znalostí modelu.
Tady je příklad výzvy s nulovým snímkem, který modelu říká, aby vyhodnotil vstup uživatele, aby určil, který ze čtyř možných záměrů vstup představuje, a pak před odpověď zadejte "Intent: ".
prompt = $"""
Instructions: What is the intent of this request?
If you don't know the intent, don't guess; instead respond with "Unknown".
Choices: SendEmail, SendMessage, CompleteTask, CreateDocument, Unknown.
User Input: {request}
Intent:
""";
S několika snímky učení zahrnete výzvy spárované s doslovnými dokončováními. Ve srovnání s učením s nulovým snímkem to znamená, že učení s několika snímky vytváří více tokenů a způsobí, že model aktualizuje své znalosti, což může způsobit, že učení s několika snímky je náročnější na prostředky. Z stejných důvodů ale málo snímků učení také pomáhá modelu vytvářet relevantnější odpovědi.
prompt = $"""
Instructions: What is the intent of this request?
If you don't know the intent, don't guess; instead respond with "Unknown".
Choices: SendEmail, SendMessage, CompleteTask, CreateDocument, Unknown.
User Input: Can you send a very quick approval to the marketing team?
Intent: SendMessage
User Input: Can you send the full update to the marketing team?
Intent: SendEmail
User Input: {request}
Intent:
""";
Případy použití učení s nulovým snímkem
Učení s nulovým snímkem je postup předávání výzev, které nejsou spárované s doslovnými dokončováními, i když je lze spárovat s upozorněním. Pro učení s nulovým snímkem existují dva hlavní případy použití:
- Práce s jemně vyladěnými llmy – vzhledem k tomu, že se spoléhá na stávající znalosti modelu, učení s nulovým snímkem není tak náročné na prostředky jako učení s několika snímky a funguje dobře s LLM, které už byly vyladěné na datových sadách instrukcí. Možná budete moct spoléhat výhradně na učení s nulovým snímkem a udržet náklady relativně nízké.
- Vytvoření standardních hodnot výkonu – učení s nulovým snímkem vám může pomoct simulovat, jak by vaše aplikace fungovala pro skutečné uživatele. Díky tomu můžete vyhodnotit různé aspekty aktuálního výkonu modelu, jako je přesnost nebo přesnost. V tomto případě obvykle použijete učení s nulovým snímkem k vytvoření standardních hodnot výkonu a pak experimentujete s několika snímky učení, abyste zlepšili výkon.
Případy použití učení s několika snímky
Učení s několika snímky je postup předávání výzev spárovaných s doslovnými dokončováními (několik snímků výzev) a ukázat model, jak reagovat. Na rozdíl od učení s nulovým snímkem může učení s několika snímky přidávat do znalostí modelu. Můžete dokonce použít vlastní datové sady k automatickému vygenerování několika snímků výzev, a to provedením generování rozšířeného načítání.
Učení s několika snímky má dva hlavní případy použití:
- Ladění LLM – protože to může přidat do znalostí modelu, může několik snímků učení zlepšit výkon modelu. To také způsobí, že model vytvoří více tokenů než učení s nulovým snímkem, což může být nakonec znemožněné nebo dokonce neproveditelné. Pokud ale váš LLM ještě není vyladěný, nebudete mít dobrý výkon s výzvami s nulovým snímkem a učení s několika snímky je zaručené.
- Řešení problémů s výkonem – učení s několika snímky můžete použít jako následné učení s nulovým snímkem. V tomto případě použijete učení s nulovým snímkem k vytvoření standardních hodnot výkonu a potom experimentujete s několika snímky učení na základě výzev s nulovým snímkem, které jste použili. To vám umožní přidat do znalostí modelu, jakmile uvidíte, jak aktuálně reaguje, takže můžete iterovat a zlepšit výkon a zároveň minimalizovat počet tokenů, které zavádíte.
Upozornění
- Ukázkové učení nefunguje dobře u složitých úloh zdůvodnění. Přidání pokynů ale může pomoct tento postup vyřešit.
- Několik snímků učení vyžaduje vytvoření dlouhých výzev. Výzvy s velkým počtem tokenů můžou zvýšit výpočet a latenci. To obvykle znamená zvýšené náklady. Existuje také omezení délky výzev.
- Když použijete několik příkladů, může se model naučit nepravdivé vzory, například "Mínění je dvakrát tak pravděpodobné, že budou pozitivní než negativní".