Uwaga
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dotyczy: Azure Logic Apps (Standard)
Uwaga / Notatka
Ta funkcja jest dostępna w wersji zapoznawczej i podlega dodatkowym warunkom użytkowania wersji zapoznawczej platformy Microsoft Azure.
Załóżmy, że chcesz zautomatyzować sposób, w jaki przedsiębiorstwo lub organizacja odpowiada na pytania różnych grup osób, takich jak pracownicy, klienci, inwestorzy lub media. Możesz dodać interakcje czatu, które odpowiadają na pytania, korzystając z akcji usługi Azure OpenAI o nazwie Uzyskaj kompletacje czatu przy użyciu szablonu monitu i danych z twojego przedsiębiorstwa lub organizacji.
Jeśli używasz własnych danych z modelami w usłudze Azure OpenAI Service, tworzysz platformę konwersacji opartej na sztucznej inteligencji, która zapewnia szybszą komunikację i czerpie kontekst z konkretnej wiedzy o domenie. Aby utworzyć proces, który obsługuje każde pytanie, uzyskuje dostęp do źródła danych i zwraca odpowiedź, utwórz standardowy przepływ pracy w usłudze Azure Logic Apps, aby zautomatyzować niezbędne kroki — wszystko bez konieczności pisania kodu.
W tym przewodniku pokazano, jak dodać interakcje czatu do standardowego przepływu pracy przy użyciu szablonu monitu jako punktu początkowego. Ten szablon jest wstępnie utworzoną strukturą opartą na tekście, wielokrotnie używaną i prowadzącą interakcje między modelem AI a pytającymi.
Na poniższym diagramie przedstawiono przykładowy przepływ pracy tworzony przez ten przewodnik:
Aby uzyskać więcej informacji na temat operacji w tym przepływie pracy, zobacz Przeglądanie przykładowego scenariusza.
Szablony zapewniają następujące korzyści w zakresie tworzenia efektywnych, przydatnych i przejrzystych monitów, które są zgodne z określonymi przypadkami użycia:
Korzyść | Opis |
---|---|
Spójność | Scentralizowanie logiki monitu, a nie osadzanie tekstu monitu w każdej akcji. |
Możliwość ponownego zastosowania | Zastosuj ten sam monit w wielu przepływach pracy. |
Łatwość konserwacji | Dostosuj logikę monitu w jednym miejscu bez edytowania całego przepływu. |
Kontrolka dynamiczna | Dane wejściowe przepływu pracy są przekazywane bezpośrednio do szablonu, na przykład wartości z formularza, bazy danych lub interfejsu API. |
Wszystkie te korzyści ułatwiają tworzenie dostosowanych przepływów opartych na sztucznej inteligencji, które są odpowiednie dla skalowalnej automatyzacji przedsiębiorstwa — bez duplikowania wysiłku.
Więcej informacji można znaleźć w następującej dokumentacji:
Zapoznaj się z przykładowym scenariuszem
W tym przewodniku użyto przykładowego scenariusza, który tworzy asystenta czatu dla zespołu IT. Oprócz innych obowiązków zespół nabywa sprzęt, taki jak laptopy dla pracowników firmy. Wymagania dotyczące tego asystenta obejmują następujące zadania:
- Zaakceptuj pytanie, które używa języka naturalnego i rozumie kontekst.
- Odczytywanie i wyszukiwanie danych strukturalnych, takich jak wcześniejsze zamówienia i szczegóły wykazu.
- Przekazywanie wyników do szablonu monitu przy użyciu składni Jinja2 w celu dynamicznego wstrzykiwania danych w czasie wykonywania.
- Wygeneruj dopracowaną i profesjonalną odpowiedź.
Przykładowy przepływ pracy używa następujących operacji:
Operacja | Opis |
---|---|
Wbudowany wyzwalacz o nazwie Gdy dostępne jest żądanie HTTP | Czeka na odebranie żądania HTTPS z zewnętrznego obiektu wywołującego. W wyniku tego żądania zostaje uruchomiony wyzwalacz, zostaje uruchomiony przepływ pracy i jest przekazywany zserializowany ciąg znaków tokenu zawierający dane wejściowe do użycia przez akcje przepływu pracy. |
Trzy wbudowane akcje redagowania | Te akcje przechowują następujące dane testowe: - Pracownik: profil pracownika i wcześniejsze zamówienia zakupu. - Pytanie: Pytanie zadane. - Produkty: Wpisy w wewnętrznym katalogu produktów. |
Wbudowana akcja o nazwie Ukończenia czatu przy użyciu szablonu promptu | Pobiera wyniki czatu dla określonego szablonu zapytania. Aby uzyskać więcej informacji, zobacz Pobieranie uzupełniania czatu przy użyciu szablonu monitu. |
Wskazówka
Jeśli masz wybór, zawsze wybieraj operację wbudowaną ("w aplikacji") nad zarządzaną ("udostępnioną") wersją. Wbudowana wersja działa wewnątrz środowiska uruchomieniowego usługi Azure Logic Apps, aby zmniejszyć opóźnienie i zapewnić lepszą wydajność i kontrolę nad uwierzytelnianiem.
W tym przykładzie jest tworzony i używany szablon monitu, który umożliwia przepływowi pracy wykonywanie następujących zadań:
- Zdefiniuj monit z symbolami zastępczymi, takimi jak
{{ Employee.orders }}
. - Automatycznie wypełnij szablon danymi wyjściowymi z wcześniejszych akcji w przepływie pracy.
- Generowanie spójnych i ustrukturyzowanych monitów przy minimalnym nakładzie pracy.
Aby postępować zgodnie z przykładem, pobierz przykładowy szablon monitu i dane wejściowe z repozytorium GitHub usługi Azure Logic Apps. W tym przykładzie przyjęto założenie, że symulujesz dane zaopatrzenia przy użyciu danych wejściowych testów.
Wymagania wstępne
Konto i subskrypcja platformy Azure. Jeśli nie masz subskrypcji platformy Azure, zarejestruj się w celu założenia bezpłatnego konta platformy Azure.
Zasób standardowej aplikacji logiki z pustym stanowym przepływem pracy, który przechowuje historię uruchamiania oraz wartości zmiennych, danych wejściowych i wyjściowych, których można użyć do testowania.
Aby utworzyć ten zasób i przepływ pracy, zobacz Tworzenie przykładowego standardowego przepływu pracy aplikacji logiki przy użyciu witryny Azure Portal.
Zasób usługi Azure OpenAI z zainstalowanym modelem, takim jak GPT-3.5 lub GPT-4.
Przykład w tym przewodniku z instrukcjami zawiera dane testowe, których można użyć do wypróbowania przepływu pracy. Aby porozmawiać z własnymi danymi przy użyciu modeli usługi Azure OpenAI Service, musisz utworzyć projekt rozwiązania Azure AI Foundry i dodać własne źródło danych. Więcej informacji można znaleźć w następującej dokumentacji:
Po dodaniu akcji Azure OpenAI do przepływu pracy możesz utworzyć połączenie z zasobem usługi Azure OpenAI Service. Potrzebny jest adres URL punktu końcowego z zasobu usługi Azure OpenAI Service i następujące informacje na podstawie wybranego typu uwierzytelniania:
Typ uwierzytelniania Wymagane wartości do znalezienia Uwierzytelnianie oparte na adresach URL i kluczach 1. Przejdź do zasobu usługi Azure OpenAI Service .
2. W menu zasobów w obszarze Zarządzanie zasobami wybierz pozycję Klucze i punkt końcowy.
3. Skopiuj adres URL punktu końcowego i wartość klucza . Przechowuj te wartości w bezpiecznym miejscu.Active Directory OAuth 1. Skonfiguruj zasób aplikacji logiki na potrzeby uwierzytelniania OAuth 2.0 przy użyciu uwierzytelniania identyfikatora Entra firmy Microsoft.
2. Przejdź do zasobu usługi Azure OpenAI Service .
3. W menu zasobów w obszarze Zarządzanie zasobami wybierz pozycję Klucze i punkt końcowy.
4. Skopiuj adres URL punktu końcowego . Zapisz tę wartość w bezpiecznym miejscu.Tożsamość zarządzana
(zalecana)1. Wykonaj ogólne kroki, aby skonfigurować tożsamość zarządzaną za pomocą Microsoft Entra ID dla aplikacji logicznej.
2. Przejdź do zasobu usługi Azure OpenAI Service .
3. W menu zasobów w obszarze Zarządzanie zasobami wybierz pozycję Klucze i punkt końcowy.
4. Skopiuj adres URL punktu końcowego . Zapisz tę wartość w bezpiecznym miejscu.Ostrzeżenie
Zawsze zabezpieczaj i chronij poufne i osobiste dane, takie jak poświadczenia, wpisy tajne, klucze dostępu, parametry połączenia, certyfikaty, odciski palca i podobne informacje o najwyższym dostępnym lub obsługiwanym poziomie zabezpieczeń.
W przypadku uwierzytelniania i autoryzacji skonfiguruj lub użyj identyfikatora Entra firmy Microsoft z tożsamością zarządzaną. To rozwiązanie zapewnia optymalne i doskonałe zabezpieczenia bez konieczności ręcznego udostępniania poświadczeń, wpisów tajnych, kluczy dostępu itd., ponieważ platforma Azure obsługuje tożsamość zarządzaną. Aby skonfigurować tożsamość zarządzaną dla usługi Azure Logic Apps, zobacz Uwierzytelnianie dostępu i połączeń z zasobami platformy Azure przy użyciu tożsamości zarządzanych w usłudze Azure Logic Apps.
Jeśli nie możesz użyć tożsamości zarządzanej, wybierz dostępne następne rozwiązanie zabezpieczeń najwyższego poziomu. Jeśli na przykład musisz użyć parametrów połączenia, które zawierają informacje wymagane do uzyskania dostępu do zasobu, usługi lub systemu, pamiętaj, że te parametry zawierają klucz dostępu podobny do hasła głównego.
Upewnij się, że te informacje są bezpiecznie przechowywane przy użyciu identyfikatora Entra firmy Microsoft i usługi Azure Key Vault. Nie koduj tych informacji na stałe, udostępniaj innym użytkownikom ani nie zapisuj ich w zwykły tekst w dowolnym miejscu, do którego inni mogą uzyskiwać dostęp. Skonfiguruj plan rotacji lub unieważniania tajemnic w przypadku ich kompromitacji. Aby uzyskać więcej informacji, zobacz następujące zasoby:
Zainstaluj lub użyj narzędzia, które może wysyłać żądania HTTP w celu przetestowania rozwiązania, na przykład:
- Visual Studio Code z rozszerzeniem z Visual Studio Marketplace
- PowerShell Invoke-RestMethod
- Microsoft Edge — narzędzie konsoli sieciowej
- Bruno
- lok
Ostrzeżenie
W przypadku scenariuszy, w których masz poufne dane, takie jak poświadczenia, wpisy tajne, tokeny dostępu, klucze interfejsu API i inne podobne informacje, upewnij się, że używasz narzędzia chroniącego dane przy użyciu niezbędnych funkcji zabezpieczeń. Narzędzie powinno działać w trybie offline lub lokalnie, a nie wymagać logowania się do konta online lub synchronizowania danych z chmurą. W przypadku używania narzędzia z tymi cechami można zmniejszyć ryzyko ujawnienia poufnych danych publicznie.
Dodawanie wyzwalacza
Przepływ pracy wymaga wyzwalacza, aby określić moment rozpoczęcia działania. Możesz użyć dowolnego wyzwalacza, który pasuje do danego scenariusza. Aby uzyskać więcej informacji, zobacz Wyzwalacze.
Dodaj wyzwalacz, wykonując następujące kroki:
W witrynie Azure Portal otwórz zasób standardowej aplikacji logiki i pusty przepływ pracy w projektancie.
Wykonaj ogólne kroki, aby dodać odpowiedni wyzwalacz.
W tym przykładzie użyto wyzwalacza żądania o nazwie Gdy jest dostępne żądanie HTTP. Aby uzyskać więcej informacji na temat tego wyzwalacza, zobacz Odbieranie i odpowiadanie na przychodzące wywołania HTTPS.
Zapisz przepływ pracy. Na pasku narzędzi projektanta wybierz pozycję Zapisz.
Po zapisaniu przepływu pracy adres URL zostanie wyświetlony w parametrze HTTP URL dla wyzwalacza żądania. Ten adres URL należy do punktu końcowego utworzonego dla wyzwalacza żądania . Aby uruchomić wyzwalacz i rozpocząć przepływ pracy, osoby wywołujące spoza przepływu pracy mogą wysyłać żądania HTTPS na adres URL, włączając dane wejściowe, które wyzwalacz przekazuje dalej do przepływu pracy.
Ostrzeżenie
Adres URL punktu końcowego zawiera klucz sygnatury dostępu współdzielonego (SAS), który zapewnia każdemu, kto ma adres URL, możliwość wyzwalania przepływu pracy i przekazywania dowolnych danych. Aby uzyskać informacje na temat ochrony i zabezpieczania przepływu pracy, zobacz Bezpieczny dostęp i dane w przepływach pracy.
Po zakończeniu przepływ pracy wygląda jak w poniższym przykładzie:
Dodaj akcje komponowania
Aby dodać operacje, które przechowują dane wyjściowe wyzwalacza dla kolejnych akcji do użycia jako dane wejściowe, wykonaj następujące kroki:
Pod wyzwalaczem, wykonaj ogólne kroki do dodania operacji danych o nazwie Redagowanie.
W przykładzie dodano trzy akcje Redagowanie i użyto następujących danych testowych jako danych wejściowych:
Zmień nazwę pierwszej akcji Utwórz jako Pracownik i wprowadź następujące dane w polu Dane wejściowe :
{ "firstName": "Alex", "lastName": "Taylor", "department": "IT", "employeeId": "E12345", "orders": [ { "name": "Adatum Streamline 5540 Laptop", "description": "Ordered 15 units for Q1 IT onboarding", "date": "2024/02/20" }, { "name": "Docking Station", "description": "Bulk purchase of 20 Adatum AB99Z docking stations", "date": "2024/01/10" } ] }
Zmień nazwę następnej akcji Utwórz jako Pytanie i wprowadź następujące dane w polu Dane wejściowe :
[ { "role": "user", "content": "When did we last order laptops for new hires in IT?" } ]
Zmień nazwę następnej akcji Utwórz jako Produkty i wprowadź następujące dane w polu Dane wejściowe :
[ { "id": "1", "title": "Adatum Streamline 5540 Laptop", "content": "i7, 16GB RAM, 512GB SSD, standard issue for IT new hire onboarding" }, { "id": "2", "title": "Docking Station", "content": "Adatum AB99Z docking stations for dual monitor setup" } ]
Po zakończeniu przepływ pracy wygląda jak w poniższym przykładzie:
Teraz dodaj akcję Azure OpenAI do przepływu pracy.
Dodawanie akcji Azure OpenAI
W ramach ostatniej akcji Twórz wykonaj ogólne kroki, aby dodać akcję Azure OpenAI o nazwie Pobierz wynik czatu przy użyciu szablonu zapytania.
Po pojawieniu się akcji na powierzchni projektanta zostanie otwarte okienko połączenia, dzięki czemu można podać następujące informacje:
Parametr Wymagane Wartość Opis Nazwa połączenia Tak < nazwa połączenia> Nazwa połączenia z zasobem usługi Azure OpenAI. Typ uwierzytelnienia Tak Zobacz następujące sekcje:
- Warunki wstępne
- Wbudowany łącznik uwierzytelniania usługi Azure OpenAITyp uwierzytelniania do użycia z połączeniem. Adres URL punktu końcowego usługi Azure OpenAI Tak < endpoint-URL-Azure-OpenAI-resource> Adres URL punktu końcowego zasobu usługi Azure OpenAI. Aby uzyskać więcej informacji, zobacz Wymagania wstępne. Klucz uwierzytelniania Wymagane tylko w przypadku uwierzytelniania opartego na adresach URL i kluczach < access-key> Zobacz następujące sekcje:
- Warunki wstępne
- Wbudowany łącznik uwierzytelniania usługi Azure OpenAIPo zakończeniu wybierz pozycję Utwórz nową.
Po otworze okienka akcji na karcie Parametry podaj następujące informacje do użycia dla szablonu monitu:
Parametr Wartość Opis Identyfikator wdrożenia - gpt-4o
- gpt-35Nazwa wdrożonego modelu usługi Azure OpenAI, która powinna być zgodna z nazwą użytą dla zasobu usługi Azure OpenAI. Szablon monitu < tekst szablonu> Szablon monitu. Aby uzyskać więcej informacji, zobacz Uzyskiwanie uzupełnień czatu przy użyciu szablonu monitu. W tym przykładzie zastąp przykładowy tekst szablonu następującym przykładowym tekstem:
system: You are an AI assistant for Contoso's internal procurement team. You help employees get quick answers about previous orders and product catalog details. Be brief, professional, and use markdown formatting when appropriate. Include the employee’s name in your response for a personal touch. # Employee info Name: {{Employee.firstName}} {{Employee.lastName}} Department: {{Employee.department}} Employee ID: {{Employee.employeeId}} # Question The employee asked the following: {% for item in question %} {{item.role}}: {{item.content}} {% endfor %} # Product catalog Use this documentation to guide your response. Include specific item names and any relevant descriptions. {% for item in Products %} Catalog item ID: {{item.id}} Name: {{item.title}} Description: {{item.content}} {% endfor %} # Order history Here is the employee's procurement history to use as context when answering their question. {% for item in Employee.orders %} Order Item: {{item.name}} Details: {{item.description}} — Ordered on {{item.date}} {% endfor %} Based on the product documentation and order history above, provide a concise and helpful answer to their question. Don't fabricate information beyond the provided inputs.
W poniższej tabeli opisano sposób działania przykładowego szablonu:
Element szablonu Zadanie {{ Employee.firstName }} {{ Employee.lastName }}
Wyświetla nazwę pracownika. {{ Employee.department }}
Dodaje kontekst działu. {{ Question[0].content }}
Wprowadza pytanie pracownika z akcji Utwórz o nazwie Pytanie. {% for doc in Products %}
Przegląda dane katalogowe z akcji Compose nazwanej Products. {% for order in Employee.orders %}
Przechodzi przez historię zamówień pracownika z akcji Redaguj o nazwie Employee. Każda wartość elementu jest dynamicznie pobierana z akcji Redagowanie przepływu pracy — wszystkie bez konieczności używania kodu lub usług zewnętrznych. Możesz zastosować to samo podejście, aby odwoływać się do danych wyjściowych z innych operacji, na przykład listy programu SharePoint, wiersza programu SQL Server, treści wiadomości e-mail, a nawet wyników wyszukiwania sztucznej inteligencji. Wystarczy przypisać dane wyjściowe do szablonu monitu i pozwolić procesowi pracy wykonać resztę.
Z listy Parametry zaawansowane wybierz pozycję Zmienna szablonu monitu, która jest teraz wyświetlana na karcie Parametry.
W tabeli klucz-wartość wyświetlanej na karcie Parametry, wprowadź następujące nazwy zmiennych szablonu oraz dane wyjściowe wybrane z poprzednich akcji Utwórz w przepływie pracy, na przykład:
W pierwszym wierszu w pierwszej kolumnie wprowadź Employee jako nazwę zmiennej.
W tym samym wierszu, w następnej kolumnie, kliknij wewnątrz pola edycji, a następnie wybierz ikonę pioruna, aby otworzyć listę zawartości dynamicznej.
Z listy zawartości dynamicznej w obszarze Pracownik wybierz pozycję Dane wyjściowe.
Powtórz te same kroki w następnym wierszu i w następującym wierszu w obszarze Pytania i produkty.
Gdy wszystko będzie gotowe, tabela będzie wyglądać podobnie do poniższego przykładu:
Aby zapoznać się z innymi parametrami, zobacz Uzyskiwanie uzupełnień czatu za pomocą szablonu monitu.
Po zakończeniu przepływ pracy wygląda jak w poniższym przykładzie:
Testowanie przepływu pracy
Aby uruchomić przepływ pracy, wyślij żądanie HTTPS do adresu URL wywołania zwrotnego wyzwalacza Request, uwzględniając metodę, którą oczekuje wyzwalacz Request, używając swojego narzędzia do żądań HTTP zgodnie z instrukcjami.
Aby uzyskać więcej informacji na temat podstawowej definicji JSON wyzwalacza i sposobu wywoływania tego wyzwalacza, zobacz następującą dokumentację:
Po zakończeniu wykonywania przepływu pracy otwiera się strona historii uruchamiania, aby pokazać status każdej akcji.
Aby znaleźć stronę historii uruchamiania dla określonego przebiegu przepływu pracy w późniejszym czasie, wykonaj następujące kroki:
W menu przepływu pracy w obszarze Narzędzia wybierz pozycję Historia uruchamiania.
Na karcie Historia uruchamiania wybierz przebieg przepływu pracy, aby przeprowadzić inspekcję.
Aby znaleźć odpowiedź na czat, na stronie historii uruchamiania wybierz akcję Azure OpenAI.
Zostanie otwarte okienko pokazujące dane wejściowe i wyjściowe wybranej akcji.
W otwartym okienku przewiń do sekcji Dane wyjściowe .
Odpowiedź jest całkowicie oparta na kontekście ustrukturyzowanym przekazywanym do przepływu pracy — nie jest wymagane dodatkowe dostrajanie.
Uprzątnij zasoby
Jeśli nie potrzebujesz zasobów, które utworzyłeś(-aś) w tym przewodniku, nie zapomnij ich usunąć, aby nie ponosić dalszych kosztów. Możesz wykonać te kroki, aby usunąć grupę zasobów zawierającą te zasoby lub usunąć każdy zasób osobno.
W polu wyszukiwania platformy Azure wprowadź grupy zasobów i wybierz pozycję Grupy zasobów.
Znajdź i wybierz grupy zasobów, które zawierają zasoby na potrzeby tego przykładu.
Na stronie Przegląd wybierz pozycję Usuń grupę zasobów.
Po wyświetleniu okienka potwierdzenia wprowadź nazwę grupy zasobów i wybierz pozycję Usuń.