11 Laboratorium agentowe

Efekty uczenia się: U1, U3, U7, U8, K2 · Treści programowe: 5, 7 · Czas: Nauka 35 min, Wyzwanie 55 min

11.1 Nauka

Cel laboratorium

Na tym spotkaniu agent AI zbuduje model BPMN dużego procesu: „Wniosek o szkolenie” w dziale kadr. Proces ma ponad trzydzieści kroków, pięć ról, zewnętrznego dostawcę, blok kroków tworzący zamkniętą całość i część, która może zadziałać w dowolnym momencie. Ręczne narysowanie takiego modelu zajęłoby całe zajęcia. Agent zrobi to w kilka minut.

Twoje zadanie zaczyna się dopiero wtedy, gdy agent skończy. Jesteś recenzentem. Sprawdzasz, czy agent dobrze odczytał opis, i poprawiasz to, co odczytał źle. W pracy zawodowej to typowa sytuacja: model przygotował ktoś inny (współpracownik, firma doradcza, agent AI), a Ty masz ocenić, czy można mu zaufać.

Opisy kroków w pliku proces.md celowo nie nazywają elementów BPMN. Nie znajdziesz w nich słów „zadanie usługowe” ani „zdarzenie graniczne”. Znajdziesz natomiast sformułowania, z których typ elementu da się wywnioskować. Na tym polega trudność dla agenta i sprawdzian dla Ciebie.

Słowa, które decydują o typie elementu

Na wcześniejszych spotkaniach poznałeś wskazówki, po których rozpoznaje się elementy w opisie procesu. Oto najważniejsze z nich, z przykładami spoza laboratorium:

Sformułowanie w opisie Co sugeruje Przykład z instytucji informacyjnej
„system samodzielnie”, „bez udziału człowieka”, „automatycznie” zadanie usługowe system biblioteczny wysyła przypomnienie o zwrocie
„loguje się”, „w formularzu”, „w swojej skrzynce zadań w systemie” zadanie użytkownika archiwista zatwierdza kwerendę w systemie
„twarzą w twarz”, „telefonuje”, „nie jest nigdzie odnotowywany” zadanie ręczne bibliotekarz pokazuje czytelnikowi magazyn
„według tabeli reguł”, „wynik wynika wyłącznie z reguł, nikt go nie ocenia” zadanie reguły biznesowej system ustala limit wypożyczeń z tabeli
„według stałego wzoru”, „wylicza” zadanie skryptowe naliczenie opłaty za przetrzymanie książki
„ma na to N dni; po ich upływie zadanie nadal zostaje u niego, ale…” zdarzenie graniczne nieprzerywające (czas) przypomnienie dla recenzenta, który nadal ma recenzję
„jeśli nie zdąży, zadanie zostaje mu odebrane” zdarzenie graniczne przerywające (czas) rezerwacja wygasa po 3 dniach
„dalszy przebieg zależy od tego, co nastąpi pierwsze” bramka oparta na zdarzeniach odpowiedź wydawcy albo upływ terminu
„może zajść jedna sytuacja, obie albo żadna” bramka inkluzywna (OR) powiadomienie e-mailem, SMS-em albo żadne
„obie czynności zawsze, niezależnie od siebie” bramka równoległa (AND) skanowanie i opis metadanych
„jednocześnie wszystkim otwartym sprawom” sygnał ogłoszenie zamknięcia czytelni
„firma zewnętrzna, której sposób działania nie jest znany” osobny, zamknięty basen i przepływy komunikatów dostawca systemu bibliotecznego
„zgłasza na zewnątrz, że sprawa utknęła i wymaga interwencji wyżej” eskalacja przekroczony termin rozpatrzenia skargi
„ta część nie ma poprzednika”, „w dowolnym momencie trwania procesu” podproces zdarzeniowy wycofanie zgody na publikację w repozytorium

Pełna ściągawka jest w dodatku A i w pliku references/elementy.md w skillu. Agent ma tę samą ściągawkę. Mimo to myli się, bo w opisach zdarzają się pułapki, np. słowo „ręcznie” w zdaniu „wprowadza dane ręcznie do systemu”.

Jak czytać mapowanie agenta

Zanim agent napisze XML, tworzy plik mapowanie.md. To tabela, w której dla każdego kroku podaje element BPMN, linię albo basen, słowa z opisu, które zdecydowały o wyborze, i swoje wątpliwości:

Krok Element BPMN Linia / basen Wskazówka w opisie Wątpliwości

Mapowanie jest dla recenzenta cenniejsze niż sam diagram. Pokazuje nie tylko co agent zdecydował, ale też dlaczego. Czytając je, szukaj czterech sygnałów ostrzegawczych:

  1. Wskazówka nie pochodzi z opisu. Agent cytuje słowa, których w proces.md nie ma, albo uzasadnia wybór samą nazwą kroku („Rozmowa, więc zadanie ręczne”). Uzasadnienie musi opierać się na opisie kroku, a nie na nazwie.
  2. Brakuje wiersza. Krok, który wymaga dwóch elementów (np. zadanie i zdarzenie graniczne), ma tylko jeden wiersz.
  3. Puste „Wątpliwości” przy trudnym kroku. Jeśli agent nie zgłasza wątpliwości w miejscu, w którym Ty je masz, sprawdź ten krok szczególnie uważnie.
  4. Element dodany bez uzasadnienia w opisie. Bramka złączenia albo zdarzenie startowe w podprocesie mogą być potrzebne dla poprawności notacji, ale agent powinien to zaznaczyć.

Recenzja w czterech przejściach

Duży model łatwo przeoczyć. Dlatego recenzję robimy w czterech przejściach, za każdym razem patrząc na co innego:

Przejście Pytanie Narzędzie
1. kompletność czy każdy krok z opisu ma swój element i czy nie ma elementów nadmiarowych? tok check … --steps --steps-from proces.md --lang pl, kody K02 i K03
2. struktura czy baseny, linie i przepływy są na swoim miejscu? czy wiadomości płyną tylko między basenami? diagram w Camunda Modeler, tabela basenów i linii z opisu
3. typy elementów czy typ każdego zadania, zdarzenia i bramki pasuje do słów z opisu? mapowanie.md, tabela wskazówek powyżej
4. przebieg czy każda ścieżka prowadzi od startu do właściwego końca? „przejście żetonem”: palcem po diagramie, wariant po wariancie

Czwarte przejście warto zrobić na głos, w parze. Jedna osoba czyta opis kroku, druga pokazuje na diagramie, gdzie „jest proces”. Gdy opis mówi np. „po upływie 7 dni recenzja nadal zostaje u recenzenta”, sprawdzacie, czy na diagramie zadanie rzeczywiście trwa dalej, czyli czy zdarzenie graniczne ma przerywaną linię.

W pliku recenzja.md dla każdego kroku wpisujesz jedną z trzech ocen:

  • OK: element pasuje do opisu; w uzasadnieniu cytujesz słowa z opisu;
  • BŁĄD: element nie pasuje; podajesz, jaki powinien być i dlaczego;
  • DYSKUSYJNE: opis dopuszcza dwa odczytania; podajesz oba i wybierasz jedno z uzasadnieniem.

Ocena „DYSKUSYJNE” nie jest słabością recenzji. Pokazuje, że widzisz niejednoznaczność opisu. W prawdziwej organizacji takie miejsca wyjaśnia się z właścicielem procesu.

Polecenie poprawki: krótko, konkretnie, z uzasadnieniem

Gdy znajdziesz błąd, możesz poprawić model sam w Camunda Modeler albo poprosić agenta. Dobre polecenie poprawki ma pięć części:

  1. który krok (numer z opisu),
  2. co jest teraz w modelu,
  3. co powinno być,
  4. dlaczego: słowa z opisu,
  5. co zrobić potem: uruchomić walidację.

Porównaj dwa polecenia. Dotyczą innego procesu niż laboratorium: udostępnienia zbiorów specjalnych w bibliotece.

Słabe polecenie Dobre polecenie
„Popraw błędy w modelu.” „Krok 4 jest teraz zadaniem użytkownika. Powinien być zadaniem ręcznym, bo opis mówi: »bibliotekarz pokazuje czytelnikowi rękopis w czytelni«, »nie odnotowuje tego w systemie«. Zmień typ zadania, dopisz zmianę do mapowanie.md i uruchom ponownie tok check, tok bpmn i tok svg.”
„Zdarzenie przy kroku 7 jest złe.” „Zdarzenie graniczne przy kroku 7 jest nieprzerywające. Powinno być przerywające, bo opis mówi: »po 3 dniach rezerwacja wygasa i egzemplarz wraca do magazynu«. Popraw cancelActivity i uruchom tok check, tok bpmn i tok svg.”

Słabe polecenie zostawia agentowi zgadywanie: agent może „poprawić” coś, co było dobre. Dobre polecenie jest jednocześnie wpisem do recenzji. Możesz je skopiować do kolumny „Uzasadnienie / poprawka”.

Jedno polecenie dotyczy jednego, najwyżej dwóch kroków. Po każdej poprawce sprawdź, czy agent zmienił tylko to, o co prosiłeś. Agent czasem „przy okazji” przebudowuje inne fragmenty modelu.

Dokumentowanie pracy z agentem

Zgodnie z Zarządzeniem nr 115 Rektora UJ (omówionym na spotkaniu 10) wyraźnie oznaczasz, co wygenerowała sztuczna inteligencja. W laboratorium robisz to tak:

  • prompty.md: wszystkie polecenia wpisane w sesji, w kolejności, oraz nazwa modelu z polecenia /model. Agent z pakietu bpmn-agent dopisuje Twoje polecenia do tego pliku automatycznie, ale to Ty sprawdzasz, czy plik jest kompletny;
  • mapowanie.md: decyzje agenta. Jeśli coś w nim zmieniasz ręcznie, zaznacz to dopiskiem „(poprawka studenta)”;
  • recenzja.md: Twoja praca. Agent jej nie wypełnia. Na końcu recenzji jest krótkie oświadczenie, które części pracy wygenerował agent.

Recenzja, w której uzasadnienia napisał agent, nie spełnia wymagań zadania. Agent z pakietu odmówi zresztą wypełnienia recenzji za Ciebie. Możesz go natomiast pytać o notację, np. „Czym różni się sygnał od wiadomości?”, i sprawdzać jego odpowiedzi w dodatku A.

11.2 Wyzwanie

Polecenie: zbuduj z agentem model procesu „Wniosek o szkolenie”, zrecenzuj go krok po kroku i popraw błędy.

Dane wejściowe: pakiet bpmn-agent skonfigurowany na spotkaniu 10: opis procesu proces.md, gotowe polecenie PROMPT.md, formularz recenzja.md.

Pobierz pakiet bpmn-agent (.zip)

Wymagania:

  • model wygenerowany przez agenta na podstawie polecenia z PROMPT.md (jeden przebieg);
  • recenzja wszystkich kroków w recenzja.md, z ocenami OK / BŁĄD / DYSKUSYJNE i uzasadnieniami opartymi na słowach z opisu;
  • poprawki błędów (przez agenta albo ręcznie w Camunda Modeler), każda odnotowana w recenzji;
  • model końcowy z 0 błędów walidatora;
  • odpowiedzi na pytania podsumowujące i oświadczenie na końcu recenzja.md;
  • komplet poleceń w prompty.md.

Praca: indywidualnie. Czwarte przejście recenzji („przejście żetonem”) możesz zrobić w parze, ale recenzję piszesz sam.

Rezultat: pliki szkolenie.bpmn, szkolenie.svg, mapowanie.md, recenzja.md, prompty.md, oddane na Pegazie jako zadanie Z3.

Czas: 55 minut na zajęciach: 10 minut generowanie, 30 minut recenzja, 15 minut poprawki. Recenzję możesz dokończyć w domu do terminu zadania.

Zadanie Z3 (15%): recenzja modelu wygenerowanego przez agenta. Oddajesz pięć plików z laboratorium. Oceniana jest przede wszystkim jakość recenzji: czy znalazłeś błędy agenta i czy uzasadniłeś oceny słowami z opisu. Pełne polecenie i kryteria oceny są w dodatku D.

Na co zwrócić uwagę

  • Zacznij od kroków, przy których agent wpisał wątpliwości. Potem przejdź do kroków ze zdarzeniami granicznymi i bramkami: tam błędy zdarzają się najczęściej.
  • Kroki z jednym opisem, ale kilkoma elementami, mają w recenzja.md osobne wiersze (np. „3” i „3 (zdarzenie graniczne)”). Oceń każdy wiersz osobno.
  • Sprawdź, czy wiadomości od dostawcy szkolenia płyną przepływem komunikatów z jego basenu, a nie przepływem sekwencji.
  • Zanim oddasz pliki, uruchom sam tok check szkolenie.bpmn --steps --steps-from proces.md --lang pl, a gdy nie zgłosi błędów, tok bpmn szkolenie.bpmn i tok svg szkolenie.bpmn. Model nie może mieć błędów, a ostrzeżenia musisz poprawić albo uzasadnić w recenzji.
  • Nie zmieniaj nazw plików. Pliki o innych nazwach nie zostaną ocenione.

11.3 Pytania sprawdzające

  1. Dlaczego opisy kroków w laboratorium nie nazywają elementów BPMN wprost? Co sprawdza taka konstrukcja zadania?
  2. Wymień cztery sygnały ostrzegawcze w mapowaniu agenta.
  3. Na czym polega „przejście żetonem” i jakie błędy pozwala wykryć?
  4. Z jakich pięciu części składa się dobre polecenie poprawki? Napisz takie polecenie dla dowolnego kroku z proces.md.
  5. Kiedy w recenzji wpisujesz ocenę „DYSKUSYJNE”? Dlaczego taka ocena jest wartościowa?
  6. Jak w laboratorium dokumentujesz korzystanie z agenta i dlaczego wymaga tego Zarządzenie nr 115 Rektora UJ?