Citizen AI with Power Platform

Azure Machine Learning
Microsoft Power Platform
Power Apps
Power Automate
Power BI

Poniższa architektura rozszerza kompleksową analizę przy użyciu scenariusza usługi Azure Synapse Analytics . Umożliwia ona trenowanie niestandardowego modelu uczenia maszynowego w usłudze Azure Machine Learning i implementowane przy użyciu aplikacji niestandardowej utworzonej przy użyciu platformy Microsoft Power Platform.

Architektura

Diagram przedstawiający architekturę dla sztucznej inteligencji dla obywateli za pomocą platformy Microsoft Power Platform.

Pobierz plik programu Visio tej architektury.

Przepływ pracy

Przepływ pracy składa się z następujących kroków:

  • Pozyskiwanie
  • Przechowuj
  • Trenowanie i wdrażanie modelu
  • Zużyj

Pozyskiwanie

Usługa Azure Synapse Pipelines umożliwia ściąganie danych wsadowych z różnych źródeł, zarówno lokalnych, jak i w chmurze. Ta architektura lambda ma dwa przepływy pozyskiwania danych: przesyłanie strumieniowe i wsadowe. Zostały one opisane tutaj:

  • Przesyłanie strumieniowe: W górnej połowie powyższego diagramu architektury są przepływy danych przesyłanych strumieniowo (na przykład strumienie danych big data i urządzenia IoT).
    • Usługi Azure Event Hubs lub Azure IoT Hub można używać do pozyskiwania strumieni danych generowanych przez aplikacje klienckie lub urządzenia IoT. Usługa Event Hubs lub usługa IoT Hub pozyskuje i przechowuje dane przesyłane strumieniowo, zachowując sekwencję odebranych zdarzeń. Użytkownicy mogą łączyć się z punktami końcowymi centrum w celu pobierania komunikatów do przetwarzania.
  • Batch: W dolnej połowie diagramu architektury dane są pozyskiwane i przetwarzane w partiach, takich jak:
    • Dane bez struktury (na przykład wideo, obrazy, dźwięk i dowolny tekst)

    • Dane częściowo ustrukturyzowane (na przykład dane JSON, XML, CSV i dzienniki)

    • Dane ustrukturyzowane (na przykład relacyjne bazy danych i usługi Azure Data Services)

      Usługa Azure Synapse Link tworzy ścisłą bezproblemową integrację między usługą Azure Cosmos DB i usługą Azure Synapse Analytics. Potoki usługi Azure Synapse można wyzwalać na podstawie wstępnie zdefiniowanego harmonogramu lub w odpowiedzi na zdarzenie. Można je również wywołać przez wywołanie interfejsów API REST.

Przechowuj

Pozyskane dane mogą znajdować się bezpośrednio w formacie nieprzetworzonym, a następnie przekształcać je w usłudze Azure Data Lake. Dane po wyselekcjonowaniu i przekształceniu w struktury relacyjne można przedstawić do użycia w usłudze Azure Synapse Analytics.

Trenowanie i wdrażanie modelu

Usługa Machine Learning zapewnia usługę uczenia maszynowego klasy korporacyjnej do szybszego tworzenia i wdrażania modeli. Zapewnia ona użytkownikom wszystkich poziomów umiejętności przy użyciu projektanta kodu niskiego poziomu, zautomatyzowanego uczenia maszynowego i hostowanego środowiska notesu Jupyter. Modele można wdrażać jako punkty końcowe w czasie rzeczywistym w usłudze Azure Kubernetes Service lub jako zarządzany punkt końcowy usługi Machine Learning. W przypadku wnioskowania wsadowego modeli uczenia maszynowego można użyć potoków usługi Machine Learning.

Zużyj

Model wsadowy lub w czasie rzeczywistym opublikowany w usłudze Machine Learning może wygenerować punkt końcowy REST, który może być używany w niestandardowej aplikacji utworzonej przy użyciu platformy Power Apps o niskim kodzie. Możesz również wywołać punkt końcowy usługi Machine Learning w czasie rzeczywistym z raportu usługi Power BI, aby przedstawić przewidywania w raportach biznesowych.

