Wszystkie wpisy

Blog

Human in the loop: kiedy agent AI musi poczekać na akceptację człowieka

8 min czytania

  • agenci AI
  • automatyzacja
  • procesy
  • decyzje

W 2022 roku pasażer Air Canada zapytał chatbota na stronie przewoźnika o zniżkę na lot na pogrzeb bliskiej osoby. Chatbot odpowiedział, że może kupić bilet w normalnej cenie, a o zniżkę wystąpić już po zakupie. Regulamin linii na to nie pozwalał. Pasażer poszedł z tym do sądu i w 2024 roku wygrał.

Kamila Kierzek-Mechło i Radosław Mechło opisują tę sprawę w książce „Zatrudnij AI, odzyskaj czas”. Sąd nakazał Air Canada zapłacić pasażerowi ponad 812 dolarów kanadyjskich i nie przyjął argumentu, że chatbot to osobny byt, który sam odpowiada za swoje słowa. Autorzy podsumowują to tak:

W przypadku błędów AI ewentualne konsekwencje finansowe może ponosić firma.

Kwota jest mała, ale model powiedział klientowi coś wiążącego i nikt tego wcześniej nie przeczytał. Chatbot Air Canada tylko odpowiadał na pytania. Agent AI, który sam wysyła maile, wystawia oferty albo zmienia ceny, robi takie wiążące ruchy na co dzień. Dlatego zanim dam agentowi dostęp do czegokolwiek, co wychodzi poza firmę, ustalam, w którym miejscu musi się zatrzymać i poczekać na człowieka.

Co oznacza human in the loop

Human in the loop (HITL, po polsku „człowiek w pętli”) to sposób ułożenia systemu AI, w którym człowiek jest jednym z kroków procesu. Maszyna przygotowuje, sprawdza i proponuje. Człowiek zatwierdza, poprawia albo odrzuca, a dopiero potem proces idzie dalej.

Pojęcie jest starsze niż agenci AI. W uczeniu maszynowym (machine learning) człowiek w pętli to na przykład osoba, która oznacza dane albo ocenia odpowiedzi modelu. Tak uczono też ChatGPT: ludzie porównywali i oceniali odpowiedzi, a model uczył się na tych ocenach (metoda nazywa się reinforcement learning from human feedback, RLHF). Kiedy sam korzystasz z czatu, też jesteś w pętli, o ile czytasz odpowiedź, zanim wkleisz ją do maila.

Przy agentach AI chodzi o coś węższego. Agent dostaje cel, sam planuje kroki i korzysta z Twoich narzędzi: poczty, CRM, sklepu, systemu płatności. Human in the loop oznacza, że przed wybranymi krokami agent się zatrzymuje. Autorzy „Zatrudnij AI” piszą:

Warto pamiętać o dodaniu ręcznej weryfikacji działań w kluczowych etapach działania agentów (HITL). To pozwoli na ograniczenie ryzyka, w którym błąd jest przekazywany dalej i powielany.

Czy to osobny rodzaj agentowej AI? Raczej reguła, którą dokładasz do agenta: tu możesz działać sam, a tu czekasz na podpis.

Human in the loop, human on the loop i pełna autonomia

Te trzy pojęcia mylą się często, a dotyczą tego samego pytania: kiedy człowiek ma coś do powiedzenia.

Model Rola człowieka Przykład
Human in the loop Zatwierdza przed wykonaniem. Bez jego zgody krok się nie wydarzy. Agent pisze odpowiedź na reklamację, wysyłasz ją Ty.
Human on the loop Nadzoruje w trakcie, widzi log i może przerwać. Agent nie czeka na zgodę. Agent taguje zgłoszenia w CRM, a Ty raz dziennie przeglądasz, co zrobił.
Pełna autonomia Ustala reguły na starcie i ogląda wyniki po fakcie. Filtr spamu w poczcie.

