Koncepty – vyladění jazykových modelů pro pracovní postupy umělé inteligence a strojového učení
V tomto článku se dozvíte o jemně vyladěných jazykových modelech, včetně některých běžných metod a použití výsledků ladění, které můžou zlepšit výkon vašich pracovních postupů AI a strojového učení ve službě Azure Kubernetes Service (AKS).
Předem natrénované jazykové modely
Předem natrénované jazykové modely (PLM) nabízejí přístupný způsob, jak začít s odvozováním AI a běžně se používají při zpracování přirozeného jazyka (NLP). PLM se trénují na rozsáhlých textových korporech z internetu pomocí hlubokých neurálních sítí a dají se doladit na menších datových sadách pro konkrétní úlohy. Tyto modely se obvykle skládají z miliard parametrů nebo váhy, které se učí během procesu před trénováním.
PLM se mohou naučit reprezentace univerzálního jazyka, které zachycují statistické vlastnosti přirozeného jazyka, jako je pravděpodobnost slov nebo sekvencí slov, ke kterým dochází v daném kontextu. Tyto reprezentace je možné přenést do podřízených úkolů, jako je klasifikace textu, rozpoznávání pojmenovaných entit a zodpovězení otázek, a to vyladěním modelu u datových sad specifických pro úkoly.
Výhody a nevýhody
Následující tabulka uvádí několik výhod a nevýhod používání PLM v pracovních postupech AI a strojového učení:
Výhody | Nevýhody |
---|---|
• Začněte rychle s nasazením v životním cyklu strojového učení. • Vyhněte se náročným nákladům na výpočetní prostředky spojené s trénováním modelu. • Snižuje potřebu ukládat velké a označené datové sady. |
• Může poskytovat generalizované nebo zastaralé odpovědi na základě předem trénovacích zdrojů dat. • Nemusí být vhodné pro všechny úkoly nebo domény. • Výkon se může lišit v závislosti na kontextu odvozování. |
Jemně dolaďovací metody
Efektivní vyladění parametrů
Parametr efektivní jemné ladění (PEFT) je metoda pro jemné ladění PLM u relativně malých datových sad s omezenými výpočetními prostředky. PEFT používá ke zlepšení výkonu modelu u konkrétních úloh kombinaci technik, jako jsou doplňkové a selektivní metody, které aktualizují váhy. PEFT vyžaduje minimální výpočetní prostředky a flexibilní množství dat, což je vhodné pro nastavení s nízkými prostředky. Tato metoda uchovává většinu hmotností původního předem natrénovaného modelu a aktualizuje zbývající váhy tak, aby odpovídaly datům specifickým pro kontext.
Přizpůsobení nízkého pořadí
Adaptace nízkého pořadí (LoRA) je metoda PEFT, která se běžně používá k přizpůsobení velkých jazykových modelů pro nové úlohy. Tato metoda sleduje změny hmotností modelu a efektivně ukládá menší matice hmotnosti, které představují pouze vytrénovatelné parametry modelu, což snižuje využití paměti a výpočetní výkon potřebný k vyladění. LoRA vytváří jemně vyladěné výsledky, označované jako vrstvy adaptérů, které je možné dočasně uložit a načíst do architektury modelu pro nové úlohy odvozování.
Kvantovaná adaptace nízkého pořadí (QLoRA) je rozšíření LoRA, které dále snižuje využití paměti zavedením kvantizace do vrstev adaptérů. Další informace najdete v tématu Zpřístupnění LLM ještě více s bity a bity, 4bitovou kvantizací a QLoRA.
Experimentování s jemně vyladěnými jazykovými modely v AKS
Operátor AI Toolchain Kubernetes (KAITO) je opensourcový operátor, který automatizuje nasazení malých a velkých jazykových modelů v clusterech Kubernetes. Doplněk operátoru sady nástrojů AI využívá KAITO ke zjednodušení onboardingu, úsporě nákladů na infrastrukturu a zkrácení doby odvozování opensourcových modelů v clusteru AKS. Doplněk automaticky zřídí uzly GPU s správnou velikostí a nastaví přidružený server odvozování jako koncový server pro vybraný model.
Pomocí KAITO verze 0.3.0 nebo novější můžete efektivně vyladit podporované modely MIT a Apache 2.0 s následujícími funkcemi:
- Uložte data opětovného trénování jako image kontejneru v privátním registru kontejneru.
- Hostujte novou image vrstvy adaptéru v privátním registru kontejneru.
- V nových scénářích efektivně stáhněte image pro odvozování s vrstvami adaptérů.
Pokyny k tomu, jak začít s vyladěním funkce KAITO, najdete v dokumentaci k rozhraní API pracovního prostoru pro ladění Kaito. Další informace o nasazování jazykových modelů pomocí KAITO v clusterech AKS najdete v úložišti GitHubu s modelem KAITO.
Důležité
Opensourcový software je zmíněn v dokumentaci a ukázkách AKS. Software, který nasadíte, je vyloučený ze smluv o úrovni služeb AKS, omezené záruky a podpora Azure. Při používání opensourcových technologií společně s AKS se obraťte na možnosti podpory, které jsou k dispozici v příslušných komunitách a správci projektů, a vytvořte plán.
Například úložiště Ray GitHub popisuje několik platforem, které se liší v době odezvy , účelu a úrovni podpory.
Microsoft zodpovídá za vytváření opensourcových balíčků, které nasazujeme v AKS. Tato odpovědnost zahrnuje úplné vlastnictví sestavení, skenování, podepisování, ověřování a opravy hotfix spolu s kontrolou binárních souborů v imagích kontejneru. Další informace najdete v tématu Správa ohrožení zabezpečení pro AKS a AKS podporují pokrytí.
Další kroky
Další informace o kontejnerizovaných úlohách AI a strojového učení v AKS najdete v následujících článcích:
Azure Kubernetes Service