Uwaga

Zarówno usługa Machine Learning, jak i stos platformy Microsoft Power Platform mają szereg wbudowanych łączników ułatwiających bezpośrednie pozyskiwanie danych. Te łączniki mogą być przydatne w przypadku jednorazowego produktu o minimalnej funkcjonalności (MVP). Jednak sekcje "Pozyskiwanie" i "Przechowywanie" architektury doradzają w zakresie roli ustandaryzowanych potoków danych dotyczących określania źródła i przechowywania danych z różnych źródeł na dużą skalę. Te wzorce są zwykle implementowane i obsługiwane przez zespoły ds. platform danych przedsiębiorstwa.

Składniki

Można użyć następujących składników.

Usługi platformy Microsoft Power Platform

  • Power Platform: zestaw narzędzi do analizowania danych, tworzenia rozwiązań, automatyzowania procesów i tworzenia agentów wirtualnych. Obejmuje ona usługi Power Apps, Power Automate, Power BI i Microsoft Copilot Studio (dawniej Power Virtual Agents).
  • Power Apps: pakiet aplikacji, usług, łączników i platformy danych. Udostępnia ona szybkie środowisko programistyczne aplikacji do tworzenia niestandardowych aplikacji dla Twoich potrzeb biznesowych.
  • Power Automate: usługa, która ułatwia tworzenie zautomatyzowanych przepływów pracy między ulubionymi aplikacjami i usługami. Służy do synchronizowania plików, pobierania powiadomień, zbierania danych itd.
  • Power BI: kolekcja usług oprogramowania, aplikacji i łączników, które współpracują ze sobą, aby przekształcić niepowiązane źródła danych w spójne, atrakcyjne wizualnie i interaktywne szczegółowe informacje.

Usługi platformy Azure

  • Machine Learning: usługa uczenia maszynowego klasy korporacyjnej służąca do szybkiego tworzenia i wdrażania modeli. Zapewnia ona użytkownikom na wszystkich poziomach umiejętności projektanta niskiego poziomu kodu, zautomatyzowanego uczenia maszynowego i hostowanego środowiska notesu Jupyter do obsługi własnego preferowanego środowiska IDE.
  • Zarządzane punkty końcowe usługi Machine Learning: punkty końcowe online umożliwiające wdrażanie modelu bez konieczności tworzenia podstawowej infrastruktury i zarządzania nią.
  • Azure Kubernetes Service: usługa ML ma różne wsparcie dla różnych celów obliczeniowych. Usługa Azure Kubernetes Service jest jednym z takich obiektów docelowych, które doskonale nadają się do punktów końcowych modelu w czasie rzeczywistym klasy korporacyjnej.
  • Azure Data Lake: system plików zgodny z usługą Hadoop. Ma zintegrowaną hierarchiczną przestrzeń nazw oraz ogromną skalę i gospodarkę usługi Azure Blob Storage.
  • Azure Synapse Analytics: nieograniczona usługa analizy, która łączy integrację danych, magazynowanie danych przedsiębiorstwa i analizę danych big data.
  • Event Hubs i IoT Hub: obie usługi pozyskiwają strumienie danych generowane przez aplikacje klienckie lub urządzenia IoT. Następnie pozyskują i przechowują dane przesyłane strumieniowo, zachowując sekwencję odebranych zdarzeń. Użytkownicy mogą łączyć się z punktami końcowymi koncentratora, aby pobierać komunikaty do przetwarzania.

Usługi platformy

Aby poprawić jakość rozwiązań platformy Azure, postępuj zgodnie z zaleceniami i wytycznymi w przewodniku Azure Well-Architected Framework. Struktura składa się z pięciu filarów doskonałości architektonicznej:

  • Optymalizacja kosztów
  • Doskonałość operacyjna
  • Efektywność wydajności
  • Niezawodność
  • Zabezpieczenia

Aby utworzyć projekt, który uwzględnia te zalecenia, należy wziąć pod uwagę następujące usługi:

  • Microsoft Entra ID: Usługi tożsamości, logowanie jednokrotne i uwierzytelnianie wieloskładnikowe w obciążeniach platformy Azure.
  • Microsoft Cost Management: nadzór finansowy nad obciążeniami platformy Azure.
  • Azure Key Vault: bezpieczne zarządzanie poświadczeniami i certyfikatami.
  • Azure Monitor: zbieranie, analiza i wyświetlanie danych telemetrycznych z zasobów platformy Azure. Użyj monitora, aby aktywnie identyfikować problemy w celu zmaksymalizowania wydajności i niezawodności.
  • Microsoft Defender dla Chmury: wzmacnianie i monitorowanie stanu zabezpieczeń obciążeń platformy Azure.
  • Azure DevOps i GitHub: zaimplementuj rozwiązania DevOps, aby wymusić automatyzację i zgodność potoków tworzenia i wdrażania obciążeń dla usług Azure Synapse Analytics i Machine Learning.
  • Azure Policy: zaimplementuj standardy organizacyjne i ład w celu zapewnienia spójności zasobów, zgodności z przepisami, zabezpieczeń, kosztów i zarządzania.

Alternatywy

Program MVP uczenia maszynowego przynosi korzyści z szybkości do wyniku. W niektórych przypadkach potrzeby modelu niestandardowego mogą być spełnione przez wstępnie wytrenowane usługi Azure Cognitive Services lub aplikacja systemu Azure lied AI Services. W innych przypadkach narzędzie Power Apps AI Builder może zapewnić dopasowanie do modelu przeznaczenia.

Szczegóły scenariusza

Ogólny trend technologiczny to rosnąca popularność ról sztucznej inteligencji obywateli. Takie role to praktycy biznesowi, którzy chcą ulepszyć procesy biznesowe dzięki zastosowaniu technologii uczenia maszynowego i sztucznej inteligencji. Znaczącym czynnikiem wpływającym na ten trend jest rosnąca dojrzałość i dostępność narzędzi o niskim kodzie do opracowywania modeli uczenia maszynowego.

Ze względu na dobrze znany wysoki współczynnik niepowodzeń takich inicjatyw, możliwość szybkiego tworzenia prototypów i weryfikowania aplikacji sztucznej inteligencji w rzeczywistym środowisku staje się kluczowym elementem umożliwiającym szybkie podejście. Istnieją dwa kluczowe narzędzia do tworzenia modeli, które modernizują procesy i napędzają wyniki transformacyjne:

  • Zestaw narzędzi uczenia maszynowego dla wszystkich poziomów umiejętności
    • Obsługuje tworzenie w pełni kodowanych uczenia maszynowego bez kodu
    • Ma elastyczny, niskokodowy graficzny interfejs użytkownika (GUI)
    • Umożliwia użytkownikom szybkie źródło i przygotowywanie danych
    • Umożliwia użytkownikom szybkie tworzenie i wdrażanie modeli
    • Ma zaawansowane, zautomatyzowane możliwości uczenia maszynowego na potrzeby opracowywania algorytmów uczenia maszynowego
  • Zestaw narzędzi do tworzenia aplikacji o niskim kodzie
    • Umożliwia użytkownikom tworzenie niestandardowych aplikacji i przepływów pracy automatyzacji
    • Tworzy przepływy pracy, dzięki czemu użytkownicy i procesy biznesowe mogą wchodzić w interakcje z modelem uczenia maszynowego

Usługa Machine Learning pełni rolę graficznego interfejsu użytkownika z małą ilością kodu na potrzeby opracowywania uczenia maszynowego. Ma zautomatyzowane uczenie maszynowe i wdrażanie w punktach końcowych wsadowych lub w czasie rzeczywistym. Platforma Power Platform, która obejmuje usługi Power Apps i Power Automate, udostępnia zestawy narzędzi umożliwiające szybkie tworzenie niestandardowej aplikacji i przepływu pracy, który implementuje algorytm uczenia maszynowego. Użytkownicy biznesowi mogą teraz tworzyć aplikacje uczenia maszynowego klasy produkcyjnej, aby przekształcić starsze procesy biznesowe.

