Koncepty – malé a velké jazykové modely
V tomto článku se dozvíte o malých a velkých jazykových modelech, včetně toho, kdy je používat a jak je můžete používat s pracovními postupy AI a strojového učení ve službě Azure Kubernetes Service (AKS).
Co jsou jazykové modely?
Jazykové modely jsou výkonné modely strojového učení používané pro úlohy zpracování přirozeného jazyka (NLP), jako je generování textu a analýza mínění. Tyto modely představují přirozený jazyk na základě pravděpodobnosti slov nebo sekvencí slov, ke kterým dochází v daném kontextu.
Konvenční jazykové modely se používají v nastaveních pod dohledem pro účely výzkumu, kde jsou modely trénovány na dobře označených textových datových sadách pro konkrétní úlohy. Předem vytrénované jazykové modely nabízejí přístupný způsob, jak začít pracovat s AI a v posledních letech se častěji používaly. Tyto modely 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.
Velikost jazykového modelu je určena počtem parametrů nebo váhy, které určují, jak model zpracovává vstupní data a generuje výstup. Parametry se během trénovacího procesu naučíte tak, že upravíte váhy v rámci vrstev modelu, abyste minimalizovali rozdíl mezi predikcemi modelu a skutečnými daty. Čím více parametrů model má, tím složitější a výraznější je, ale také výpočetně dražší je trénování a používání.
Obecně platí, že malé jazykové modely mají méně než 10 miliard parametrů a velké jazykové modely mají více než 10 miliard parametrů. Například nová řada modelů Microsoft Phi-3 má tři verze s různými velikostmi: mini (3,8 miliardy parametrů), malé (7 miliard parametrů) a střední (14 miliard parametrů).
Kdy použít malé jazykové modely
Výhody
Malé jazykové modely jsou dobrou volbou, pokud chcete, aby modely, které jsou:
- Rychlejší a nákladově efektivnější trénování a spouštění: Vyžadují méně dat a výpočetního výkonu.
- Snadné nasazení a údržba: Mají menší nároky na úložiště a paměť.
- Méně náchylné k přeurčení, což je, když se model učí šum nebo specifické vzory trénovacích dat a nezobecní nová data.
- Interpretovatelné a vysvětlitelné: Mají méně parametrů a komponent pro pochopení a analýzu.
Případy použití
Malé jazykové modely jsou vhodné pro případy použití, které vyžadují:
- Omezená data nebo prostředky a potřebujete rychlé a jednoduché řešení.
- Dobře definované nebo úzké úkoly a ve výstupu nepotřebujete moc kreativity.
- Úlohy s vysokou přesností a nízkou úplností a přesnost a kvalitou hodnoty nad pokrytím a množstvím.
- Citlivé nebo regulované úkoly a potřebujete zajistit transparentnost a odpovědnost modelu.
V následující tabulce jsou uvedeny některé oblíbené, vysoce výkonné malé jazykové modely:
Řada modelů | Velikosti modelů (počet parametrů) | Softwarová licence |
---|---|---|
Microsoft Phi-3 | Phi-3-mini (3,8 miliardy), Phi-3-small (7 miliard) | Licence MIT |
Microsoft Phi-2 | Phi-2 (2,7 miliardy) | Licence MIT |
Falcon | Falcon-7B (7 miliard) | Licence Apache 2.0 |
Kdy používat velké jazykové modely
Výhody
Velké jazykové modely jsou dobrou volbou, pokud chcete, aby modely, které jsou:
- Výkonná a výrazná: Mohou zachytit složitější vzory a vztahy v datech.
- Obecné a přizpůsobitelné: Mohou zpracovávat širší škálu úkolů a přenášet znalosti napříč doménami.
- Robustní a konzistentní: Dokážou zpracovávat hlučné nebo neúplné vstupy a vyhnout se běžným chybám a předsudkům.
Případy použití
Velké jazykové modely jsou vhodné pro případy použití, které vyžadují:
- Hojná data a prostředky a máte rozpočet na sestavení a údržbu komplexního řešení.
- Úlohy s nízkou přesností a vysokou úplností a hodnoty pokrytí a množství nad přesností a kvalitou.
- Náročné nebo průzkumné úkoly a chcete využít kapacitu modelu k učení a přizpůsobení.
V následující tabulce jsou uvedeny některé oblíbené vysoce výkonné jazykové modely:
Řada modelů | Velikosti modelů (počet parametrů) | Softwarová licence |
---|---|---|
Microsoft Phi-3 | Phi-3-medium (14 miliard) | Licence MIT |
Falcon | Falcon-40B (40 miliard) | Licence Apache 2.0 |
Experimentování s malými a velký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 KAITO pro AKS zjednodušuje onboarding a zkracuje dobu odvozování opensourcových modelů v clusterech AKS. Doplněk automaticky zřídí uzly GPU s správnou velikostí a nastaví přidružený server interference jako koncový server pro zvolený model.
Další informace najdete v tématu Nasazení modelu AI v AKS pomocí operátoru sady nástrojů AI. Pokud chcete začít s řadou podporovaných malých a velkých jazykových modelů pro pracovní postupy odvozování, podívejte se na úložiště GitHub 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