Notatka
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.
Testowanie jest niezbędne do upewnienia się, że niestandardowe agenty w zestawie agenta funkcji Copilot Kit odpowiadają i zachowują się zgodnie z oczekiwaniami. Ten artykuł wyjaśnia, jak tworzyć, zarządzać i walidować różne typy testów, w tym scenariusze wieloturowe. Możesz też wykonywać operacje masowe w Excelu i duplikować zestawy testowe.
Typy testu
Możesz stworzyć kilka rodzajów testów, aby zweryfikować swoich agentów.
| Typ testu | Podpis |
|---|---|
| Dopasowanie odpowiedzi | Jest to najprostszy rodzaj testu. Porównuje odpowiedź agenta z oczekiwaną odpowiedzią przy użyciu wybranego operatora porównania. Domyślnie używane jest dokładne dopasowanie („równa się”). Inne dostępne operatory porównania to "Nie równa się", "Zawiera", "Nie zawiera", "Rozpoczyna się od", "Nie rozpoczyna się od", "Kończy się na" i "Nie kończy się na". |
| Załączniki (na przykład karty adaptacyjne) | Porównuje odpowiedź JSON załączników agenta z oczekiwanym JSON (pełna tablica załączników). Domyślnie używane jest dokładne dopasowanie („równa się”). Dostępne są także inne operatory porównawcze: „Nie równe”, „Zawiera, „Nie zawiera””. Specjalny operator porównawczy zwany „ocena przez AI” wykorzystuje modele językowe do oceny załącznika zgodnie z instrukcjami walidacyjnymi twórcy, podobnie jak odpowiedzi generatywne. |
| Zgodność tematu |
Dostępne tylko wtedy, gdy skonfigurowane jest wzbogacanie Dataverse (wzbogacanie z transkrypcjami konwersacji). Po zakończeniu kroku wzbogacania usługi Dataverse ten test porównuje oczekiwaną nazwę tematu i nazwę wyzwolonego tematu. Testowanie dopasowania tematu obsługuje także wielotematyczne dopasowanie z agentami niestandardowymi, które mają aktywowaną generatywną orkiestrację. W dopasowaniu wielotematycznym tematy są oddzielone przecinkami; na przykład: "temat1, Temat2". |
| Odpowiedzi generatywne |
Dostępne tylko wtedy, gdy skonfigurowano funkcję wzbogacania AI Builder (Analiza wygenerowanych odpowiedzi). Wykorzystuje duży model językowy do oceny, czy odpowiedź wygenerowana przez AI jest zbliżona do odpowiedzi wzorcowej lub spełnia wskazówki walidacyjne. Gdy skonfigurowano wzbogacanie za pomocą aplikacja systemu Azure Insights, można testować negatywne przypadki, takie jak moderacja lub brak wyników wyszukiwania. Dowiedz się więcej w Używanie rubryk w testach. |
| Wieloturowe | Składa się z jednego lub więcej przypadków testowych innych typów, takich jak dopasowanie odpowiedzi, załączniki, dopasowanie tematu i generatywne odpowiedzi. Wszystkie testy podrzędne w wieloturowym teście są uruchamiane w tym samym kontekście konwersacji w określonej kolejności. Użyj testów wieloturowych do testowania scenariuszy end-to-end oraz do testowania niestandardowych agentów z orkiestracją generatywną. Dowiedz się więcej w Testy wieloturowe. |
| Walidacja planu | Pozwala twórcy ocenić, czy dynamiczny plan agenta niestandardowego zawiera oczekiwane narzędzia. Ten typ testu jest przeznaczony dla agentów niestandardowych Copilot Studio, które mają włączoną orkiestrację generatywną. Dowiedz się więcej w Testowanie walidacji planu. |
Tworzenie nowego zestawu testów
Używaj zestawów testów, aby grupować wiele testów. Podczas uruchamiania testów wybierz zestaw testów, aby wykonać wszystkie testy należące do tego zestawu.
- Uzyskiwanie dostępu do zestawu agenta funkcji Copilot.
- Przejdź do Zestawy testów.
- Utwórz nowy rekord konfiguracji testu agenta.
- W polu Nazwa wprowadź nazwę.
- Wybierz pozycję Zapisz.
Utwórz nowy test
Po utworzeniu zestawu testów można dodać do niego testy. Z podsiatki Testy wybierz + Nowy test agenta.
W poniższej tabeli opisano dostępne pola.
| Nazwa kolumny | Wymagania | Podpis |
|---|---|---|
| Nazwa | Tak | Nazwa testu. Ta nazwa może być wewnętrznym identyfikatorem referencyjnym, na przykład TST-001. |
| Zestaw testów agenta | Tak | Nadrzędny zestaw testów do testowania. |
| Typ testu | Tak | Jeden z dostępnych typów testów. |
| Wysyłanie zdarzenia startConversation | Nie | Jeśli ta opcja jest włączona, agent otrzymuje zdarzenie startConversation, dzięki czemu aktywnie rozpoczyna konwersację, a testowa wypowiedź zostaje wysłana później. To ustawienie jest zazwyczaj wymagane, gdy temat Rozpoczęcia konwersacji zawiera logikę, która musi się uruchomić przed odpowiedzią na wypowiedź użytkownika lub testową wypowiedź. |
| Oczekiwana pozycja komunikatu odpowiedzi | Nie | Nie ustawiaj wartości, jeśli nie masz pewności. Ta opcja pozwala przechwycić konkretną odpowiedź agenta, gdy wysyła wiele komunikatów. Na przykład, jeśli agent najpierw mówi „Cześć”, a następnie „W czym mogę pomóc?”, i chcesz przetestować drugą wiadomość, ustaw wartość na 1. Indeksowanie zaczyna się od zera, więc pierwsza wiadomość ma indeks 0, druga odpowiedź indeks 1 i tak dalej. |
| Testowa wypowiedź | Tak | Zawartość wiadomości, która ma zostać wysłana do agenta w ramach testu. |
| Oczekiwana odpowiedź | To zależy | Obowiązkowe dla typu testu Dopasowanie odpowiedzi. Oczekiwana odpowiedź agenta. W przypadku testu generowania odpowiedzi ustaw przykładową odpowiedź lub własne instrukcje weryfikacji dla dużego modelu językowego. |
| JSON zmiennych zewnętrznych | Nie | Rekord JSON dla dowolnej wartości zewnętrznej lub kontekstowej, którą chcesz przekazać agentowi jako część testu. Na przykład: { "Language": "fr" }. |
| Sekundy oczekiwania na odpowiedź | Nie | Liczba sekund oczekiwania przed oceną odpowiedzi bota. W większości przypadków można pozostawić tę wartość pustą, ale jest przydatna w sytuacjach, gdy agent wywołuje API i odpowiedź może trwać dłużej niż zwykle. |
| Oczekiwany wynik odpowiedzi generatywnych | To zależy | Obowiązkowe dla typu testu Odpowiedź generatywna. Powinno być albo Odpowiedź udzielona albo Brak odpowiedzi. Gdy wzbogacanie usługi aplikacja systemu Azure Insights jest włączone, możesz wybrać Moderowane lub Brak wyników wyszukiwania. |
| Oczekiwana nazwa tematu | To zależy | Obowiązkowe dla typu testu Dopasowanie tematu. Nazwa tematu, którego wyzwolenia oczekujesz. Dopasowanie wielu tematów jest obsługiwane dla agentów niestandardowych, które mają włączoną generatywną orkiestrację. W przypadku dopasowania wielotematycznego użyj listy oddzielonej przecinkami; na przykład: "Temat1,Temat2". Nie dodawaj dodatkowych spacji. Dopasowywanie wielotematowe zapewnia, że oczekiwane tematy znajdują się wśród tematów w planie. |
| Oczekiwany rekord JSON załączników | To zależy | Typ testu obowiązkowy dla załączników (kart adaptacyjnych itp.). Pełna tablica JSON załączników oczekiwana w odpowiedzi od agenta. |
| Oczekiwane narzędzia | To zależy | Obowiązkowe dla typu testu sprawdzania poprawności planu. Lista oczekiwanych narzędzi oddzielona przecinkami (narzędzia, akcje i połączeni agenci). Nie dodawaj dodatkowych spacji. Kolejność nie ma znaczenia. Przykład: „Pogoda,Zmiana klimatu” |
| Próg zaliczenia (%) | To zależy | Obowiązkowe dla typu testu sprawdzania poprawności planu. Procent oczekiwanych narzędzi, które muszą być uwzględnione w dynamicznym planie, aby test został zaliczony. Jeśli procent wynosi 100, wszystkie oczekiwane narzędzia muszą być w dynamicznym planie, aby test został zaliczony. Dodatkowe narzędzia w planie dynamicznym nie wpływają na wynik testu. |
Testy wieloturowe
W przypadku typu testu wieloturowego można określić jeden lub więcej testów podrzędnych zwykłych typów. Każdy test podrzędny ma swoją kolejność i krytyczność. Ta kolejność definiuje kolejność wykonywania w tym samym kontekście konwersacji (w przypadku testu obejmującego wiele tur). Krytyczność określa, czy test podrzędny musi przejść, aby można było kontynuować wykonanie testu wieloturowego.
Wszystkie podrzędne testy, które wymagają oceny po zakończeniu, takie jak Dopasowanie tematu lub odpowiedzi generatywne, testy pozostają w trybie oczekiwania, a wykonywanie testu będzie kontynuowane niezależnie od stanu krytyczności. Jeśli którykolwiek z krytycznych testów nie powiódł się, wykonanie testu wieloturowego zostaje wstrzymane, a jego wynik uznany za niezaliczony. Jeśli wszystkie krytyczne testy podrzędne kończą się powodzeniem, wynikiem testu wieloturowego jest Sukces.
Użyj niekrytycznych podrzędnych przypadków testowych, aby przekazywać informacje do agentów niestandardowych z generatywną orkiestracją. Możesz także używać tych przypadków testowych, gdy odpowiedź nie ma znaczenia i chcesz stopniowo przechodzić do krytycznych testów.
Testowanie walidacji planu
Walidacja planów koncentruje się na poprawności użycia narzędzi. Zamiast oceniać, co mówi agent, ten typ testu sprawdza, czy w trakcie realizacji planu wykorzystano oczekiwane narzędzia.
Kiedy definiujesz test walidacji planu, określ:
- Wypowiedź testowa
- Lista oczekiwanych narzędzi oddzielonych przecinkami do uwzględnienia w dynamicznym planie
- Próg zdawalności, który określa, jak duże odchylenia od listy należy tolerować
Test ten wykorzystuje transkrypcje konwersacji i jest oceniany po faktycznym uruchomieniu testu jako działanie wzbogacające.
Należy pamiętać o następujących punktach:
Oczekiwane narzędzia: uwzględnij narzędzia, działania i połączone agenty na liście oddzielonej przecinkami. Nie dodawaj dodatkowych spacji. Porządek nie ma znaczenia.
Próg zaliczenia %: próg zaliczenia określa wymagany procent oczekiwanych narzędzi, które muszą znaleźć się w planie dynamicznym, aby test zakończył się sukcesem.
Walidacja planu to test deterministyczny: oblicza odchylenie rzeczywistych narzędzi od oczekiwanych narzędzi i porównuje je z progiem zaliczenia. Jeśli odchylenie mieści się w granicach progu, test jest zaliczany; w przeciwnym razie niezaliczany.
Zobacz Orkiestracja zachowania agenta za pomocą generatywnej AI.
Testowe agenty wymagające autoryzacji złącza
Gdy agent korzysta z zewnętrznego źródła danych, takiego jak SharePoint lub Dataverse, pierwsza rozmowa zazwyczaj prezentuje kartę autoryzacyjną "Połącz się, aby kontynuować". Użytkownik musi wybrać Zezwól, zanim agent będzie mógł wywołać łącznik. Aby wykonać ten przepływ w testie automatycznym, zamodeluj prompt i odpowiedź użytkownika jako dwa testy podrzędne w teście wieloobrotowym.
Notatka
To jednorazowa konfiguracja na zestaw testowy. Po autoryzacji połączenia dla użytkownika testowego nie musisz powtarzać kolejnych etapów autoryzacji.
Test wieloobrotowy zawiera dwa uporządkowane testy potomne:
| Zamówienie | Typ testu | Typ operacji | Przeznaczenie |
|---|---|---|---|
| 1 przypada na wpłatę z zysku na rzecz budżetu państwa | Załączniki (karty adaptacyjne itp) | Operatory porównania | Wysyła wyrażenie, które wyzwala złącze i potwierdza na karcie autoryzacyjnej JSON. |
| 2 | Załączniki (karty adaptacyjne itp) | Wywołaj akcje | Wysyła opcję Zezwól na karcie autoryzacyjnej, aby agent mógł zakończyć połączenie. |
Tworzenie przebiegu testowego:
W swoim zestawie testowym wybierz + Test nowego agenta, wpisz nazwę, ustaw Typ testu jako Wiele tur i wybierz Zapisz.
W siatkach potomnej testu wieloobrotowego wybierz + Test Nowego Agenta i skonfiguruj pierwszy test potomny:
Pole Value Typ testu Załączniki (karty adaptacyjne itp) Zamówienie 1 przypada na wpłatę z zysku na rzecz budżetu państwa Testowa wypowiedź Wyrażenie, które wyzwala łącznik, na przykład List Fourth Coffee Brands.Typ operacji Operatory porównania Operatory porównania Równa się Oczekiwany rekord JSON załączników [](zastępcze — wymieniasz to po pierwszym przejściu)Wybierz pozycję Zapisz test.
Zapisz zestaw testów i uruchom go. Pierwszy test potomny nie przechodzi zgodnie z oczekiwaniami, ponieważ zastępczy JSON nie pasuje do karty autoryzacji.
Otwórz wyniki testu, wybierz wieloobrotowy test potomny, znajdź sekcję Załączników i skopiuj JSON Actual Attachment do schowka.
Edytuj pierwszy test potomny, wklej skopiowany JSON do JSON Oczekiwane załączniki i wybierz Zapisz test.
W siatkach potomnej testu wieloobrotowego wybierz + Test Nowego Agenta i skonfiguruj pierwszy test potomny:
Pole Value Typ testu Załączniki (karty adaptacyjne itp) Zamówienie 2 Typ operacji Wywołaj akcje Ładunek karty adaptacyjnej {"action": "Allow", "id": "submit", "shouldAwaitUserInput": true}Operatory porównania Zawiera dane (lub równości, w zależności od odpowiedzi, którą chcesz zadeklarować) Oczekiwana odpowiedź Zostaw puste miejsce lub ustaw na podstawie danych, których oczekujesz po dopuszczeniu połączenia. Wartości payload pochodzą z karty adaptacyjnej JSON, który zebrałeś w kroku 4. Dostosuj
actionpola iidjeśli karta łącznikowa używa innych identyfikatorów.Wybierz pozycję Zapisz test.
Zapisz zestaw testów i uruchom go ponownie. Oba testy dziecięce powinny teraz zostać zaliczone.
Po pomyślnym przeprowadzeniu tego wieloobrotowego testu połączenie jest autoryzowane dla użytkownika testowego, a kolejne testy na tym samym złączu mogą być tworzone jako zwykłe testy jednoobrotowe.
Używanie programu Excel do masowego tworzenia lub aktualizowania testów
Po utworzeniu zestawu testów możesz użyć programu Excel do masowego tworzenia lub aktualizowania testów.
- Z poziomu rekordu zestawu testów zmień widok podsiatki z Testy na Widok eksportu/importu.
- Wybierz Eksportuj testy agenta w Excel Online.
- Dodawaj i modyfikuj testy w razie potrzeby.
- Wybierz pozycję Zapisz.
W przypadku importowania testów podrzędnych wieloturowych, należy najpierw utworzyć lub importować rzeczywisty nadrzędny test wieloturowy. Następnie importuj przypadki testowe podrzędne.
Dowiedz się więcej o importowaniu i eksportowaniu za pomocą programu Excel w aplikacjach opartych na modelu Power Apps.
Duplikuj testy i zestawy testów
Możesz duplikować zarówno zestawy testów, jak i poszczególne testy.
Aby zduplikować pojedynczy przypadek testowy, otwórz rekord testu agenta i wybierz Duplikuj przypadek testowy. Ta akcja jest przydatna podczas tworzenia wariantów przypadku testowego, np. zmieniając lokalizację, czas lub kwotę.
Aby zduplikować cały zestaw testów, otwórz rekord zestawu testów i wybierz Duplikuj zestaw testów na pasku poleceń. Ta akcja powoduje utworzenie kopii zestawu testów i wszystkich jego testów podrzędnych.