Potencjalne przypadki użycia

Te zestawy narzędzi minimalizują czas i nakład pracy potrzebny do utworzenia prototypu korzyści modelu uczenia maszynowego w procesie biznesowym. Można łatwo rozszerzyć prototyp na aplikację klasy produkcyjnej. Zastosowania tych technik obejmują:

  • Produkcja operacji ze starszymi aplikacjami korzystającymi z nieaktualnych przewidywań deterministycznych. Takie sytuacje mogą korzystać z ulepszonej dokładności modelu uczenia maszynowego. Potwierdzenie lepszej dokładności wymaga zarówno nakładu pracy nad modelem, jak i programowaniem w celu integracji ze starszymi systemami lokalnymi.
  • Call Center Ops ze starszymi aplikacjami, które nie dostosowują się podczas dryfowania danych. Modele, które automatycznie ponownie trenowają, mogą zapewnić znaczący wzrost dokładności przewidywania zmian lub profilowania ryzyka. Weryfikacja wymaga integracji z istniejącymi systemami zarządzania relacjami klientów i zarządzania biletami. Integracja może być kosztowna.

Kwestie wymagające rozważenia

Te zagadnienia implementują filary struktury Azure Well-Architected Framework, która jest zestawem wytycznych, które mogą służyć do poprawy jakości obciążenia. Aby uzyskać więcej informacji, zobacz Microsoft Azure Well-Architected Framework.

Niezawodność

Niezawodność zapewnia, że aplikacja może spełnić zobowiązania podjęte przez klientów. Aby uzyskać więcej informacji, zobacz Lista kontrolna przeglądu projektu dotycząca niezawodności.

Większość składników używanych w tym przykładowym scenariuszu to usługi zarządzane, które są skalowane automatycznie. Dostępność usług używanych w tym przykładzie różni się w zależności od regionu.

Aplikacje oparte na uczeniu maszynowym zwykle wymagają jednego zestawu zasobów na potrzeby trenowania, a drugiego do obsługi. Zasoby wymagane do trenowania zwykle nie wymagają wysokiej dostępności, ponieważ żądania produkcyjne na żywo nie trafiają bezpośrednio do tych zasobów. Zasoby wymagane do obsługi żądań wymagają wysokiej dostępności.

Optymalizacja kosztów

Optymalizacja kosztów dotyczy sposobów zmniejszenia niepotrzebnych wydatków i poprawy wydajności operacyjnej. Aby uzyskać więcej informacji, zobacz Lista kontrolna przeglądu projektu dotycząca optymalizacji kosztów.

Cennik platformy Azure: Usługi infrastruktury jako usługi (IaaS) i platformy jako usługi (PaaS) na platformie Azure korzystają z modelu cen opartego na użyciu. Nie wymagają licencji ani opłaty za subskrypcję. Ogólnie rzecz biorąc, możesz szacować koszty za pomocą kalkulatora cen platformy Azure. Aby zapoznać się z innymi zagadnieniami, zobacz Optymalizacja kosztów w dobrze zaprojektowanej strukturze.

Cennik platformy Power Platform: Usługi Power Apps, Power Automate i Power BI to aplikacje jako usługa (SaaS) oprogramowania i mają własne modele cenowe, w tym według planu aplikacji i poszczególnych użytkowników.

Sprawność operacyjna

Doskonałość operacyjna obejmuje procesy operacyjne, które wdrażają aplikację i działają w środowisku produkcyjnym. Aby uzyskać więcej informacji, zobacz Lista kontrolna projektu dotycząca doskonałości operacyjnej.

Metodyki DevOps służą do organizowania kompleksowego podejścia używanego w tym przykładzie. Przewodnik DevOps dotyczący uczenia maszynowego przedstawia najlepsze rozwiązania i informacje dotyczące wdrażania operacji uczenia maszynowego (MLOps) w przedsiębiorstwie za pomocą usługi Machine Learning.

