01
Historia, od której się zaczęło
Buduję teraz Sześć filarów zdrowia. Jest to system autorefleksji, który pomaga osobie wypełniającej formularz przyjrzeć się różnym obszarom swojego życia: temu, jak się odżywia, ile ma w nim aktywności fizycznej, jak wygląda jej motywacja i podejście do życia, gdzie znajduje się w relacjach z innymi ludźmi i w dążeniu do swoich celów oraz jak wygląda u niej bardzo ważny element życia, czyli sen i regeneracja.
Każdy obszar trzeba w jakiś sposób ocenić. Osoba wypełniająca formularz odpowiada więc na pytania, a system na podstawie jej odpowiedzi pokazuje wynik, opisuje sytuację i proponuje następny krok.
W pewnym momencie musiałem podjąć ważną decyzję. Mogłem przekazać modelowi AI wiedzę o każdym filarze, pozwolić mu prowadzić rozmowę, dobierać pytania i na końcu samodzielnie tworzyć ocenę. Mogłem też wcześniej zaprojektować pytania, możliwe odpowiedzi, przejścia między nimi, reguły wyniku oraz teksty, które zobaczy osoba wypełniająca formularz.
Wybrałem drugie rozwiązanie. Buduję system deterministyczny.
Oznacza to, że jeżeli dwie osoby udzielą takich samych odpowiedzi w tej samej wersji systemu, otrzymają taki sam wynik. Każda ważna ścieżka jest wcześniej opisana. System wie, kiedy zadać dodatkowe pytanie, kiedy informacji wystarcza do ustalenia wyniku, a kiedy powinien pokazać, że obraz jest częściowy albo niepewny.
Dobrym przykładem jest obszar Snu. System zbiera informacje o tym, ile osoba śpi, jak bardzo zmieniają się jej pory snu, czy sen jest często przerywany oraz jak czuje się po przebudzeniu i później w ciągu dnia. Te odpowiedzi są łączone według ustalonej reguły.
Jeżeli wszystkie potrzebne informacje pokazują dobry obraz, pojawia się jeszcze pytanie o to, co wydarzyło się po rzeczywistym zakłóceniu snu. Jeżeli części informacji brakuje, system sprawdza, czy mimo tego wynik pozostaje jednoznaczny. Gdy braki mogłyby zmienić końcowy wniosek, pokazuje wynik częściowy albo niepewny.
W dużym uproszczeniu ten fragment wygląda tak:
- pory snu
- przerwy podczas snu
- funkcjonowanie po przebudzeniu
- takpoziom, opis i następny krok
- niewynik częściowy albo niepewny
Ten przykład doprowadził mnie do znacznie szerszego tematu. Coraz więcej osób buduje produkty, procesy i narzędzia wykorzystujące AI. W wielu z nich pojawi się dokładnie ta sama decyzja: które elementy może interpretować model, a które muszą pozostać przewidywalne.
02
Dwie drogi budowania rozwiązania z AI
Wyobraź sobie, że tworzysz narzędzie, które ma zebrać informacje od konkretnej osoby, ocenić jej sytuację i zaproponować dalsze działanie.
Pierwsza droga polega na przekazaniu całego zadania modelowi AI. Przygotowujesz wiedzę, opisujesz cel i piszesz prompt podobny do tego:
Masz wiedzę o ocenianym obszarze. Zadaj tej osobie pytania, które pozwolą ci zrozumieć jej sytuację. Na podstawie odpowiedzi oceń, na jakim jest poziomie. Wyjaśnij wynik i zaproponuj najlepszy następny krok. Jeśli czegoś nie wiesz, dopytaj.
Taki agent może prowadzić naturalną rozmowę. Potrafi dopasować pytania do odpowiedzi, wyjaśnić niezrozumiałe pojęcie i stworzyć indywidualnie brzmiące podsumowanie.
Jednocześnie model za każdym razem wykonuje interpretację od nowa. Sam decyduje, które informacje uzna za najważniejsze, kiedy ma już wystarczająco dużo danych i jak sformułować końcowy wynik.
Druga droga polega na wcześniejszym zaprojektowaniu procesu. Ustalasz, jakie dane są potrzebne, jakie odpowiedzi może wybrać osoba, co uruchamia kolejne pytanie oraz jaki wynik odpowiada każdemu układowi odpowiedzi.
Model AI może pomagać podczas tworzenia takiego systemu. Gotowy proces wykonuje jednak zapisane reguły.
03
Czym jest system deterministyczny
System deterministyczny daje ten sam rezultat dla tych samych danych wejściowych, o ile korzystamy z tej samej wersji reguł.
Jeżeli osoba wybierze odpowiedzi A, C i B, system przejdzie określoną ścieżką i pokaże przypisany do niej rezultat. Kolejne uruchomienie z odpowiedziami A, C i B zakończy się tak samo.
Powtarzalny wynik wymaga powtarzalnej reguły. Sam prompt opisujący oczekiwane zachowanie modelu nie daje takiej gwarancji.
Najprościej zobaczyć tę różnicę na dwóch przepływach.
Proces oparty na swobodnej interpretacji modelu
Proces oparty na ustalonych regułach
W obu rozwiązaniach osoba może widzieć pytania i końcowe podsumowanie. Różnica znajduje się w środku. W pierwszym przypadku model podejmuje decyzję podczas rozmowy. W drugim decyzja została podjęta wcześniej przez autora systemu i zapisana jako reguła.
04
Dlaczego dobry prompt nie rozwiązuje całego problemu
Możesz przygotować bardzo szczegółowy prompt. Możesz opisać wszystkie filary, przekazać przykłady, wskazać kryteria i określić oczekiwany format odpowiedzi. To poprawi zachowanie modelu, ale nadal pozostawi mu przestrzeń do interpretacji.
Model językowy tworzy odpowiedź na podstawie instrukcji, dostarczonego kontekstu i wzorców poznanych podczas treningu. Nie wykonuje zamkniętej tabeli decyzyjnej, dopóki rzeczywiście takiej tabeli nie zaprojektujesz i nie wymusisz jej wykonania poza swobodnym generowaniem.
Nawet jeżeli odpowiedzi dwóch osób mają to samo znaczenie, mogą zostać inaczej sformułowane. Model może w jednej rozmowie zwrócić większą uwagę na pierwszy sygnał, a w drugiej na ostatni. Może też uznać, że potrzebuje dodatkowego pytania, którego wcześniej nie przewidziałeś.
Ustawienia ograniczające losowość mogą zmniejszyć różnice, ale nie zamieniają generatywnego procesu w zaprojektowany system reguł. Wpływ na wynik może mieć również zmiana modelu, jego wersji, promptu albo kontekstu przekazanego podczas rozmowy.
Szczegółowa instrukcja zwiększa kontrolę nad modelem. Deterministyczny workflow przenosi decyzję z modelu do wcześniej zapisanych reguł.
05
Jakie ryzyko pojawia się przy wyniku tworzonym przez AI
Swobodnie generowana odpowiedź sprawdza się w wielu zadaniach. Ryzyko rośnie wtedy, gdy od wyniku zależy dalsza ścieżka osoby, rekomendacja, dostęp do funkcji albo ocena jej sytuacji.
01
Ten sam przypadek może zostać oceniony inaczej
Dwie osoby mogą podać podobne informacje i otrzymać inaczej sformułowany wniosek. Czasem różnica będzie dotyczyła tylko języka. Czasem wpłynie na rekomendację albo kolejny krok.
Jeżeli wynik ma znaczenie operacyjne, taka zmienność staje się częścią działania produktu. Właściciel powinien świadomie zdecydować, czy ją akceptuje.
02
Model może próbować uzupełnić brakujący obraz
Modele są projektowane tak, żeby odpowiadać pomocnie. Przy niepełnych informacjach mogą próbować stworzyć najbardziej prawdopodobną interpretację.
W systemie oceny brak danych sam w sobie jest ważną informacją. Czasem właściwym rezultatem będzie komunikat: „Nie udało się jeszcze tego ustalić”. Taka możliwość musi zostać wcześniej przewidziana.
03
Trudniej sprawdzić wszystkie ścieżki
W systemie z ustalonymi regułami możesz przygotować przypadki testowe. Dla każdego zestawu odpowiedzi zapisujesz oczekiwany routing i wynik. Następnie automatycznie sprawdzasz, czy system zachowuje się zgodnie z projektem.
Przy swobodnej odpowiedzi modelu zakres możliwych rezultatów pozostaje otwarty. Test może sprawdzić format, obecność określonych elementów albo ogólny sens. Znacznie trudniej zagwarantować dokładny rezultat dla każdej sytuacji.
04
Wyjaśnienie może powstawać dopiero po decyzji
Model potrafi przekonująco uzasadnić swój wynik. Takie uzasadnienie nie zawsze pokazuje rzeczywisty, stabilny proces decyzyjny. Może być kolejnym tekstem wygenerowanym na podstawie wcześniej podanej odpowiedzi.
W systemie deterministycznym możesz wskazać konkretną regułę, która doprowadziła do wyniku. Wiesz, jakie informacje zostały użyte i dlaczego uruchomiła się dana ścieżka.
05
Zmiana modelu może zmienić produkt
Dostawcy rozwijają modele, aktualizują ich zachowanie i wprowadzają nowe wersje. Zmiana może poprawić jakość rozmowy, ale może również wpłynąć na sposób interpretowania instrukcji.
Jeżeli model odpowiada za ważną decyzję, jego aktualizacja staje się zmianą logiki produktu. W systemie deterministycznym logika zmienia się dopiero wtedy, gdy zmienisz reguły.
06
Co trzeba zaprojektować w systemie deterministycznym
Deterministyczność wymaga więcej pracy przed uruchomieniem produktu. Autor musi wcześniej rozstrzygnąć kwestie, które agent generatywny próbowałby rozwiązywać podczas rozmowy.
1. Dokładnie ustal, co oceniasz
Najpierw trzeba zdefiniować konstrukt, czyli to, co system ma naprawdę mierzyć albo rozpoznawać.
W obszarze Snu musiałem zdecydować, czy oceniam jakość i efekt snu, czy zachowanie człowieka związane z dbaniem o sen. To są dwie różne rzeczy. Osoba może bardzo pilnować godzin i nadal źle spać. Może też nie analizować swoich nawyków, a mimo tego dobrze się wysypiać.
Jeżeli konstrukt jest niejasny, pytania zaczną mierzyć różne rzeczy, a reguła wyniku połączy informacje, których nie powinno się łączyć.
2. Oddziel zbieranie faktów od interpretacji
Jedno pytanie powinno zbierać jedną określoną informację. Liczba godzin snu odpowiada na pytanie o długość. Nie powinna automatycznie rozstrzygać, czy ktoś śpi wystarczająco długo, ponieważ potrzeby ludzi mogą być różne.
Interpretacja pojawia się dopiero wtedy, gdy połączymy długość z samopoczuciem po przebudzeniu i funkcjonowaniem w ciągu dnia.
Ta sama zasada działa w innych projektach. Najpierw zbierasz dane. Później stosujesz do nich wcześniej ustaloną regułę.
3. Rozpisz możliwe stany i przejścia
Każda odpowiedź powinna mieć określone znaczenie dla dalszego procesu.
Musisz wiedzieć:
- Czy odpowiedź prowadzi do kolejnego pytania?
- Czy uruchamia dodatkowe doprecyzowanie?
- Czy wystarcza do ustalenia wyniku?
- Czy oznacza brak informacji?
- Czy osoba może zakończyć proces bez przypisanego poziomu?
Pomaga w tym zwykły workflow. Zanim napiszesz kod, możesz rozpisać całą drogę na kartce albo w dokumencie.
- odpowiedź Akolejne pytanie
- odpowiedź Bdodatkowe wyjaśnienie
- odpowiedź Cwynik
- brak wiedzywynik częściowy
4. Zaprojektuj zachowanie przy braku danych
Wiele systemów dobrze opisuje sytuację idealną, w której osoba zna wszystkie odpowiedzi i bez problemu wybiera jedną opcję. Prawdziwe użycie szybko pokaże inne przypadki.
Osoba może:
- nie pamiętać;
- nie rozumieć pytania;
- nie mieć porównywalnej sytuacji;
- nie chcieć odpowiadać;
- znaleźć się między dwiema odpowiedziami;
- podać informacje, które pozornie sobie przeczą.
Każdy z tych przypadków wymaga decyzji. System może dopytać, pominąć element, pokazać wynik częściowy albo zakończyć ocenę bez poziomu. Ważne, żeby takie zachowanie wynikało z projektu.
5. Ustal, które teksty muszą być zatwierdzone
Jeżeli komunikat ma wpływ na to, jak osoba rozumie swoją sytuację, jego znaczenie powinno być kontrolowane.
W moim projekcie zapisujemy dokładne brzmienie pytań, odpowiedzi, opisów wyniku i następnych kroków. Dzięki temu wiadomo, co zobaczy osoba wypełniająca formularz. Model AI pomaga przy redakcji, ale zaakceptowany tekst staje się częścią systemu.
W innym produkcie możesz dopuścić generowanie części wyjaśnienia. Wtedy warto określić granicę. Model może rozwinąć zatwierdzony wynik, ale nie powinien zmieniać jego poziomu, znaczenia ani dalszej ścieżki.
6. Przygotuj testy dla ważnych ścieżek
Każda istotna reguła powinna mieć przykład wejścia i oczekiwany rezultat.
- PRZYPADEK
- Osoba podała komplet informacji wskazujących dobry wynik.
- OCZEKIWANE ZACHOWANIE
- System zadaje dodatkowe pytanie o zachowanie wyniku po zmianie warunków.
- OCZEKIWANY REZULTAT
- Odpowiedź potwierdzająca utrzymanie albo odzyskanie dobrego wyniku prowadzi do najwyższego poziomu.
Testy powinny obejmować również brakujące dane, odpowiedzi graniczne, nietypowe kombinacje i ścieżki, które kończą się bez pełnego wyniku.
7. Zapisuj decyzje i wersjonuj reguły
System deterministyczny rozwija się razem z projektem. Możesz poprawić pytanie, zmienić znaczenie odpowiedzi albo przebudować regułę wyniku.
Każda taka zmiana powinna być zapisana. Dzięki temu wiesz, która wersja reguł wygenerowała dany rezultat i jakie testy trzeba ponownie uruchomić.
07
Dwa podejścia w jednym porównaniu
| Pytanie | Model generatywny | System deterministyczny |
|---|---|---|
| Kto podejmuje decyzję? | Model podczas rozmowy | Autor podczas projektowania reguł |
| Czy ten sam przypadek zawsze da ten sam wynik? | Nie ma pełnej gwarancji | Tak, w tej samej wersji systemu |
| Jak powstaje routing? | Model dobiera kolejne pytania | Przejścia są wcześniej zapisane |
| Co dzieje się przy braku danych? | Model interpretuje sytuację | System wykonuje ustaloną regułę |
| Czy można przetestować wszystkie ważne ścieżki? | Można testować zakres i jakość odpowiedzi | Można sprawdzić dokładne wejścia i rezultaty |
| Czy wynik można łatwo wyjaśnić? | Wyjaśnienie tworzy model | Wynik wskazuje konkretną regułę i dane |
| Co daje największą wartość? | Elastyczność rozmowy i języka | Powtarzalność, kontrola i możliwość prześledzenia wyniku |
Ta tabela pomaga ustalić, gdzie potrzebujesz reguł, a gdzie możesz dopuścić swobodę modelu. Jeden produkt może korzystać z obu podejść.
08
Powtarzalność i poprawność to dwie różne rzeczy
To rozróżnienie jest bardzo ważne.
Zakres gwarancji systemu deterministycznego obejmuje powtarzalność. Te same dane wejściowe w tej samej wersji reguł dadzą ten sam rezultat. Merytoryczna poprawność zależy od jakości zaprojektowanej reguły.
Jeżeli błędnie zdefiniujesz oceniany obszar, źle napiszesz pytania albo przypiszesz niewłaściwy wynik do danej kombinacji odpowiedzi, system będzie konsekwentnie powtarzał ten błąd.
Jakość zależy od kilku rzeczy:
- poprawnego zdefiniowania problemu;
- sensownych danych wejściowych;
- właściwych reguł;
- uwzględnienia przypadków brzegowych;
- jakości tekstów;
- testów;
- świadomego zatwierdzenia zmian.
Deterministyczność daje powtarzalność. Poprawność wynika z jakości projektu.
09
Jaką rolę może pełnić AI
AI nadal może uczestniczyć w niemal całym procesie budowania. Zmienia się jego odpowiedzialność.
W moim projekcie AI pomaga mi:
- analizować konstrukcję każdego obszaru;
- wykrywać niespójności między pytaniami i wynikiem;
- porównywać podobne odpowiedzi;
- szukać brakujących przypadków;
- dopracowywać naturalny język;
- zapisywać zaakceptowane ustalenia;
- tworzyć kod;
- przygotowywać testy;
- sprawdzać pełne ścieżki osoby przechodzącej przez system.
Każda materialna decyzja zostaje zatwierdzona i zapisana. Gotowy system korzysta z zaakceptowanej reguły.
Można to przedstawić jako cztery warstwy:
W ostatniej warstwie granice mają duże znaczenie. Jeżeli AI tworzy dodatkowe wyjaśnienie, powinno otrzymać już ustalony wynik i zatwierdzone fakty. Nie może samodzielnie zmienić poziomu, rekomendacji ani routingu.
10
Najczęściej najlepszy jest system hybrydowy
Wiele dobrych produktów połączy oba podejścia.
Deterministyczna część może odpowiadać za:
- uprawnienia;
- kryteria kwalifikacji;
- obliczenia;
- scoring;
- routing;
- statusy;
- kolejność procesu;
- wybór zatwierdzonej rekomendacji.
Model AI może odpowiadać za:
- rozmowę w języku naturalnym;
- wyjaśnianie pojęć;
- podsumowanie materiału;
- porządkowanie danych;
- tworzenie wariantów tekstu;
- odpowiadanie na pytania osoby korzystającej z rozwiązania;
- pracę na informacjach, dla których dopuszczasz więcej niż jedną poprawną odpowiedź.
Projekt zaczynasz więc od podziału odpowiedzialności. Każda decyzja trafia do tej części systemu, która potrafi zapewnić wymagany poziom kontroli.
11
Kiedy potrzebujesz deterministycznego workflow
Przed przekazaniem decyzji modelowi AI zadaj sobie kilka pytań.
„tak” 0/7
Im więcej odpowiedzi „tak” pojawia się przy pierwszych pięciu pytaniach, tym większa część procesu powinna zostać zaprojektowana deterministycznie.
12
Proces, który możesz zastosować we własnym projekcie
Poniższy schemat pozwala przejść od pomysłu do kontrolowanego workflow.
-
ZAPISZ OCZEKIWANY REZULTAT
Co dokładnie ma otrzymać osoba przechodząca przez proces?
-
OKREŚL POTRZEBNE DANE
Jakie informacje są konieczne do podjęcia decyzji?
-
ROZPISZ STANY I PRZEJŚCIA
Co dzieje się po każdej możliwej odpowiedzi?
-
DODAJ BRAKI I PRZYPADKI BRZEGOWE
Co robisz, gdy danych brakuje albo sobie przeczą?
-
ZAPISZ REGUŁY I TEKSTY
Które rezultaty oraz komunikaty muszą być stałe?
-
PRZYGOTUJ TESTY
Jakie wejścia mają prowadzić do jakich wyników?
-
WYZNACZ ROLĘ AI
Gdzie zmienność odpowiedzi jest bezpieczna i przydatna?
Do każdego kroku możesz wykorzystać AI jako partnera do analizy. Ostateczne reguły powinny być zapisane w miejscu, które stanowi źródło prawdy dla produktu.
13
Pułapka, w którą łatwo wpaść
Najprostszym rozwiązaniem wydaje się napisanie coraz dłuższego promptu. Dodajesz kolejne zasady, przykłady, wyjątki i oczekiwane formaty. Po pewnym czasie prompt zaczyna przypominać specyfikację systemu.
To sygnał, że część decyzji warto przenieść do kodu, tabeli reguł albo osobnego workflow. Prompt nadal może opisywać rolę modelu, język rozmowy i dostępny kontekst. Reguły krytyczne zyskują wtedy formę, którą można jednoznacznie wykonać i przetestować.
Jeżeli nie zaakceptujesz innego wyniku dla tych samych danych, zapisz regułę poza swobodnym generowaniem modelu.
14
Co możesz zrobić po przeczytaniu
Weź jeden proces ze swojego produktu albo firmy. Najlepiej taki, w którym osoba podaje informacje, a system później coś ocenia, wybiera albo rekomenduje.
Następnie:
- Zapisz wszystkie decyzje, które podejmuje dzisiaj model AI.
- Zaznacz te, które muszą być powtarzalne.
- Określ dane potrzebne do każdej z nich.
- Zapisz zachowanie przy brakujących informacjach.
- Rozrysuj możliwe przejścia.
- Przygotuj po jednym teście dla każdej ważnej ścieżki.
- Zostaw modelowi swobodę tam, gdzie różne odpowiedzi nadal będą poprawne i bezpieczne.
Po takim ćwiczeniu zobaczysz granicę między częścią generatywną i deterministyczną. W wielu projektach właśnie ta granica decyduje o tym, czy model pomaga w bezpieczny sposób, czy podejmuje decyzje, których właściciel produktu nie potrafi już kontrolować.
15
Podsumowanie
Podczas budowania Sześciu filarów zdrowia wybrałem większą pracę projektową na początku. Dzięki temu znam znaczenie każdego pytania, wiem, dokąd prowadzi każda odpowiedź i potrafię wyjaśnić, dlaczego dana osoba otrzymała konkretny wynik.
AI pomaga mi analizować, pisać, testować i szukać luk. Decyzje działającego systemu wynikają z reguł, które wcześniej zatwierdziłem.
Zakres deterministycznego rdzenia zależy od rodzaju zadania. Swobodna rozmowa, wyjaśnienia i praca z otwartym tekstem dobrze wykorzystują możliwości modeli językowych. Powtarzalne decyzje, routing, scoring i zatwierdzone rekomendacje wymagają wcześniej zapisanych reguł.
Zanim podłączysz model AI do kolejnego procesu, zapisz jedną rzecz: które decyzje w tym procesie muszą pozostać takie same przy tych samych danych. Od tej listy zacznij projektowanie architektury.