W human in the loop błąd zatrzymuje się przed klientem. W human on the loop błąd już się wydarzył, a Ty możesz go szybko cofnąć i zatrzymać kolejne. Który model wybrać, zależy od tego, co się stanie, gdy dany krok pójdzie źle.

Gdzie postawić akceptację człowieka

Przy każdym kroku, który agent ma wykonywać, zadaję trzy pytania. Czy da się to cofnąć? Ile kosztuje błąd? Czy zobaczy to ktoś spoza firmy?

Działanie agenta Da się cofnąć? Koszt błędu Widzi klient? Akceptacja
Tag albo kategoria w CRM tak, jednym kliknięciem niski nie nie, wystarczy log
Szkic odpowiedzi w skrzynce tak, to tylko szkic niski nie nie
Wysłanie maila do klienta nie średni tak tak
Oferta z ceną i terminem nie wysoki tak tak
Zmiana ceny w sklepie tylko do pierwszego zakupu wysoki tak tak
Publikacja wpisu albo posta technicznie tak, ale ktoś już przeczytał średni tak tak
Przelew praktycznie nie wysoki odbiorca tak, zawsze
Wdrożenie na produkcję częściowo wysoki tak tak

Jeśli krok da się łatwo cofnąć, błąd kosztuje mało i nikt spoza firmy go nie zobaczy, agent może działać sam, a Ty przeglądasz log. Jeśli krok jest nieodwracalny albo trafia do klienta, stawiam akceptację. Wszystko, co dotyczy pieniędzy, przechodzi przez człowieka zawsze.

To samo mówią autorzy książki w swoich zasadach bezpiecznego korzystania z AI:

AI to doradca, nie decydent. Końcowe decyzje, podpisy, publikacje i wdrożenia powinny być zawsze przemyślane przez człowieka.

Jak to wygląda u mnie

Przy budowie mojej strony, tej, którą właśnie czytasz, agenci AI piszą kod, uruchamiają testy i próbne wgranie. Formularz uruchomienia wgrania ma domyślnie zaznaczoną próbę: system łączy się z serwerem i pokazuje, co by zmienił, ale niczego nie wysyła. Prawdziwe wgranie na produkcję rusza dopiero wtedy, gdy odznaczę próbę i wpiszę w polu potwierdzenia słowo „wgrywamy”. Bez tego słowa proces kończy się błędem, zanim cokolwiek dotknie serwera.

Mógłby to być zwykły przycisk, ale przycisk łatwo kliknąć z przyzwyczajenia. Słowo trzeba napisać świadomie. Agenci robią całą pracę przygotowawczą, ja podejmuję jedną decyzję: czy ta wersja ma być publiczna.

Drugi przykład pochodzi z mojej porównywarki cen e-booków. Agent AI opracowuje tam nowe oferty z plików księgarni i szuka dla nich właściwej karty książki. Ma twardy zakaz: bez ISBN-u nie zakłada nowej karty. Jeśli nie znajdzie pewnego dopasowania, odkłada pozycję i pisze redaktorowi, czego brakuje i co już sprawdził. Redaktor ogląda tylko te pozycje, przy których agent sam przyznał, że nie wie, a reszta ofert do niego nie trafia.

Jak wdrożyć human in the loop w firmie

Na start potrzebujesz czterech rzeczy. Żadna nie wymaga drogiego narzędzia, da się je zbudować w zwykłej automatyzacji.

Kolejka do akceptacji

Zamiast wysyłać, agent odkłada propozycję w jedno miejsce: arkusz, kanał na komunikatorze, zakładkę w panelu. Każda pozycja mówi, co agent chce zrobić, na jakiej podstawie (źródło danych) i co już sprawdził. Pod spodem są trzy przyciski: zatwierdź, popraw, odrzuć.

Osoba zatwierdzająca powinna zrozumieć propozycję w pół minuty. Jeśli musi otwierać pięć systemów, żeby sprawdzić jeden mail, zacznie klikać „zatwierdź” bez czytania. Ustal też, co się dzieje, gdy nikt nie odpowie. U mnie odpowiedź jest zawsze ta sama: nic nie wychodzi.

