Trace Id is missing
Přeskočit na hlavní obsah

Automatizace pracovních postupů strojového učení a začlenění AI do sady Visual Studio

Automatizace pracovních postupů strojového učení a začlenění AI do sady Visual Studio

Podívejte se, jak odborníci na data a technici ve vývojářském oddělení Microsoftu s využitím postupů MLOps (operace strojového učení) proměnili úspěšný experiment na často využívanou produktovou funkci.

Výzva: Od prototypu k produkčnímu řešení ve velkém měřítku

Po šesti měsících experimentů s umělou inteligencí a strojovým učením zaměřených na zvýšení produktivity vývojářů dospěl malý tým vědců zaměřených na aplikované využití dat ve vývojářském oddělení Microsoftu k modelu, který během psaní kódu aktivně předvídal metody jazyka C#, které by vývojáři pravděpodobně mohli chtít volat.

Tento úspěšný prototyp strojového učení se stal základem pro funkci předvídání kódu s asistencí umělé inteligence –  Visual Studio IntelliCode. Nejprve však musel projít přísnými testy kvality, dostupnosti a škálování, aby se zajistilo, že splní požadavky uživatelů sady Visual Studio. Tým pro aplikované vědy musel přizvat technický tým, aby vytvořil platformu strojového učení a automatizoval tento proces. Oba týmy také musely přijmout kulturu MLOps, která rozšiřuje zásady DevOps na kompletní životní cyklus strojového učení.

Tým pro aplikované vědy a technický tým společně vytvořily kanál strojového učení, který iteruje proces trénování modelů a automatizuje velkou část práce, kterou tým pro aplikované vědy ve fázi vývoje prototypu prováděl ručně. Tento kanál umožnil nástroji IntelliCode, aby se škáloval, podporoval 6 programovacích jazyků a pravidelně trénoval nové modely s využitím příkladů kódu z rozsáhlé sady open source úložišť GitHub.

Dva lidé, kteří spolu mluví a kreslí diagram na tabuli

Výzva: Od prototypu k produkčnímu řešení ve velkém měřítku

Výzva: Přizpůsobení se provoznímu modelu cloudu

"Bylo zřejmé, že budeme každý měsíc provádět mnoho výpočetně náročných tréninků modelů na rozsáhlých souborech dat, takže potřeba automatizovaného, škálovatelného a komplexního systému strojového učení byla ještě naléhavější."

Gearard Boland, hlavní vedoucí vývoje softwaru, tým pro data a AI

Využívání přehledů s MLOps

Se zavedením IntelliCode viděly týmy příležitost navrhnout ještě lepší uživatelské prostředí, a to vytvořením modelů týmového doplňování založených na konkrétních zvycích při psaní kódu jednotlivých zákazníků. Přizpůsobení těchto modelů strojového učení vyžadovalo automatické trénování a publikování modelů na vyžádání kdykoli o to uživatelé sady Visual Studio nebo Visual Studio Code požádají. Aby bylo možné tyto funkce provádět ve velkém měřítku s využitím stávajícího kanálu, týmy využily služby Azure, jako jsou Azure Machine LearningAzure Data FactoryAzure BatchAzure Pipelines.

Výzva: Přizpůsobení se provoznímu modelu cloudu

"Když jsme přidali podporu vlastních modelů, škálovatelnost a spolehlivost našeho trénovacího kanálu začala být ještě důležitější."

Gearard Boland, hlavní vedoucí vývoje softwaru, tým pro data a AI

Spojení dvou různých úhlů pohledu

Týmy při vytváření vlastního kanálu strojového učení musely definovat společné standardy a obecné pokyny, aby mohly komunikovat společným jazykem, sdílet osvědčené postupy a lépe spolupracovat. Musely také porozumět přístupu druhého týmu k projektu. Zatímco tým pro datové vědy pracoval experimentálně a rychle iteroval vytváření modelů, technický tým se zaměřil na zajištění, aby nástroj IntelliCode splnil očekávání uživatelů sady Visual Studio z hlediska funkcí na provozní úrovni.

V současné době se celý kanál strojového učení (trénování, hodnocení, balení a nasazování) spouští automaticky a měsíčně obsluhuje více než 9 000 požadavků na vytvoření modelu od uživatelů sady Visual Studio a Visual Studio Code. Týmy hledají způsoby, jak s využitím kanálu integrovat další funkce AI do dalších produktů Microsoftu a poskytovat uživatelům ještě bohatší prostředí.

" "

Podívejte se, jak týmy implementovaly MLOps krok za krokem.