Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Agenci konwersacyjny zbudowani w Copilot Studio działają na platformie, która automatycznie skaluje się, aby wspierać wzrost zapotrzebowania i obciążenia. Jednak agenci konwersacyjny często używają niestandardowej logiki lub wywołań do API backendowych, co powoduje opóźnienia, ponieważ niestandardowa logika jest nieefektywna lub bazowe API i systemy backendowe nie skalują się dobrze.
Testy wydajności oceniają wydajność i stabilność agenta przy różnych wzorcach obciążenia. Identyfikuje potencjalne problemy wraz ze wzrostem bazy użytkowników, zapewniając, że agent pozostaje funkcjonalny i responsywny. Jeśli nie testujesz swojego agenta konwersacyjnego pod obciążeniem, może działać dobrze podczas rozwoju i testów, ale nie działać przy rzeczywistym ruchu użytkownika.
Zanim przejdziemy do technicznych aspektów testów wydajności, zdefiniuj kryteria akceptacji, które oddają pożądane doświadczenie użytkownika i zidentyfikuj przypadki konwersacyjne generujące wyraźne wzorce obciążenia. Ten artykuł krótko omawia etap planowania testów wydajności i zawiera wskazówki dotyczące technicznych szczegółów generowania obciążenia dla agentów konwersacyjnych.
Zaplanuj swój test wydajności
Plan testu wydajności powinien mieć określony cel i konkretne kryteria akceptacji. Na przykład niektóre testy mierzą wydajność systemu przy standardowym obciążeniu, podczas gdy inne generują bardziej ekstremalne obciążenie, które celowo powoduje brak reakcji systemu. Podczas pomiaru wydajności agentów konwersacyjnych zbudowanych w Copilot Studio projektuj testy tak, aby mierzyć albo wyjściową wydajność agenta, albo przewidywane duże obciążenie, ale nie konfiguruj testów tak, by generowały nadmierne obciążenie.
Ostrzeżenie
Generowane obciążenie przekraczające oczekiwane zachowanie użytkownika może prowadzić do przekroczenia zużycia wiadomości i niepożądanego ograniczania środowisk. Aby uniknąć ograniczania i przekroczenia zużycia, upewnij się, że:
- Twoje testy naśladują realistyczne zachowanie użytkowników.
- Twój tenant i środowiska mają przypisane wystarczające licencje i polityki rozliczeniowe.
Zrozum zachowania użytkowników
Rozpocznij swój plan testu od analizy, jak użytkownicy powinni się zachowywać w różnych przypadkach konwersacji. Z perspektywy testów obciążeniowych zachowanie użytkowników może się różnić w zależności od przypadków użycia pod względem tego, co mówią lub pytają (na przykład "Chcę zarezerwować lot" lub "Jaka jest twoja polityka zwrotów?"), liczby użytkowników wpływających na dany przypadek użycia oraz wzorców zaangażowania użytkowników (np. łączą się wszyscy naraz w południe w porównaniu do stopniowego narastania w ciągu dnia).
Poniższa tabela opisuje przewidywane zachowania użytkowników dla agenta konwersacyjnego bankowego.
| Przypadek użycia | Typowe wypowiedzi użytkownika | Wzorzec zaangażowania |
|---|---|---|
| Wniosek o pożyczkę | Potrzebuję nowej pożyczki , chciałbym złożyć wniosek o nową pożyczkę ... |
Średnio 1 000 jednoczesnych użytkowników przez cały dzień |
| Zapytanie o równowagę | Jakie mam saldo na koncie? Pokaż saldo na koncie... |
10 000 jednoczesnych użytkowników, wszyscy łączą się około południa |
| Dodatkowe zastosowania | … | … |
Tworzenie planu testowego
Po zdefiniowaniu zachowań użytkownika w kategoriach przypadków użycia i wzorców zaangażowania, zastanów się nad szczegółami swojego planu testu wydajności. Co najmniej plan testu wydajności dla agenta konwersacyjnego powinien określać cel, scenariusze testowe, kluczowe wskaźniki wydajności, szczegółowe dane testowe oraz kryteria sukcesu.
Jeśli Twój zespół już zdefiniował scenariusze konwersacyjne do ocen, czy to poprzez tworzenie przypadków testowych w produkcie, czy za pomocą zestawu Copilot Studio, możesz ponownie wykorzystać te scenariusze do rozpoczęcia tworzenia planu testowego.
Poniższy przykładowy plan testu dotyczy agenta konwersacyjnego bankowego. Plan wykorzystuje wcześniej zidentyfikowane przypadki konwersacyjne do określenia scenariusza testowania bazowego oraz scenariusza testów obciążeniowych. Testowanie poziomu bazowego ocenia normalną wydajność, identyfikując problemy podczas regularnego użytkowania, natomiast większe obciążenie może ujawnić, jak system radzi sobie z szczytową aktywnością użytkowników.
| Section | Szczegóły |
|---|---|
| Objective | Oceń wydajność agenta konwersacyjnego bankowego w warunkach bazowych i obciążenia. |
| Scope |
W zakresie: testy bazowe i obciążeniowe. Poza zakresem: testy obciążeniowe. |
| Kluczowe wskaźniki wydajności (KPI) |
|
| Scenariusze testowe |
Testy bazowe
|
| Testowanie danych |
|
| Tools |
|
| Kryteria powodzenia |
|
Współpracuj z interesariuszami technicznymi i biznesowymi, aby opracować plan testów dopasowany do potrzeb Twojej organizacji. Zgadzam się co do kluczowych parametrów przedstawionych w przykładzie. Dowiedz się, jak korzystać z narzędzi takich jak Apache JMeter do tworzenia skryptów testowych w przykładzie referencyjnym i wytycznych testów wydajności.
Symuluj rozmowy trwające wiele tur
Dane testowe określone w planie sugerują, że planowany test wydajności prowadzi wieloturnowe rozmowy. Wieloturowe rozmowy to seria wiadomości wymienianych tam i z powrotem przesyłanych między symulowanymi użytkownikami a agentem konwersacyjnym. Testy wydajności powinny prowadzić wieloturowe rozmowy, tak aby generowane obciążenie przypominało rzeczywiste zachowanie użytkownika. Ponadto niektóre długotrwałe działania lub wywołania API wywołują się tylko wtedy, gdy użytkownicy podejmują określony zestaw wyborów lub wysyłają określony wzór wiadomości w ramach rozmowy.
W poniższym przykładzie backend API banku wywołuje się dopiero po wybraniu konta oszczędnościowego przez użytkownika. Czas odpowiedzi na pierwszą wiadomość jest krótszy niż sekunda, ponieważ zaangażowany jest tylko silnik rozpoznawania intencji agenta. Ostatnia wiadomość czeka na odpowiedź z API backend, co wprowadza dodatkowe opóźnienia. Bez symulacji wieloturowej rozmowy problemy z wydajnością nie pojawiłyby się.
Symulacja wieloturowych rozmów wymaga planowania zarówno podczas przygotowywania danych testowych, jak i tworzenia skryptów testowych. Uwzględnij serię wypowiedzi użytkownika w danych testowych, które wywołują pełne przepływy konwersacyjne, jak pokazano w przykładzie. Upewnij się, że twoje skrypty testowe wysyłają wiele wypowiedzi w jednej rozmowie.