Limit kosztów na zadanie

Agent, który sam planuje kroki, może się zapętlić i wołać model w kółko. Autorzy „Zatrudnij AI” zwracają uwagę, że autonomia agentów oznacza ciągłe koszty, i radzą ograniczyć maksymalne wydatki dzienne lub miesięczne. Ja dokładam limit na pojedyncze zadanie: maksymalną liczbę kroków albo wywołań modelu. Po przekroczeniu agent się zatrzymuje i trafia do kolejki jak każda inna sprawa do decyzji.

Pola, których model nie może zgadywać

Model zapytany o brakującą informację rzadko odpowiada „nie wiem”. Wstawi coś, co wygląda wiarygodnie. Dlatego spisuję pola, przy których brak danych zatrzymuje proces: ISBN, cena, kwota, numer konta, data dostawy, adres odbiorcy. Agent może je przepisać ze źródła, ale nie może ich wymyślić ani „uzupełnić najbardziej prawdopodobną wartością”.

Log decyzji

Każda akceptacja zostawia ślad: co agent zaproponował, kto zatwierdził, kiedy i co zmienił. Z logu najszybciej widać, które poprawki się powtarzają. Jeśli redaktor co tydzień poprawia ten sam rodzaj błędu, poprawka należy się instrukcji agenta albo regule. O tym, jak formułować takie uwagi, żeby dało się z nich zrobić regułę, piszę przy lekcji z Pixara.

Czy prawo wymaga człowieka w pętli

Częściowo tak, ale nie wszędzie. Unijny AI Act wymaga, żeby systemy AI wysokiego ryzyka (na przykład w rekrutacji czy ocenie zdolności kredytowej) były zaprojektowane tak, by człowiek mógł skutecznie nadzorować ich działanie. RODO daje osobom prawo, by decyzja wywołująca wobec nich skutki prawne albo podobnie istotne nie opierała się wyłącznie na automatycznym przetwarzaniu. Agent, który pisze szkice maili do klientów, zwykle nie wpada w żadną z tych kategorii. Jeśli masz wątpliwości co do swojego przypadku, rozstrzygnie je prawnik.

Sprawa Air Canada pokazuje jednak, że bez względu na przepisy za to, co mówi Twój system, odpowiadasz Ty. Autorzy książki mają na to krótkie zdanie: „To ty ponosisz odpowiedzialność, nie algorytm”.

Kiedy human in the loop to przesada

Akceptacja przy każdym kroku zamienia agenta w bardzo drogi formularz. Jeśli człowiek musi zatwierdzić każdy tag, każdy szkic wewnętrzny i każdą notatkę ze spotkania, po tygodniu przestaje czytać i klika wszystko. Taka kontrola daje gorszy wynik niż jej brak, bo wszyscy myślą, że ktoś sprawdza.

Nie stawiam akceptacji przy szkicach, które i tak ktoś przeczyta przed użyciem, przy tagowaniu i sortowaniu, przy streszczeniach dla siebie i przy wszystkim, co da się cofnąć jednym kliknięciem. Tam wystarcza human on the loop: log i możliwość zatrzymania. Akceptację zostawiam na krawędzi, czyli tam, gdzie praca agenta wychodzi do klienta, do banku albo na produkcję.

Druga pułapka to akceptacja bez kontekstu. Jeśli zatwierdzający widzi tylko gotowy tekst, bez źródła i bez tego, co agent sprawdził, nie ma na czym oprzeć decyzji i podpisuje w ciemno. Zanim zdecydujesz, czy w ogóle potrzebujesz agenta, sprawdź, czy nie wystarczy zwykła reguła. Reguła robi zawsze to samo, więc sprawdzasz ją raz, przy budowie, zamiast przy każdym wykonaniu.

Budujesz agenta AI, który ma pisać do klientów, wystawiać oferty albo zmieniać dane w systemie, i nie wiesz, gdzie postawić akceptację? Napisz do mnie.