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 Learning Studio. Dowiesz się, jak włączyć przepływ monitów w obszarze roboczym usługi Azure Machine Learning, 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 ułatwia bezpieczne przechowywanie kluczy tajnych lub innych poufnych poświadczeń wymaganych do interakcji z usługą LLM (modelami dużych języków) i innymi narzędziami zewnętrznymi, na przykład zabezpieczenia zawartości platformy Azure.
Przejdź do strony głównej przepływu monitów, wybierz kartę Połączenia . Połączenie 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.
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.
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.
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.
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.
Strona tworzenia przepływu
Po rozpoczęciu sesji obliczeniowej możemy przyjrzeć się stronie tworzenia przepływu.
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.
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.
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.
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.
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.
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.
Możesz wybrać pozycję Wyświetl wynik testu, aby sprawdzić wszystkie testy historyczne na liście.
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.
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.
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.
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ą).
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:
- W programie Studio w obszarze nawigacji po lewej stronie wybierz pozycję Obliczenia.
- Na pierwszych kartach wybierz pozycję Wystąpienia obliczeniowe
- Wybierz wystąpienie obliczeniowe na liście.
- 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:
- W witrynie Azure Portal na końcu z lewej strony wybierz pozycję Grupy zasobów.
- Z listy wybierz utworzoną grupę zasobów.
- 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: