Tworzenie przepływu monitów (wersja klasyczna)

Dotyczy tylko:Portal Foundry (klasyczny). Ten artykuł nie jest dostępny w nowym portalu Foundry. Dowiedz się więcej o nowym portalu.

Uwaga

Linki w tym artykule mogą otwierać zawartość w nowej dokumentacji Microsoft Foundry, w przeciwieństwie do dokumentacji Foundry (klasycznej), którą przeglądasz obecnie.

Ostrzeżenie

Tworzenie funkcji prompt flow zakończyło się 20 kwietnia 2026 r. Funkcja zostanie w pełni wycofana 20 kwietnia 2027 r. W dniu wycofania usługa Prompt Flow wprowadza tryb tylko do odczytu. Istniejące przepływy będą nadal działać do tej daty.

Zalecane działanie: Przenieś swoje obciążenia robocze na Prompt Flow do Microsoft Agent Framework przed kwietnia 20, 2027.

Przepływ monitów to narzędzie programistyczne zaprojektowane w celu usprawnienia całego cyklu tworzenia aplikacji sztucznej inteligencji obsługiwanych przez duże modele językowe (LLMs). Przepływ monitów zapewnia kompleksowe rozwiązanie, które upraszcza proces tworzenia prototypów, eksperymentowania, iteracji i wdrażania aplikacji sztucznej inteligencji.

Dzięki przepływowi monitów możesz wykonywać następujące elementy:

  • Orkiestruj przepływy wykonywalne za pomocą narzędzi LLM, monitów i Python za pomocą wizualizowanego grafu.
  • Testowanie, debugowanie i iterowanie przepływów z łatwością.
  • Utwórz warianty monitów i porównaj ich wydajność.

Z tego artykułu dowiesz się, jak utworzyć i opracować pierwszy przepływ monitów w portalu Microsoft Foundry.

Wymagania wstępne

Ważne

Ten artykuł zapewnia wsparcie dziedzictwa dla projektów opartych na węźle. Nie będzie działać dla projektów odlewni. Zobacz Jak sprawdzić, jaki typ projektu mam?

SDK compatibility note: Przykłady kodu wymagają określonej wersji zestawu SDK Microsoft Foundry. Jeśli napotkasz problemy ze zgodnością, rozważ migrację z projektu opartego na hubie do projektu Foundry.

  • Przepływ monitów wymaga sesji obliczeniowej. Jeśli nie masz środowiska uruchomieniowego, możesz go utworzyć w portalu Foundry.
  • Potrzebujesz wdrożonego modelu.
  • W projekcie skonfiguruj zarządzanie dostępem do konta magazynu obiektów blob. Przypisz rolę Współautor danych Blob usługi Storage do swojego konta użytkownika.
    • W lewym dolnym rogu portalu Foundry wybierz pozycję Centrum zarządzania.
    • W Łączone zasoby centrum wybierz link odpowiadający typowi Azure Blob Storage.
    • Wybierz Wyświetl w portalu Azure
    • W portalu Azure wybierz pozycję Kontrola dostępu (IAM).
    • Wybierz Dodaj>przypisanie roli.
    • Wyszukaj Storage Blob Data Contributor, następnie wybierz ją.
    • Użyj strony Dodaj przypisanie roli, aby dodać siebie jako członka.
    • Wybierz Przejrzyj i przypisz, aby sprawdzić zadanie.
    • Wybierz Przejrzyj i przypisz, aby przypisać rolę.

Stwórz i opracuj przepływ wiadomości

Przepływ można utworzyć przez sklonowanie przykładów dostępnych w galerii lub utworzenie przepływu od podstaw. Jeśli masz już pliki przepływu na lokalnym dysku lub w udziale plików, możesz również zaimportować pliki, aby utworzyć przepływ.

Aby utworzyć przepływ monitu z galerii w portalu Foundry:

Wskazówka

Ponieważ możesz dostosować lewe okienko w portalu Microsoft Foundry, możesz zobaczyć inne elementy niż te pokazane w tych krokach. Jeśli nie widzisz szukanych danych, wybierz pozycję ... Więcej w dolnej części okienka po lewej stronie.

Zaloguj się do Microsoft Foundry. Upewnij się, że przełącznik New Foundry jest wyłączony. Te kroki odnoszą się do rozwiązania Foundry (wersja klasyczna).

  1. Wybierz projekt.

  2. Jeśli jesteś w centrum zarządzania, wybierz Przejdź do projektu, aby powrócić do swojego projektu.

  3. Z zwijanego menu po lewej stronie wybierz pozycję Przepływ monitów.

  4. Wybierz + Utwórz.

  5. Na kafelku Przepływ standardowy wybierz pozycję Utwórz.

  6. Na stronie Tworzenie nowego przepływu wprowadź nazwę folderu, a następnie wybierz pozycję Utwórz.

    Zrzut ekranu przedstawiający wybieranie i tworzenie standardowego przepływu.

  7. Zostanie otwarta strona konfiguracji przepływu. Wybierz pozycję Rozpocznij sesję obliczeniową , aby mieć uruchomioną sesję obliczeniową dla przepływu.

  8. Teraz możesz rozpocząć tworzenie przepływu. Domyślnie jest wyświetlany przykładowy przepływ. Ten przykładowy przepływ zawiera węzły dla narzędzi LLM i Python.

    Zrzut ekranu przedstawiający dane wejściowe i wyjściowe przepływu monitu edycji na stronie edycji przepływu monitu.

    Uwaga

    Widok grafu tylko dla wizualizacji. Przedstawia on strukturę przepływu, którą tworzysz. Nie można edytować widoku grafu bezpośrednio, ale można powiększać, pomniejszać i przewijać. Możesz wybrać węzeł w widoku grafu, aby wyróżnić węzeł i przejść do węzła w widoku edycji narzędzia.

  9. Opcjonalnie możesz dodać więcej narzędzi do procesu. Widoczne opcje narzędzi to LLM, Prompt i Python. Aby wyświetlić więcej narzędzi, wybierz pozycję + Więcej narzędzi.

    Zrzut ekranu przedstawiający miejsce, w którym można znaleźć więcej narzędzi na stronie przepływu monitu edycji.

  10. Wybierz połączenie i implementację w edytorze narzędzia LLM.

    Zrzut ekranu przedstawiający wybrane połączenie i wdrożenie w narzędziu LLM na stronie przepływu monitu edycji.

  11. W sekcji Dane wejściowe dodaj wartość tematu. Na przykład "atomy".

  12. Wybierz pozycję Uruchom , aby uruchomić przepływ.

    Zrzut ekranu przedstawiający, gdzie wybrać pozycję Uruchom na stronie przepływu monitu edycji.

  13. Stan uruchomienia przepływu jest wyświetlany jako Uruchomiono.

    Zrzut ekranu przedstawiający przepływ w stanie uruchomienia na stronie przepływu monitu edycji.

  14. Po zakończeniu przebiegu przepływu wybierz pozycję Wyświetl dane wyjściowe , aby wyświetlić wyniki przepływu.

    Zrzut ekranu przedstawiający miejsce, w którym można wybrać, aby wyświetlić wyniki przepływu z poziomu strony przepływu monitu edycji.

  15. Stan i dane wyjściowe przebiegu przepływu można wyświetlić w sekcji Dane wyjściowe .

    Zrzut ekranu przedstawiający szczegóły danych wyjściowych.

Tworzenie przepływu

Każdy przepływ jest reprezentowany przez folder zawierający plik "flow.dag.yaml", pliki kodu źródłowego i foldery systemowe. Możesz dodawać nowe pliki, edytować istniejące pliki i usuwać pliki. Możesz również wyeksportować pliki do lokalizacji lokalnej lub zaimportować pliki z lokalizacji lokalnej.

Oprócz bezpośredniego edytowania węzła w widoku domyślnym można również włączyć przełącznik Tryb nieprzetworzonego pliku i wybrać nazwę pliku, aby edytować plik w zakładce z otwartym plikiem.

Wejścia i wyjścia przepływu

Dane wejściowe przepływu to dane przekazywane do przepływu jako całości. Zdefiniuj schemat wejściowy, określając nazwę i typ. Ustaw wartość wejściową poszczególnych danych wejściowych, aby przetestować przepływ. Możesz odwołać się do danych wejściowych przepływu w węzłach przepływu używając składni ${inputs.[input name]}.

Dane wyjściowe przepływu to dane generowane przez przepływ jako całość, które podsumowuje wyniki wykonywania przepływu. Możesz wyświetlić i wyeksportować tabelę danych wyjściowych po zakończeniu przebiegu przepływu lub przebiegu wsadowego. Zdefiniuj wartość wyjściową przepływu, odwołując się do danych wyjściowych pojedynczego węzła przepływu przy użyciu składni ${[node name].output} lub ${[node name].output.[field name]}.

Odwołując się do danych wyjściowych węzła, można połączyć węzły razem. Można na przykład odwołać się do danych wyjściowych węzła LLM w danych wejściowych węzła Python, aby węzeł Python mógł korzystać z danych wyjściowych węzła LLM, a w widoku grafu widać, że dwa węzły są połączone ze sobą.

Umożliwia kontrolę warunkową przepływu

Usługa Prompt Flow oferuje nie tylko usprawniony sposób wykonywania przepływu, ale także oferuje zaawansowaną funkcję dla deweloperów — kontrolę warunkową, która umożliwia użytkownikom ustawianie warunków wykonywania dowolnego węzła w przepływie.

