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:
- Wskazówka nie pochodzi z opisu. Agent cytuje słowa, których w
proces.mdnie 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. - Brakuje wiersza. Krok, który wymaga dwóch elementów (np. zadanie i zdarzenie graniczne), ma tylko jeden wiersz.
- 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.
- 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:
- który krok (numer z opisu),
- co jest teraz w modelu,
- co powinno być,
- dlaczego: słowa z opisu,
- 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 pakietubpmn-agentdopisuje 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.mdosobne 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.bpmnitok 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
- Dlaczego opisy kroków w laboratorium nie nazywają elementów BPMN wprost? Co sprawdza taka konstrukcja zadania?
- Wymień cztery sygnały ostrzegawcze w mapowaniu agenta.
- Na czym polega „przejście żetonem” i jakie błędy pozwala wykryć?
- Z jakich pięciu części składa się dobre polecenie poprawki? Napisz takie polecenie dla dowolnego kroku z
proces.md. - Kiedy w recenzji wpisujesz ocenę „DYSKUSYJNE”? Dlaczego taka ocena jest wartościowa?
- Jak w laboratorium dokumentujesz korzystanie z agenta i dlaczego wymaga tego Zarządzenie nr 115 Rektora UJ?