Automatyzację metodyki DevOps można zastosować do rozwiązania Microsoft Power Platform podanego w tym przykładzie. Aby uzyskać więcej informacji na temat metodyki DevOps platformy Microsoft Power Platform, zobacz Power Platform Build Tools for Azure DevOps: Power Platform.

Wdrażanie tego scenariusza

Rozważmy ten scenariusz biznesowy. Agent pola używa aplikacji, która szacuje cenę rynkową samochodu. Za pomocą usługi Machine Learning można szybko s prototypować model uczenia maszynowego tej aplikacji. Do utworzenia modelu używa się funkcji projektanta niskiego kodu i uczenia maszynowego, a następnie wdrażania go jako punktu końcowego REST w czasie rzeczywistym.

Model może udowodnić koncepcję, ale użytkownik nie ma łatwego sposobu korzystania z modelu zaimplementowanego jako interfejs API REST. Platforma Microsoft Power Platform może pomóc w zamknięciu tej ostatniej mili, jak pokazano tutaj.

Zrzut ekranu przedstawiający model uczenia maszynowego utworzony w usłudze Machine Learning. Model uzyskuje dane samochodu z usługi Azure Data Lake i zapewnia wnioskowanie do punktu końcowego.

Oto interfejs użytkownika aplikacji utworzony w usłudze Power Apps przy użyciu interfejsu z małą ilością kodu zapewnianego przez usługę Power Apps.

Zrzut ekranu przedstawiający przyciski i listy rozwijane umożliwiające użytkownikowi wprowadzanie danych dotyczących samochodu. Aplikacja przewiduje cenę i wyświetla ją, gdy użytkownik wybierze przycisk Przewidywanie.

Za pomocą usługi Power Automate można utworzyć przepływ pracy z małą ilością kodu, aby przeanalizować dane wejściowe użytkownika, przekazać go do punktu końcowego usługi Machine Learning i pobrać przewidywanie. Usługa Power BI umożliwia również interakcję z modelem usługi Machine Learning i tworzenie niestandardowych raportów biznesowych i pulpitów nawigacyjnych.

Diagram przedstawiający architekturę przedstawiającą schemat przepływu pracy.

Aby wdrożyć ten szczegółowy przykład, postępuj zgodnie z instrukcjami krok po kroku w artykule Car Price Predictor — Azure Machine Learning + Power App Solution (Przewidywanie cen samochodów — Azure Machine Learning + Power App Solution).

Scenariusze rozszerzone

Rozpatrzmy następujące scenariusze.

Wdrażanie w usłudze Teams

Przykładowa aplikacja udostępniona w poprzednim przykładzie może być również wdrożona w usłudze Microsoft Teams. Usługa Teams oferuje doskonały kanał dystrybucji dla aplikacji i zapewnia użytkownikom środowisko współpracy aplikacji. Aby uzyskać więcej informacji na temat wdrażania aplikacji w usłudze Teams przy użyciu usługi Power Apps, zobacz Publikowanie aplikacji przy użyciu usługi Power Apps w usłudze Teams: Power Apps.

Korzystanie z interfejsu API z wielu aplikacji i automatyzacji

W tym przykładzie skonfigurujemy przepływ chmury usługi Power Automate, aby używać punktu końcowego REST jako akcji HTTP. Zamiast tego możemy skonfigurować łącznik niestandardowy dla punktu końcowego REST i korzystać z niego bezpośrednio z usługi Power Apps lub z usługi Power Automate. Takie podejście jest przydatne, gdy chcemy, aby wiele aplikacji używało tego samego punktu końcowego. Zapewnia również ład przy użyciu zasad ochrony przed utratą danych łącznika (DLP) w centrum administracyjnym platformy Microsoft Power Platform. Aby utworzyć łącznik niestandardowy, zobacz Używanie łącznika niestandardowego z poziomu aplikacji usługi Power Apps. Aby uzyskać więcej informacji na temat DLP łącznika platformy Microsoft Power Platform, zobacz Zasady ochrony przed utratą danych: Power Platform.

Współautorzy

Ten artykuł jest obsługiwany przez firmę Microsoft. Pierwotnie został napisany przez:

Następne kroki