Na swoim rdzeniu kontrola warunkowa zapewnia możliwość kojarzenia każdego węzła w przepływie z konfiguracją aktywacji . Ta konfiguracja jest zasadniczo instrukcją "when", która określa, kiedy należy wykonać węzeł. Możliwości tej funkcji są realizowane, gdy masz złożone przepływy, w których wykonywanie niektórych zadań zależy od wyniku poprzednich zadań. Za pomocą kontrolki warunkowej można skonfigurować określone węzły do wykonania tylko wtedy, gdy zostaną spełnione określone warunki.

W szczególności możesz ustawić konfigurację aktywacji dla węzła, wybierając przycisk Aktywuj konfigurację na karcie węzła. Możesz dodać instrukcję "when" i ustawić warunek. Warunki można ustawić, odwołując się do danych wejściowych przepływu lub danych wyjściowych węzła. Można na przykład ustawić warunek ${inputs.[input name]} jako określoną wartość lub ${[node name].output} określoną wartość.

Jeśli warunek nie zostanie spełniony, węzeł zostanie pominięty. Status węzła jest wyświetlany jako "Ominięty".

Testowanie przepływu

Przepływ można przetestować na dwa sposoby:

  • Uruchom pojedynczy węzeł:

    • Aby uruchomić jeden węzeł, wybierz ikonę Uruchom w węźle w widoku domyślnym. Po zakończeniu działania możesz szybko sprawdzić wynik w sekcji Dane wyjściowe węzła . n Zrzut ekranu przedstawia przycisk 'Uruchom' na karcie węzła.
  • Uruchom cały przepływ:

    • Aby uruchomić cały przepływ, wybierz przycisk Uruchom w prawym górnym rogu.

Wyświetlanie wyniku testu i śladu (wersja zapoznawcza)

Śledzenie jest domyślnie wyłączone, aby włączyć śledzenie, musisz ustawić zmienną środowiskową PF_DISABLE_TRACING na falsewartość . Jednym ze sposobów wykonania tej czynności jest dodanie następujących elementów do węzła języka Python:

import os
os.environ["PF_DISABLE_TRACING"] = "false"

W przypadku całego przebiegu procesu, po jego wykonaniu, możesz zobaczyć status uruchomienia na banerze wykonania. Aby wyświetlić ślad na potrzeby sprawdzania wyniku i obserwowania wykonywania przepływu, możesz wybrać pozycję Wyświetl dane wyjściowe , a następnie wybrać kartę śledzenia . Możesz zobaczyć dane wejściowe i wyjściowe całego przepływu i każdego węzła wraz z bardziej szczegółowymi informacjami na temat debugowania. Jest ona dostępna podczas uruchamiania i po zakończeniu przebiegu.

Zrozum widok śledzenia

Wybierz kartę Ślad na ekranie Dane wyjściowe, aby wyświetlić wykres zawierający informacje o czasie trwania i skojarzonym koszcie tokenu przepływu. Wybierz przepływ pod nazwą węzła, aby wyświetlić szczegółowe informacje o przepływie w okienku po prawej stronie.

 Zrzut ekranu przedstawiający szczegóły śledzenia.

Uwaga

W zestawie SDK przepływu monitów zdefiniowaliśmy kilka typów segmentów, w tym LLM, Function, Embedding, Retrieval i Flow. System automatycznie tworzy zakresy z informacjami wykonywania w wyznaczonych atrybutach i zdarzeniach.

Aby dowiedzieć się więcej o typach zakresów, zobacz Trace span (Zakres śledzenia).

Opracowywanie przepływu czatu

Przepływ czatu jest przeznaczony do tworzenia aplikacji konwersacyjnych, opierając się na możliwościach standardowego przepływu i zapewniając rozszerzoną obsługę danych wejściowych/wyjściowych czatów i zarządzania historią czatu. Dzięki przepływowi czatów można łatwo utworzyć czatbot, który obsługuje dane wejściowe i wyjściowe czatu.

Na stronie tworzenia przepływu czatu, przepływ ten jest oznaczony etykietą "czat", aby odróżnić go od standardowego przepływu i przepływu oceny. Aby przetestować przepływ czatu, wybierz przycisk "Czat", aby wyzwolić okno czatu na potrzeby konwersacji.

Dane wejściowe/wyjściowe czatu i historia czatu

