Dnes s potěšením oznamujeme, že základní model Falcon 180B vyvinutý institutem Technology Innovation Institute (TII) a vyškolený na Amazon SageMaker je k dispozici zákazníkům prostřednictvím Amazon SageMaker JumpStart, který lze nasadit jediným kliknutím pro spuštění inference. Falcon 180B je s velikostí 180 miliard parametrů a trénovaným na masivním souboru 3,5 bilionu tokenů největším a jedním z nejvýkonnějších modelů s volně přístupnými hmotnostmi. Tento model si můžete vyzkoušet pomocí SageMaker JumpStart, centra strojového učení (ML), které poskytuje přístup k algoritmům, modelům a řešením ML, takže můžete rychle začít s ML. V tomto příspěvku projdeme, jak objevit a nasadit model Falcon 180B prostřednictvím SageMaker JumpStart.
Co je Falcon 180B
Falcon 180B je model vydaný společností TII který následuje po předchozích vydáních v rodině Falcon. Je to zvětšená verze Falconu 40B a pro lepší škálovatelnost využívá pozornost více dotazů. Je to auto-regresivní jazykový model, který využívá optimalizovanou architekturu transformátoru. Bylo trénováno na 3,5 bilionu tokenů dat, sestávajících především z webových dat RefinedWeb (přibližně 85%). Model má dvě verze: 180B a 180B-Chat. 180B je surový, předtrénovaný model, který by měl být dále doladěn pro většinu případů použití. 180B-Chat je vhodnější pro přijímání obecných pokynů. Model chatu byl doladěn na datových sadách chatu a pokynů spolu s několika rozsáhlými datovými sadami konverzace.
Model je dostupný pod Licence Falcon-180B TII a Zásady přijatelného použití.
Falcon 180B byl trénován TII na Amazon SageMaker, na clusteru přibližně 4K A100 GPU. Používala vlastní distribuovanou školicí kódovou základnu s názvem Gigatron, která využívá 3D paralelismus se ZeRO, a vlastní, vysoce výkonná jádra Triton. Architektura distribuovaného školení využívala službu Amazon Simple Storage Service (Amazon S3) jako jedinou jednotnou službu pro načítání dat a zápis a čtení kontrolních bodů, což přispělo zejména ke spolehlivosti zátěže a provozní jednoduchosti.
Co je SageMaker JumpStart
Se SageMaker JumpStart si mohou praktici ML vybrat z rostoucího seznamu nejvýkonnějších modelů základů. Odborníci na ML mohou nasazovat základní modely do vyhrazených instancí SageMakeru v prostředí izolovaném od sítě a přizpůsobovat modely pomocí Amazon SageMaker pro školení a nasazení modelů.
Nyní můžete objevit a nasadit Falcon 180B několika kliknutími v Amazon SageMaker Studio nebo programově prostřednictvím SageMaker Python SDK, což vám umožní odvodit výkon modelu a ovládací prvky MLOps pomocí funkcí SageMaker, jako jsou Amazon SageMaker Pipelines, Amazon SageMaker Debugger nebo protokoly kontejnerů. Model je nasazen v zabezpečeném prostředí AWS a pod vašimi kontrolami VPC, což pomáhá zajistit bezpečnost dat. Falcon 180B je zjistitelný a lze jej nasadit v oblastech, kde jsou k dispozici potřebné instance. V současné době jsou instance ml.p4de dostupné na východě USA (Severní Virginie) a západě USA (Oregon).
Objevte modely
K základním modelům můžete přistupovat prostřednictvím SageMaker JumpStart v uživatelském rozhraní SageMaker Studio a SageMaker Python SDK. V této části se podíváme na to, jak objevit modely v SageMaker Studio.
SageMaker Studio je integrované vývojové prostředí (IDE), které poskytuje jediné webové vizuální rozhraní, kde máte přístup k účelovým nástrojům pro provádění všech kroků vývoje ML, od přípravy dat až po vytváření, školení a nasazení vašich modelů ML. Další podrobnosti o tom, jak začít a jak nastavit SageMaker Studio, najdete v Amazon SageMaker Studio.
V SageMaker Studio máte přístup k SageMaker JumpStart, který obsahuje předem připravené modely, notebooky a předpřipravená řešení, v části Předem sestavená a automatizovaná řešení.
Na vstupní stránce SageMaker JumpStart můžete procházet řešení, modely, notebooky a další zdroje. Falcon 180B najdete v Základní modely: Generování textu kolotoč.
Výběrem můžete najít i další modelové varianty Prozkoumejte všechny modely generování textu nebo hledat Sokol
.
Můžete si vybrat kartu modelu pro zobrazení podrobností o modelu, jako je licence, data použitá k výcviku a způsob použití. Najdete zde také dvě tlačítka, Nasadit a Otevřete Poznámkový blok, který vám pomůže model používat (následující snímek obrazovky ukazuje Nasadit volba).
Nasadit modely
Když si vyberete Nasadit, zahájí se nasazení modelu. Případně můžete nasadit prostřednictvím vzorového poznámkového bloku, který se zobrazí výběrem Otevřete Poznámkový blok. Ukázkový zápisník poskytuje úplné pokyny, jak nasadit model pro odvození a vyčištění zdrojů.
Pro nasazení pomocí notebooku začneme výběrem vhodného modelu specifikovaného v model_id
. Jakýkoli z vybraných modelů můžete nasadit na SageMaker pomocí následujícího kódu:
Tím se nasadí model na SageMaker s výchozími konfiguracemi, včetně výchozího typu instance a výchozích konfigurací VPC. Tyto konfigurace můžete změnit zadáním jiných než výchozích hodnot v JumpStartModel
. Chcete-li se dozvědět více, viz API dokumentace. Po jeho nasazení můžete provést odvození proti nasazenému koncovému bodu prostřednictvím prediktoru SageMaker. Viz následující kód:
Odvozovací parametry řídí proces generování textu v koncovém bodě. Řízení maximálního počtu nových tokenů odkazuje na velikost výstupu generovaného modelem. Všimněte si, že to není totéž jako počet slov, protože slovní zásoba modelu není stejná jako slovní zásoba anglického jazyka a každý token nemusí být slovo v anglickém jazyce. Teplota řídí náhodnost výstupu. Vyšší teplota má za následek kreativnější a halucinační výstupy. Všechny odvozené parametry jsou volitelné.
Tento model s parametrem 180B má 335 GB a vyžaduje ještě více paměti GPU k dostatečnému provedení odvození v 16bitové přesnosti. V současné době podporuje JumpStart tento model pouze na instancích ml.p4de.24xlarge. Je možné nasadit 8bitový kvantovaný model na instanci ml.p4d.24xlarge poskytnutím env={"HF_MODEL_QUANTIZE": "bitsandbajty"}
argument klíčového slova k JumpStartModel
konstruktor a specifikaci instance_type="ml.p4d.24xlarge"
k metodě nasazení. Upozorňujeme však, že latence na token je pro tuto kvantovanou konfiguraci přibližně 5x pomalejší.
Následující tabulka uvádí všechny modely Falcon dostupné v SageMaker JumpStart spolu s ID modelů, výchozími typy instancí, maximálním počtem celkových tokenů (součet počtu vstupních tokenů a počtu vygenerovaných tokenů) podporovaných a typickou latencí odezvy na token. pro každý z těchto modelů.
Jméno modelu | ID modelu | Výchozí typ instance | Maximální celkový počet tokenů | Latence na token* |
Falcon 7B | huggingface-llm- sokol-7b-bf16 |
ml.g5,2xvelký | 2048 | 34 ms |
Falcon 7B Instruovat | huggingface-llm- falcon-7b-instruct-bf16 |
ml.g5,2xvelký | 2048 | 34 ms |
Falcon 40B | huggingface-llm- sokol-40b-bf16 |
ml.g5,12xvelký | 2048 | 57 ms |
Falcon 40B Instruovat | huggingface-llm- falcon-40b-instruct-bf16 |
ml.g5,12xvelký | 2048 | 57 ms |
Falcon 180B | huggingface-llm- sokol-180b-bf16 |
ml.p4de.24xvelký | 2048 | 45 ms |
Chat Falcon 180B | huggingface-llm- falcon-180b-chat-bf16 |
ml.p4de.24xvelký | 2048 | 45 ms |
*latence na token je uvedena pro střední dobu odezvy příkladů výzev uvedených v tomto blogu; tato hodnota se bude lišit v závislosti na délce vstupní a výstupní sekvence.
Vyvození a příklady výzev pro Falcon 180B
Modely Falcon lze použít k dokončení textu pro jakýkoli kus textu. Prostřednictvím generování textu můžete provádět různé úkoly, jako je odpovídání na otázky, jazykový překlad, analýza sentimentu a mnoho dalších. Koncový bod přijímá následující schéma vstupního užitečného zatížení:
Můžete prozkoumat jejich definici parametry klienta a jejich výchozí hodnoty v úložišti text-generation-inference.
Následují ukázkové příklady výzev a text generovaný modelem. Všechny výstupy jsou zde generovány s inferenčními parametry {"max_new_tokens": 768, "stop": ["<|endoftext|>", "###"]}
.
Vytvoření webu lze provést v 10 jednoduchých krocích:
Můžete si všimnout, že tento předtrénovaný model generuje dlouhé textové sekvence, které nejsou nutně ideální pro případy použití v dialogu. Než si ukážeme, jak funguje vyladěný model chatu pro větší sadu dialogových výzev, následující dva příklady ilustrují, jak používat modely Falcon s několika záběry v kontextu učení, kde poskytujeme ukázky školení dostupné pro model. Všimněte si, že „nepatrné učení“ neupravuje váhy modelu – během tohoto procesu pouze usuzujeme na nasazený model a poskytujeme několik příkladů ve vstupním kontextu, abychom pomohli výstupu modelu cechu.
Vyvození a příklady výzev pro Falcon 180B-Chat
U modelů Falcon 180B-Chat, optimalizovaných pro případy použití dialogu, může vstup do koncových bodů modelu chatu obsahovat předchozí historii mezi asistentem chatu a uživatelem. Můžete klást otázky související s konverzací, která se dosud odehrála. Můžete také poskytnout konfiguraci systému, například persony, které definují chování chatovacího asistenta. Vstupní užitečné zatížení do koncového bodu je stejné jako u modelu Falcon 180B kromě vstupy
hodnota řetězce by měla mít následující formát:
Následují ukázkové příklady výzev a text generovaný modelem. Všechny výstupy jsou generovány s inferenčními parametry {"max_new_tokens":256, "stop": ["\nUser:", "<|endoftext|>", " User:", "###"]}.
V následujícím příkladu vedl uživatel rozhovor s asistentem o turistických lokalitách v Paříži. Dále se uživatel ptá na první možnost doporučenou asistentem chatu.
Uklidit
Po dokončení práce se zápisníkem nezapomeňte odstranit všechny prostředky, které jste v tomto procesu vytvořili, aby bylo zastaveno účtování. Použijte následující kód:
Závěr
V tomto příspěvku jsme vám ukázali, jak začít s Falcon 180B v SageMaker Studio a nasadit model pro odvození. Protože jsou základní modely předem proškoleny, mohou pomoci snížit náklady na školení a infrastrukturu a umožnit přizpůsobení pro váš případ použití. Chcete-li začít, navštivte nyní SageMaker JumpStart v SageMaker Studio.
Zdroje
O autorech
Dr. Kyle Ulrich je aplikovaný vědec v týmu Amazon SageMaker JumpStart. Mezi jeho výzkumné zájmy patří škálovatelné algoritmy strojového učení, počítačové vidění, časové řady, bayesovské neparametriky a gaussovské procesy. Jeho PhD je z Duke University a publikoval články v NeurIPS, Cell a Neuron.
Dr. Ashish Khetan je Senior Applied Scientist s Amazon SageMaker JumpStart a pomáhá vyvíjet algoritmy strojového učení. Doktorát získal na University of Illinois Urbana-Champaign. Je aktivním výzkumníkem v oblasti strojového učení a statistické inference a publikoval mnoho článků na konferencích NeurIPS, ICML, ICLR, JMLR, ACL a EMNLP.
Olivier Cruchanje hlavním architektem specializovaných řešení strojového učení ve společnosti AWS se sídlem ve Francii. Olivier pomáhá zákazníkům AWS – od malých začínajících až po velké podniky – vyvíjet a nasazovat aplikace strojového učení na produkční úrovni. Ve svém volném čase rád čte výzkumné práce a zkoumá divočinu s přáteli a rodinou.
Karl Albertsen vede základní model centra Amazon SageMaker, algoritmy a týmy partnerství.
zanechte odpověď