Wdrażanie agentów w Microsoft Teams

Microsoft Teams niesie ze sobą wyjątkowe wyzwania wdrożeniowe dla agentów funkcji Copilot Studio ze względu na trwały charakter środowiska konwersacyjnego. W przeciwieństwie do wdrożeń internetowych, gdzie sesje są automatycznie resetowane, Teams utrzymuje wątki konwersacyjne bez ograniczeń czasowych, co może skutkować nieaktualnym kontekstem, wygaśnięciem tokenów oraz nieaktualną pamięcią podręczną treści.

Ten artykuł zawiera wskazówki, jak skutecznie wdrażać agentów funkcji Copilot Studio w Teams. Dowiesz się, jak zarządzać trwałymi sesjami, wdrażać strategie debugowania oraz zapewniać niezawodność działania podczas długotrwałych konwersacji.

Omówione kluczowe kwestie:

  • Zarządzanie cyklem życia sesji i obsługa okresów bezczynności
  • Techniki debugowania dla trwałych rozmów
  • Kontrola wersji i strategie wdrażania aktualizacji
  • Charakterystyczne wzorce implementacyjne dla Microsoft Teams

Stosuj te praktyki, aby tworzyć niezawodne agenty, które działają spójnie w środowisku Teams, zapewniając użytkownikom przejrzyste informacje o zmianach stanu i zachowaniu systemu.

Dlaczego wdrażanie agentów w Teams jest inne

Rozmowy w Teams trwają przez wiele dni bez automatycznego resetu. Inaczej niż na sesji czatu internetowego zdarzenie ConversationStart jest wywoływane tylko przy pierwszym dodaniu agenta. Ponowna instalacja aplikacji nie powoduje ponownego wywołania tego zdarzenia.

Trwałość rozmów w Teams wiąże się z kilkoma zagrożeniami:

  • Niezmienny kontekst: historia konwersacji pozostaje, chyba że zostanie wyczyszczona.
  • Wygaśnięcie tokenów: Łączniki mogą wygasać podczas długich sesji.
  • Limity kontekstu: Zgromadzone wiadomości mogą przekroczyć limity modelu.
  • Buforowanie aktualizacji: Użytkownicy mogą nadal korzystać z nieaktualnej logiki.

Proaktywne zarządzanie stanem oraz jasne wytyczne dla użytkowników są niezbędne.

Zarządzaj cyklem życia sesji

Zarządzanie cyklem życia sesji za pomocą obsługi braku aktywności.

Resety po nieaktywności

Utwórz nowy temat i wybierz wyzwalacz Użytkownik jest nieaktywny przez pewien czas, aby uruchomić przepływ resetowania po okresie braku aktywności użytkownika. Dowiedz się więcej w sekcji Wyzwalacz nieaktywności o wzorcach specyficznych dla Teams, w tym zmiennych strażniczych oraz modelu trwałej rozmowy.

  1. Dodaj wyzwalacz nieaktywności i ustaw czas bezczynności (np. 15 minut).
  2. Dodaj jeden lub więcej węzłów Wyczyść wartości zmienne, aby usunąć zmienne sesji i historię rozmowy, zapobiegając przepełnieniu kontekstu.
  3. Zakończ rozmowę i oznacz sesję jako rozwiązana.

Zrzut ekranu przedstawiający edytor tematów programu Copilot Studio, wyświetlający przepływ pracy resetowania nieaktywności z wyzwalaczem, komunikatem, czyszczeniem wartości zmiennych i węzłami kończenia rozmowy.

Takie podejście zapobiega przepełnieniu kontekstu i zapewnia przewidywalne zachowanie po powrocie użytkownika.

Zapewnij wskazówki po resecie

Po zresetowaniu stanu wyślij wiadomość wyjaśniającą, co się stało. Na przykład: „Wygląda na to, że nasza rozmowa stała się nieaktywna, więc usuwam poprzedni kontekst dla bezpieczeństwa. Powiedz „cześć”, aby ponownie uruchomić program”.

Ponieważ element ConversationStart zostanie wyzwolony pierwszy raz, gdy po raz pierwszy agent zostanie dodany, temat Powitanie staje się efektywnym punktem inicjowania. Zachęcenie użytkownika do wpisania „cześć” zapewnia, że logika inicjacji działa poprawnie.

Udostępnij polecenie do samodzielnego resetu

Dodaj wiadomość informującą użytkowników, że mogą wpisać określone polecenie: „Jeśli coś wydaje się nie tak, spróbuj wpisać /debug clearstate, aby odświeżyć mój stan”.

To polecenie wymusza całkowity reset konwersacji:

  • Czyści stan konwersacji
  • Usuwa informacje o łączniku z pamięci podręcznej
  • Ponownie uwierzytelnia łączników
  • Pobiera najnowszą wersję agenta

Użyj tego polecenia, gdy:

  • Bot wydaje się „zablokowany” z nieaktualnymi informacjami
  • Uwierzytelnienie łącznika wygasło
  • Po aktualizacji logiki bota
  • Gdy zachowanie wydaje się niespójne

Zwiększ przejrzystość i popraw debugowanie

Aby zwiększyć przejrzystość i poprawić debugowanie dla agentów wdrożonych w Microsoft Teams, użyj wyzwalacza OnKnowledgeRequested.

Użyj OnKnowledgeRequested, aby ujawnić przeredagowane zapytania

Copilot Studio przepisuje pytania użytkowników przed wyszukiwaniem. Jeśli włączysz wyzwalacz OnKnowledgeRequested, możesz:

  • Diagnozować niezgodności intencji
  • Zrozumieć, jak zapytania są przepisywane
  • Zwiększyć zaufanie użytkowników podczas debugowania

Notatka

Możesz skonfigurować wyzwalacz OnKnowledgeRequested tylko w widoku kodu, przy użyciu YAML. Nie ma wsparcia dla wizualnego projektanta.

Dodaj wiadomość, która wyświetla wygenerowane zapytania kluczowe i semantyczne. Na przykład:

kind: AdaptiveDialog
beginDialog:
  kind: OnKnowledgeRequested
  id: main
  actions:
    - kind: SendActivity
      id: sendActivity_debug
      activity: |-    
        **Debug**: sending this lexical query "{System.KnowledgeSearchQuery}"
        **Debug**: sending this semantic query "{System.SearchQuery}"
inputType: {}
outputType: {}

To zapytanie zapewnia dostęp tylko do odczytu do uściślonego zapytania wyszukiwania (ponownego zapisywania zapytań), które koordynator wygenerował na podstawie pytania użytkownika.

Korzyści:

  • Pomaga w debugowaniu rozbieżności w intencjach.
  • Pokazuje użytkownikom, co agent sprawdza.
  • Buduje zaufanie do działań agenta.
  • Pomaga twórcom podczas testowania.

Kontrola wersji i niezawodność procesu aktualizacji

Zarządzanie wersjami agentów i zapewnienie, że użytkownicy korzystają z najnowszej logiki, jest szczególnie ważne w środowisku o stałym kontekście, takim jak Teams.

Zawiera wersję bota w treści powitania lub w dedykowanym temacie

Dodaj identyfikator wersji, używając tematu powitania lub dedykowanego tematu wersji:

Contoso Helpdesk Bot – Version 1.3 (Nov 2025)

Aktualizuj tę wartość przy każdej publikacji, aby pomóc użytkownikom i zespołom pomocy technicznej zweryfikować, która wersja jest aktywna. Aktualizacja metadanych wersji odświeża również zawartość buforowaną. Zmiana nazwy lub opisu agenta powoduje, że Teams ładuje go jako nową aktualizację.

Podczas publikowania włącz opcję „Wymuś najnowszą wersję”

Ustawienie Wymuś najnowszą wersję zapewnia, że Teams ładuje logikę najnowszej wersji agenta przy następnym wysłaniu wiadomości przez użytkownika. To ustawienie pomaga również unieważniać poprzednie wersje w pamięci podręcznej. Jednak wymuszenie aktualizacji przerywa trwającą rozmowę.

Zrzut ekranu przedstawiający okno dialogowe publikowania agenta z ostrzeżeniami dotyczącymi poświadczeń, modelu w wersji zapoznawczej i wymuś włączenie najnowszej wersji.

Teams — uwagi dotyczące implementacji

Teams posiada specyficzne zachowania, które wymagają szczególnej uwagi.

Traktuj temat Powitania jako logikę inicjacji

Ponieważ ConversationStart tylko raz jest uruchamiane, gdy po raz pierwszy agent jest dodawany:

  • Umieść logikę inicjacji w powitaniu.
  • Dodaj jasne instrukcje w opisie aplikacji Teams.
  • Przypomnij użytkownikom: „Po upłynięciu limitu czasu wpisz «cześć», aby rozpocząć nową rozmowę”.

Optymalizuj wyzwalacze i mechanizmy awaryjne

Użytkownicy Teams wchodzą w interakcje naturalnie i nieprzewidywalnie. Upewnij się, że bot:

  • Obsługuje różne warianty powitania.
  • Obejmuje obsługę pożegnań.
  • Zawiera wiele przykładowych wypowiedzi.
  • Oferuje przyjazne i pomocne awaryjne odpowiedzi.
  • Wykorzystuje słowa kluczowe, aby prowadzić użytkowników do odpowiednich tematów.
  • OnKnowledgeRequested służy do diagnozowania pominiętych intencji.
  • Przekierowuje do odpowiednich tematów na podstawie słów kluczowych.
  • Prosi użytkowników o ponowne sformułowanie swojej wiadomości, jeśli bot naprawdę utknął.

Zweryfikuj zachowanie uwierzytelniania łącznika

Podczas korzystania z łączników (ServiceNow, Outlook i innych), przetestuj:

  • Jak zachowuje się karta logowania podczas pierwszego logowania.
  • Co się dzieje, gdy token wygasa, i jak następuje jego automatyczne odnowienie.
  • Jak działają wymuszone unieważnienie i przepływy ponownej zgody.

Wskazówka

Łączniki mogą nie odświeżać tokenów podczas przedłużonych sesji. W razie potrzeby użyj operacji resetowania przy braku aktywności lub /debug clearstate do ponownego wyzwalania uwierzytelniania OAuth. Przekaż to polecenie zespołom pomocy technicznej i użytkownikom, aby szybko rozwiązać problemy.

Test w rzeczywistych warunkach

Ponieważ Teams zachowuje stan między sesjami, testy powinny odzwierciedlać rzeczywiste środowisko użytkownika:

  1. Wprowadź zmiany, korzystając z opcji Pokaż tylko mnie.
  2. Testuj długotrwałe scenariusze (powrót po kilku godzinach).
  3. Publikuj aktualizacje i potwierdź, że agent przełącza się między wersjami.
  4. Zweryfikuj renderowanie kart adaptacyjnych na platformach stacjonarnych i mobilnych.
  5. Testuj działania w różnych kontekstach konwersacyjnych.

Lista kontrolna wdrożenia

Gotowe? Zadanie
Wyzwalacz nieaktywności skonfigurowany do usunięcia historii konwersacji
Komunikacja z użytkownikiem wyjaśnia resetowanie i przewodnik dotyczy ponownego uruchomienia
/debug clearstate udokumentowane dla użytkowników
OnKnowledgeRequested włączone dla przejrzystości podczas tworzenia
Identyfikator wersji umieszczony w odpowiedziach
Wymuszanie najnowszej wersji włączone w razie potrzeby
Temat powitania obejmuje logikę inicjacji
Mechanizmy awaryjne są przyjazne dla użytkownika
Uwierzytelnianie łącznika testowane pod kątem wygaśnięcia i odnowienia
Testy w Teams w rzeczywistych warunkach zakończone

Podjąć klucza

  • Zarządzaj cyklem życia sesji poprzez konfigurację wyzwalaczy nieaktywności i korzystanie z opcji czyszczenia stanu, gdy jest to stosowne.
  • Zwiększ przejrzystość, przeglądając działanie systemu za pomocą ponownego zapisywania zapytań i komunikatów związanych z stanem.
  • Uwzględnij zachowania specyficzne dla Teams, takie jak obsługa ręcznych powitań czy zarządzanie pamięcią trwałą.
  • Utrzymuj niezawodność agentów, wdrażając praktyki przechowywania wersji i wymuszając aktualizacje w razie potrzeby.
  • Wspieraj autonomię użytkownika, udostępniając polecenia samoobsługowe do rozwiązywania problemów oraz wspomagane opcje odzyskiwania.