Najważniejszymi elementami, które odróżniają przepływ czatu od standardowego przepływu, są dane wejściowe czatu, historia czatu i dane wyjściowe czatu.

  • Dane wejściowe czatu: dane wejściowe czatu odnoszą się do wiadomości lub zapytań przesłanych przez użytkowników do czatbota. Efektywne obsługa danych wejściowych czatu ma kluczowe znaczenie dla pomyślnej konwersacji, ponieważ obejmuje zrozumienie intencji użytkownika, wyodrębnienie odpowiednich informacji i wyzwolenie odpowiednich odpowiedzi.
  • Historia czatów: historia czatów to rekord wszystkich interakcji między użytkownikiem i czatbotem, w tym zarówno danych wejściowych użytkownika, jak i wygenerowanych danych wyjściowych sztucznej inteligencji. Utrzymywanie historii czatów jest niezbędne do śledzenia kontekstu konwersacji i zapewnienia, że sztuczna inteligencja może generować kontekstowo odpowiednie odpowiedzi.
  • Dane wyjściowe czatu: dane wyjściowe czatu odnoszą się do wiadomości generowanych przez sztuczną inteligencję, które są wysyłane do użytkownika w odpowiedzi na swoje dane wejściowe. Generowanie kontekstowo odpowiednich i angażujących wyników czatu jest niezbędne dla pozytywnego doświadczenia użytkownika.

Przepływ czatu może mieć różne dane wejściowe, a zarówno historia czatu, jak i dane wejściowe czatu są wymagane w tym procesie.

  • W sekcji Dane wejściowe przepływu czatu dane wejściowe przepływu można oznaczyć jako dane wejściowe czatu. Następnie możesz wypełnić wartość wejściową czatu, wpisując w polu czatu.

  • Przepływ monitów może ułatwić użytkownikowi zarządzanie historią czatów. Sekcja chat_history w sekcji Dane wejściowe jest zarezerwowana do reprezentowania historii czatów. Wszystkie interakcje w polu czatu, w tym dane wejściowe czatu użytkownika, wygenerowane dane wyjściowe czatu i inne dane wejściowe i wyjściowe przepływu, są automatycznie przechowywane w historii czatów. Użytkownik nie może ręcznie ustawić wartości chat_history w sekcji Dane wejściowe. Jest on ustrukturyzowany jako lista danych wejściowych i wyjściowych:

    [
    {
        "inputs": {
        "<flow input 1>": "xxxxxxxxxxxxxxx",
        "<flow input 2>": "xxxxxxxxxxxxxxx",
        "<flow input N>""xxxxxxxxxxxxxxx"
        },
        "outputs": {
        "<flow output 1>": "xxxxxxxxxxxx",
        "<flow output 2>": "xxxxxxxxxxxxx",
        "<flow output M>": "xxxxxxxxxxxxx"
        }
    },
    {
        "inputs": {
        "<flow input 1>": "xxxxxxxxxxxxxxx",
        "<flow input 2>": "xxxxxxxxxxxxxxx",
        "<flow input N>""xxxxxxxxxxxxxxx"
        },
        "outputs": {
        "<flow output 1>": "xxxxxxxxxxxx",
        "<flow output 2>": "xxxxxxxxxxxxx",
        "<flow output M>": "xxxxxxxxxxxxx"
        }
    }
    ]
    

Uwaga

Funkcja automatycznego zapisywania historii czatów lub zarządzania nią jest funkcją na stronie tworzenia podczas przeprowadzania testów w polu czatu. W przypadku przebiegów wsadowych użytkownicy muszą uwzględnić historię czatów w zestawie danych przebiegu wsadowego. Jeśli nie ma dostępnej historii czatów do testowania, ustaw chat_history na pustą listę [] w zestawie danych uruchomień wsadowych.

Instrukcja autora z historią czatu

Włączenie historii czatu do monitów jest niezbędne do tworzenia kontekstowych i angażujących odpowiedzi czatbota. W swoich monitach możesz odwołać się do chat_history w celu uzyskania poprzednich interakcji. Dzięki temu można odwoływać się do poprzednich danych wejściowych i wyjściowych, aby utworzyć kontekstowe odpowiedzi.

Użyj gramatyki pętli dla języka Jinja , aby wyświetlić listę danych wejściowych i wyjściowych z pliku chat_history.

{% for item in chat_history %}
user:
{{item.inputs.question}}
assistant:
{{item.outputs.answer}}
{% endfor %}

Testowanie przy użyciu pola czatu

Pole czatu zapewnia interaktywny sposób testowania przepływu czatu, symulując rozmowę z czatbotem. Aby przetestować przepływ czatu przy użyciu okna czatu, wykonaj następujące kroki:

  1. Wybierz przycisk "Czat", aby otworzyć okno czatu.
  2. Wpisz dane wejściowe testu w polu czatu i naciśnij klawisz Enter, aby wysłać je do czatbota.
  3. Przejrzyj odpowiedzi czatbota, aby upewnić się, że są one kontekstowo odpowiednie i dokładne.
  4. Podgląd śladu na miejscu do szybkiego obserwowania i debugowania.

Następne kroki