Sdílet prostřednictvím


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: