Udostępnij za pośrednictwem


Wprowadzenie do przepływu monitów

Ten artykuł przeprowadzi Cię przez główny proces korzystania z przepływu monitów w usłudze Azure Machine Edukacja Studio. Dowiesz się, jak włączyć przepływ monitów w obszarze roboczym usługi Azure Machine Edukacja, utworzyć i opracować pierwszy przepływ monitów, przetestować go i ocenić, a następnie wdrożyć go w środowisku produkcyjnym.

Wymagania wstępne

  • Upewnij się, że domyślny magazyn danych w obszarze roboczym to typ obiektu blob.

  • Jeśli zabezpieczasz przepływ monitów za pomocą sieci wirtualnej, postępuj zgodnie z instrukcjami izolacja sieci w przepływie monitów, aby dowiedzieć się więcej.

Konfiguruj połączenie

Najpierw należy skonfigurować połączenie.

Połączenie ion pomaga bezpiecznie przechowywać klucze tajne lub inne poufne poświadczenia wymagane do interakcji z usługą LLM (duże modele językowe) i innymi narzędziami zewnętrznymi, na przykład azure Content Sejf ty.

Przejdź do strony głównej przepływu monitów, wybierz kartę Połączenie ions. Połączenie ion jest zasobem udostępnionym dla wszystkich członków w obszarze roboczym. Jeśli więc widzisz już połączenie, którego dostawcą jest AzureOpenAI, możesz pominąć ten krok, przejdź do sekcji Rozpocznij sesję obliczeniową.

Jeśli nie masz jeszcze połączenia z usługą AzureOpenAI, wybierz przycisk Utwórz, a następnie pozycję AzureOpenAI z listy rozwijanej.

Zrzut ekranu przedstawiający kartę połączenia z wyróżnioną pozycją Utwórz.

Zostanie wyświetlony panel po prawej stronie. W tym miejscu należy wybrać subskrypcję i nazwę zasobu, podać nazwę połączenia, klucz interfejsu API (jeśli typ uwierzytelniania jest równy kluczowi interfejsu API), baza interfejsu API, typ interfejsu API i wersja interfejsu API przed wybraniem przycisku Zapisz . Przepływ monitów obsługuje również identyfikator Entra firmy Microsoft jako typ uwierzytelniania opartego na tożsamości dla zasobu usługi Azure OpenAI. Dowiedz się więcej na temat konfigurowania usługi Azure OpenAI Service przy użyciu tożsamości zarządzanych.

Zrzut ekranu przedstawiający dodane połączenia usługi Azure OpenAI.

Aby uzyskać klucz interfejsu API, podstawowy, typ i wersję, możesz przejść do placu zabaw czatu w portalu Azure OpenAI i wybrać przycisk Wyświetl kod. W tym miejscu możesz skopiować niezbędne informacje i wkleić je do panelu tworzenia połączenia.

Zrzut ekranu przedstawiający plac zabaw czatu po wybraniu przycisku wyświetl kod, który wyświetla wyskakujące okienko z przykładowym kodem z wyróżnionym kluczem interfejsu API.

Po wprowadzeniu wymaganych pól wybierz pozycję Zapisz , aby utworzyć połączenie.

Tworzenie i opracowywanie przepływu monitów

Na karcie Przepływy na stronie głównej przepływu monitu wybierz pozycję Utwórz , aby utworzyć pierwszy przepływ monitu. Przepływ można utworzyć, klonując przykłady w galerii.

Klonowanie z przykładu

Wbudowane przykłady są wyświetlane w galerii.

W tym przewodniku użyjemy przykładu klasyfikacji internetowej, aby przejść przez główną podróż użytkownika. Możesz wybrać pozycję Wyświetl szczegóły na kafelku Klasyfikacja sieci Web, aby wyświetlić podgląd przykładu. Zostanie wyświetlone okno podglądu. Możesz przejrzeć przykładowe wprowadzenie, aby sprawdzić, czy przykład jest podobny do twojego scenariusza. Możesz też wybrać pozycję Klonuj, aby sklonować przykład bezpośrednio, a następnie sprawdzić przepływ. Przetestuj go, zmodyfikuj go.

Zrzut ekranu przedstawiający tworzenie na podstawie klasyfikacji sieci Web z wyróżnieniem galleya.

Po wybraniu pozycji Klonuj zostanie utworzony nowy przepływ i zapisany w określonym folderze w magazynie udziału plików obszaru roboczego. Nazwę folderu można dostosować zgodnie z preferencjami w panelu po prawej stronie.

Uruchamianie sesji obliczeniowej

Następnie wprowadź stronę tworzenia przepływu. Przed rozpoczęciem pracy należy najpierw rozpocząć sesję obliczeniową.

Sesja obliczeniowa służy jako zasoby obliczeniowe wymagane do uruchomienia aplikacji, w tym obraz platformy Docker zawierający wszystkie niezbędne pakiety zależności. Jest to element must-have do wykonywania przepływu.

Zrzut ekranu przedstawiający rozpoczęcie sesji obliczeniowej.

Strona tworzenia przepływu

Po rozpoczęciu sesji obliczeniowej możemy przyjrzeć się stronie tworzenia przepływu.

Zrzut ekranu przedstawiający klasyfikację sieci Web z wyróżnionym głównym obszarem roboczym.

Po lewej stronie tworzenia jest to widok spłaszczany, główny obszar roboczy, w którym można utworzyć przepływ, na przykład dodać nowy węzeł, edytować monit, wybrać dane wejściowe przepływu itp.

W prawym górnym rogu przedstawiono strukturę folderów przepływu. Każdy przepływ ma folder zawierający plik flow.dag.yaml, pliki kodu źródłowego i foldery systemowe. Przepływ można łatwo eksportować lub importować do celów testowania, wdrażania lub współpracy.

Oprócz wbudowanego edytowania węzła w widoku spłaszczania można również włączyć przełącznik Tryb nieprzetworzonego pliku i wybrać nazwę pliku, aby edytować plik na karcie otwierania pliku.

Zrzut ekranu przedstawiający kartę edycji pliku w trybie nieprzetworzonym pliku.

W prawym dolnym rogu jest to widok grafu tylko dla wizualizacji. Można powiększać, powiększać, powiększać, automatycznie układ itp.

W tym przewodniku użyjemy przykładu klasyfikacji internetowej, aby przejść przez główną podróż użytkownika. Klasyfikacja sieci Web to przepływ demonstrujący klasyfikację wieloklasową za pomocą usługi LLM. Biorąc pod uwagę adres URL, klasyfikuje adres URL do kategorii internetowej z zaledwie kilkoma zrzutami, prostymi podsumowaniami i monitami klasyfikacji. Na przykład podana wartość "https://www.imdb.com/"" klasyfikuje ten adres URL do "Movie".

W widoku grafu możesz zobaczyć, jak wygląda przykładowy przepływ. Dane wejściowe to adres URL do klasyfikowania, a następnie używa skryptu języka Python do pobierania zawartości tekstowej z adresu URL, użyj funkcji LLM, aby podsumować zawartość tekstową w ciągu 100 wyrazów, a następnie sklasyfikować na podstawie adresu URL i podsumowywać zawartość tekstową, a ostatnio użyj skryptu języka Python, aby przekonwertować dane wyjściowe llM na słownik. Węzeł prepare_examples służy do podawania kilku przykładów strzałów w wierszu polecenia węzła klasyfikacji.

Dane wejściowe przepływu

Podczas rozwijania sekcji Dane wejściowe można tworzyć i wyświetlać dane wejściowe. Przykład klasyfikacji sieci Web, jak pokazano na poniższym zrzucie ekranu, dane wejściowe przepływu są adresem URL typu ciągu.

Zrzut ekranu przedstawiający klasyfikację sieci Web z wyróżnionymi danymi wejściowymi.

Schemat wejściowy (nazwa: url; typ: ciąg) i wartość są już ustawione podczas klonowania przykładów. Możesz zmienić na inną wartość ręcznie, na przykład "https://www.imdb.com/".

Konfigurowanie węzłów LLM

Dla każdego węzła LLM należy wybrać połączenie, aby ustawić klucze interfejsu API LLM.

Zrzut ekranu przedstawiający listę rozwijaną połączenia z klasyfikacją sieci Web.

W tym przykładzie upewnij się, że typ interfejsu API jest czatem , ponieważ przykład monitu jest przeznaczony dla interfejsu API czatu. Aby poznać różnicę w formacie monitu interfejsu API czatu i uzupełniania, zobacz Tworzenie przepływu.

Następnie w zależności od wybranego typu połączenia należy wybrać wdrożenie lub model. Jeśli używasz połączenia Azure OpenAI, musisz wybrać wdrożenie z listy rozwijanej (jeśli nie masz wdrożenia, utwórz je w portalu Azure OpenAI, wykonując czynności opisane w temacie Tworzenie zasobu i wdrażanie modelu przy użyciu usługi Azure OpenAI). Jeśli używasz połączenia OpenAI, musisz wybrać model.

Mamy dwa węzły LLM (summarize_text_content i classify_with_llm) w przepływie, więc należy odpowiednio skonfigurować dla każdego z nich.

Uruchamianie pojedynczego węzła

Aby przetestować i debugować pojedynczy węzeł, wybierz ikonę Uruchom w węźle w widoku spłaszczanym. Stan uruchomienia jest wyświetlany u góry, po zakończeniu działania sprawdź dane wyjściowe w sekcji danych wyjściowych węzła.

Zrzut ekranu przedstawiający klasyfikację sieci Web pokazujący najpierw uruchomienie węzła języka Python, a następnie sprawdzenie danych wyjściowych, następnie uruchomienie węzła LLM i sprawdzenie jego danych wyjściowych.

Uruchom fetch_text_content_from_url następnie summarize_text_content, sprawdź, czy przepływ może pomyślnie pobrać zawartość z Internetu i podsumować zawartość internetową.

Stan pojedynczego węzła jest również wyświetlany w widoku grafu. Możesz również zmienić adres URL wejściowy przepływu, aby przetestować zachowanie węzła dla różnych adresów URL.

Uruchamianie całego przepływu

Aby przetestować i debugować cały przepływ, wybierz przycisk Uruchom w prawym górnym rogu.

Zrzut ekranu przedstawiający klasyfikację sieci Web z całym przebiegiem i wyróżnionym przyciskiem uruchamiania.

Następnie możesz sprawdzić stan uruchomienia i dane wyjściowe każdego węzła. Stany węzłów są również wyświetlane w widoku grafu. Podobnie można zmienić adres URL wejściowy przepływu, aby przetestować zachowanie przepływu dla różnych adresów URL.

Ustawianie i sprawdzanie danych wyjściowych przepływu

Zamiast sprawdzać dane wyjściowe w każdym węźle, można również ustawić dane wyjściowe przepływu i sprawdzić dane wyjściowe wielu węzłów w jednym miejscu. Ponadto dane wyjściowe przepływu pomagają:

  • Sprawdzanie wyników testów zbiorczych w jednej tabeli
  • Definiowanie mapowania interfejsu oceny
  • Ustawianie schematu odpowiedzi wdrożenia

Podczas klonowania przykładu dane wyjściowe przepływu (kategoria i dowody) są już ustawione.

Możesz wybrać przycisk Wyświetl ślad na banerze, aby wyświetlić szczegółowe informacje dotyczące danych wejściowych, wyjściowych, wykonywania przepływu i aranżacji. Widać, że przepływ przewiduje wejściowy adres URL z kategorią i dowodami.

Zrzut ekranu przedstawiający wyświetlanie śledzenia na stronie tworzenia.

 Zrzut ekranu przedstawiający przycisk wyświetl dane wyjściowe w dwóch lokalizacjach.

Możesz wybrać pozycję Wyświetl wynik testu, aby sprawdzić wszystkie testy historyczne na liście.

Zrzut ekranu przedstawiający przycisk Wyświetl dane wyjściowe w klasyfikacji sieci Web.

Zrzut ekranu przedstawiający wynik testu przepływu.

Testowanie i ocena

Po pomyślnym uruchomieniu przepływu z pojedynczym wierszem danych warto przetestować, czy działa dobrze w dużym zestawie danych, możesz uruchomić test zbiorczy i wybrać niektóre metody oceny, a następnie sprawdzić metryki.

Przygotowywanie danych

Najpierw należy przygotować dane testowe. Obecnie obsługujemy plik csv, tsv i jsonl.

Przejdź do witryny GitHub , aby pobrać "data.csv", złoty zestaw danych dla przykładu klasyfikacji internetowej.

Evaluate

Wybierz przycisk Oceń obok przycisku Uruchom, a następnie pojawi się prawy panel. Jest to kreator, który przeprowadzi Cię do przesłania przebiegu wsadowego i wybrania metody oceny (opcjonalnie).

Musisz ustawić nazwę przebiegu wsadowego, opis, a następnie wybrać pozycję Dodaj nowe dane , aby przekazać pobrane dane. Po przekazaniu danych lub jeśli współpracownicy w obszarze roboczym już utworzyli zestaw danych, możesz wybrać zestaw danych z listy rozwijanej i wyświetlić podgląd pierwszych pięciu wierszy. Lista rozwijana wyboru zestawu danych obsługuje wyszukiwanie i automatyczne pozyskiwanie.

Ponadto mapowanie danych wejściowych obsługuje mapowanie danych wejściowych przepływu na określoną kolumnę danych w zestawie danych, co oznacza, że można użyć dowolnej kolumny jako danych wejściowych, nawet jeśli nazwy kolumn nie są zgodne.

Zrzut ekranu przedstawiający uruchamianie i ocenę usługi Batch z wyróżnionym przekazywaniem nowych danych.

Następnie wybierz jedną lub wiele metod oceny. Metody oceny to również przepływy, które używają języka Python lub LLM itp., do obliczania metryk, takich jak dokładność, ocena istotności. Wbudowane przepływy ewaluacyjne i dostosowane są wymienione na stronie. Ponieważ klasyfikacja sieci Web jest scenariuszem klasyfikacji, warto wybrać ocenę dokładności klasyfikacji.

Zrzut ekranu przedstawiający klasyfikację wsadową i ocenę metod oceny.

Jeśli interesuje Cię sposób definiowania metryk dla wbudowanych metod oceny, możesz wyświetlić podgląd przepływów oceny, wybierając pozycję Więcej szczegółów.

Po wybraniu opcji Ocena dokładności klasyfikacji jako metody oceny można ustawić mapowanie interfejsu w celu zamapowania podstawy prawdy na dane wejściowe przepływu i przewidywania na dane wyjściowe przepływu.

Zrzut ekranu przedstawiający klasyfikację wsadową i ocenę ustawień oceny.

Następnie wybierz pozycję Przejrzyj i prześlij , aby przesłać przebieg wsadowy i wybraną ocenę.

Sprawdzanie wyników

Po pomyślnym przesłaniu przebiegu wybierz pozycję Wyświetl listę uruchomień, aby przejść do listy uruchomień wsadowych tego przepływu.

Ukończenie przebiegu wsadowego może zająć trochę czasu. Możesz odświeżyć stronę, aby załadować najnowszy stan.

Po zakończeniu przebiegu wsadowego wybierz przebieg, a następnie zwizualizuj dane wyjściowe, aby wyświetlić wynik przebiegu wsadowego . Wybierz pozycję Wyświetl dane wyjściowe (ikona oka), aby dołączyć wyniki oceny do tabeli wyników przebiegu wsadowego . Zobaczysz łączną liczbę tokenów i ogólną dokładność, a następnie w tabeli zobaczysz wyniki dla każdego wiersza danych: dane wejściowe, dane wyjściowe przepływu i wyniki oceny (które przypadki są przewidywane poprawnie i które nie są).

Zrzut ekranu przedstawiający stronę szczegółów przebiegu wsadowego klasyfikacji sieci Web w celu wyświetlenia danych wyjściowych.

Możesz dostosować szerokość kolumn, ukryć/odkryć kolumny, zmienić kolejność kolumn. Możesz również wybrać pozycję Eksportuj , aby pobrać tabelę danych wyjściowych w celu dalszego zbadania. Udostępniamy 2 opcje:

  • Pobierz bieżącą stronę: plik CSV danych wyjściowych przebiegu wsadowego na bieżącej stronie.
  • Pobierz wszystkie dane: co do pobrania jest plik notesu Jupyter, musisz uruchomić go, aby pobrać dane wyjściowe w formacie jsonl lub csv.

Jak można wiedzieć, dokładność nie jest jedyną metryką, która może ocenić zadanie klasyfikacji, na przykład można również użyć przypomnienia do oceny. W takim przypadku możesz wybrać pozycję Oceń obok przycisku "Wizualizuj dane wyjściowe", a następnie wybrać inne metody oceny do oceny.

Wdrożenie

Po utworzeniu przepływu i przetestowaniu go prawidłowo możesz wdrożyć jako punkt końcowy, aby można było wywołać punkt końcowy na potrzeby wnioskowania w czasie rzeczywistym.

Konfigurowanie punktu końcowego

Wybierz link uruchom wsadowy, a następnie przejdź do strony szczegółów przebiegu wsadowego, wybierz pozycję Wdróż. Zostanie wyświetlony kreator umożliwiający skonfigurowanie punktu końcowego. Określ nazwę punktu końcowego i wdrożenia, wybierz maszynę wirtualną, ustaw połączenia, wykonaj niektóre ustawienia (możesz użyć ustawień domyślnych), wybierz pozycję Przejrzyj i utwórz , aby rozpocząć wdrażanie.

Testowanie punktu końcowego

Możesz przejść do strony szczegółów punktu końcowego z powiadomienia lub przechodząc do pozycji Punkty końcowe w lewym obszarze nawigacyjnym programu Studio, a następnie wybrać punkt końcowy na karcie Punkty końcowe czasu rzeczywistego. Wdrożenie punktu końcowego trwa kilka minut. Po pomyślnym wdrożeniu punktu końcowego można go przetestować na karcie Test .

Umieść adres URL, który chcesz przetestować w polu wejściowym, a następnie wybierz pozycję Testuj, a następnie zobaczysz wynik przewidywany przez punkt końcowy.

Czyszczenie zasobów

Jeśli planujesz kontynuować przewodniki z instrukcjami i chcesz korzystać z zasobów utworzonych tutaj, przejdź do sekcji Następne kroki.

Zatrzymywanie wystąpienia obliczeniowego

Jeśli nie zamierzasz go teraz używać, zatrzymaj wystąpienie obliczeniowe:

  1. W programie Studio w obszarze nawigacji po lewej stronie wybierz pozycję Obliczenia.
  2. Na pierwszych kartach wybierz pozycję Wystąpienia obliczeniowe
  3. Wybierz wystąpienie obliczeniowe na liście.
  4. Na górnym pasku narzędzi wybierz pozycję Zatrzymaj.

Usuwanie wszystkich zasobów

Jeśli nie planujesz korzystać z żadnych utworzonych zasobów, usuń je, aby nie ponosić żadnych opłat:

  1. W witrynie Azure Portal na końcu z lewej strony wybierz pozycję Grupy zasobów.
  2. Z listy wybierz utworzoną grupę zasobów.
  3. Wybierz pozycję Usuń grupę zasobów.

Następne kroki

Teraz, gdy masz już pomysł na to, co jest związane z opracowywaniem, testowaniem, ocenianiem i wdrażaniem przepływów, dowiedz się więcej o procesie w tych samouczkach: