W naszym artykule produktowym opisaliśmy już, co potrafi AI Budget Assistant: zrobić zdjęcie paragonu, podyktować wydatek głosem, zapytać czat o radę budżetową — i to wszystko bez ani jednego arkusza kalkulacyjnego. To było spojrzenie od strony użytkownika. Teraz podejdźmy od strony realizacji i zobaczmy, jak dokładnie wykorzystywana jest tu sztuczna inteligencja — i, co równie ważne, co powstrzymuje ją przed głupstwami.

Finanse osobiste i AI to przede wszystkim kwestia zaufania. Zwykły chatbot w tym temacie łatwo powie za dużo: pewnie poda liczbę, której nie ma, «przypomni sobie» transakcję, której nie było, albo doradzi coś, co nie ma związku z Twoim budżetem. Zbudowaliśmy system tak, aby model nie działał w próżni, lecz na Twoich realnych danych, i aby wokół niego było dość dyscypliny: klucz do AI jest przechowywany na serwerze (a nie w aplikacji), Twoje dane trafiają do modelu w izolacji od instrukcji, a tam, gdzie model nie jest potrzebny, pracują zwykłe reguły i matematyka — szybciej, taniej i bardziej przewidywalnie.

Przez cały tekst przewija się jedna myśl: AI jest tu narzędziem pod kontrolą, a nie wyrocznią. Przejdźmy po kolei: gdzie jest wykorzystywana, jak jest zbudowana i gdzie świadomie się bez niej obeszliśmy. Po drodze — schematy uporządkowane dla czytelnika, a nie dla inżyniera.

Gdzie jest tu AI

Aplikacja to klient mobilny (na Expo), a cała «inteligentna» logika mieszka na serwerze. Klient nigdy nie wywołuje OpenAI bezpośrednio: idzie na nasz serwer, a ten dodaje klucz i odpowiedni kontekst i wywołuje model. Dzięki temu klucz nigdy nie opuszcza serwera, a my możemy w jednym miejscu liczyć limity, czyścić dane i wstawiać kontekst.

Ogólny obraz: aplikacja i boty rozmawiają z serwerem; serwer-proxy dodaje klucz i kontekst i wywołuje OpenAI; część logiki działa w ogóle bez AI.

Zwróć uwagę na dwie rzeczy. Po pierwsze, dostawca jest jeden — OpenAI; żaden «zwierzyniec» modeli nie jest tu potrzebny. Po drugie, tuż obok AI na serwerze mieszka logika bez AI — wykrywanie anomalii i osobisty indeks inflacji liczone są zwykłym kodem. Wrócimy do nich osobno.

Jeden klucz, trzy «prędkości» modelu

W przeciwieństwie do systemów, w których przynosisz własny klucz, tutaj klucz należy do usługi. Użytkownik wybiera nie dostawcę, lecz «prędkość» modelu — w ustawieniach, jednym przełącznikiem dla wszystkich funkcji tekstowych i «wizyjnych» naraz.

Droga żądania do AI: najpierw sprawdzany i odejmowany jest limit z mnożnikiem planu, potem wg «prędkości» wybierany jest model, a serwer wywołuje OpenAI własnym kluczem.

Prędkości są trzy: fast (model gpt-4o-mini, taniej), balanced (gpt-4o, domyślnie) i quality (gpt-4.1, drożej i bardziej szczegółowo). Każda ma swój mnożnik kosztu, który wpływa na to, ile limitu AI zużywa jedno żądanie: na planie darmowym to 5 żądań AI miesięcznie, a żądanie «fast» kosztuje 0,75 jednostki, natomiast «quality» — 1,5. Tak użytkownik sam steruje balansem «taniej / mądrzej», a koszty pozostają pod kontrolą. Rozpoznawanie głosu stoi z boku: zawsze idzie przez stały model whisper-1 i nie wchodzi w wybór «prędkości».

Asystent czatu jako agent z funkcjami

Czat to nie tylko «pogadanie z botem». Pod maską to agent z 11 funkcjami (utwórz wydatek, dodaj przychód i tak dalej): model sam decyduje, czy odpowiedzieć tekstem, czy zaproponować konkretne działanie, a wykonuje je potem sprawdzony kod na serwerze.

Czat jako agent: model albo odpowiada tekstem, albo proponuje działanie; zapis zawsze przechodzi przez potwierdzenie, a dla roli «obserwator» jest blokowany.

Ważny szczegół — każda zmiana danych przechodzi przez potwierdzenie. Model nie tworzy wydatku po cichu: proponuje działanie, a użytkownik je potwierdza (lub anuluje). A jeśli członek konta ma rolę «obserwator» (viewer), zapis jest blokowany, zanim działanie w ogóle trafi do kolejki — zarówno w aplikacji, jak i w botach. Innymi słowy, AI pomaga tu wypełniać, ale nie rozporządza Twoimi danymi za Twoimi plecami.

Co AI o Tobie wie — i ochrona przed wstrzyknięciami

Aby porady były na temat, asystent otrzymuje wycinek Twoich finansów: ile wydano w tym miesiącu, limity kategorii, najczęstsze kategorie i ostatnie wydatki. Ale właśnie tu kryje się subtelne ryzyko — atak przez Twoje własne dane (prompt injection): jeśli w opisie wydatku ukryto polecenie dla modelu, mogłoby ono «przejąć» instrukcje. Zamykamy to na dwóch poziomach.

Ochrona kontekstu: wszystkie ciągi użytkownika są czyszczone, a dane trafiają do modelu w izolowanym bloku, oddzielnie od instrukcji — aby model traktował je jako dane, a nie polecenia.

Po pierwsze, wszystkie ciągi użytkownika (opisy wydatków, nazwy projektów, tagów, kategorii, celów) są czyszczone przed wstawieniem do promptu. Po drugie, kontekst przekazywany jest do modelu jako izolowany blok danych, opakowany znacznikami służbowymi (w rodzaju «--- DANE UŻYTKOWNIKA ---» … «--- KONIEC DANYCH ---»), tak że model traktuje go jako dane, a nie jako instrukcje. Nawet dowolny podpis do skanowanego paragonu jest ograniczony długością i podawany jako pasywna notatka, a nie polecenie.

Paragon ze zdjęcia: wizja

Najszybszy sposób na zapisanie wydatku to sfotografować paragon. Rozpoznawaniem zajmuje się model «wizyjny» (ten sam, który wybrałeś wg «prędkości»): wyciąga ze zdjęcia pozycje, kwoty, datę, a nawet adres sklepu.

Rozpoznawanie paragonu: model z wizją zamienia zdjęcie w pozycje i adres; z nich składany jest szkic wydatku, a adres staje się punktem na mapie — już bez AI.

Dalej zaczyna się staranna praca ze szczegółami. Każdej pozycji nadawana jest kanoniczna nazwa produktu — potrzebna, by później uczciwie porównywać ceny w czasie (o tym niżej). A adres sklepu staje się punktem na mapie dzięki otwartej usłudze geokodowania (OpenStreetMap/Nominatim) — całkowicie bez AI, z cache i «cichym» zachowaniem przy niepowodzeniu. Dobry przykład na to, że nie każde zadanie warto oddawać modelowi.

Głos: podyktuj wydatek

Wydatku nie musisz pisać — możesz go wypowiedzieć. Wiadomość głosową rozszyfrowuje model whisper-1, po czym tekst jest obsługiwany jak zwykłe zdanie — tym samym rozborem wydatków, co przy wpisywaniu z klawiatury. Działa to i w aplikacji, i w komunikatorach.

AI w Telegramie i WhatsAppie

AI Budget Assistant żyje nie tylko w aplikacji. Ma pełnoprawne boty w Telegramie i WhatsAppie i — co ważne dla architektury — korzystają one z tych samych usług AI: tego samego agenta czatu, tej samej transkrypcji głosu, tego samego rozpoznawania paragonów. Nie trzy różne «mózgi», lecz jeden, dostępny z różnych kanałów.

Jeden zestaw usług AI na serwerze obsługuje i aplikację, i Telegram, i WhatsApp — czat, głos i paragony wszędzie działają tak samo.

Miła drobnostka: w rozmowie bot potrafi rozpoznać w tekście nazwę konta i odpowiedzieć właśnie o nim, bez przełączania Twojego głównego konta. Wystarczy napisać coś w rodzaju «pokaż wydatki w Rodzina» — i bot zrozumie, o które konto chodzi.

Inteligentne podpowiedzi: kategorie, tagi, projekty

Dobry pomocnik nie każe wszystkiego wpisywać ręcznie. Dlatego przy wprowadzaniu wydatku system proponuje kategorię, tagi, pasujący projekt, a nawet podział kwoty na kilka kategorii. Ale i tu model nie zawsze się włącza.

Podpowiedzi «najpierw historia, potem AI»: jeśli coś podobnego już było, podpowiedź jest natychmiastowa i bez modelu; AI i embeddingi włączają się tylko dla nieznanych przypadków.

Logika jest prosta i oszczędna: najpierw historia. Jeśli podobny wydatek już się pojawiał, podpowiedź jest podawana natychmiast, bez wywołania modelu. I dopiero dla nieznanych przypadków włącza się AI, a do dopasowania «wg sensu» (na przykład do jakiego projektu przypisać wydatek) używane są embeddingi — wektorowe reprezentacje tekstu. Dzięki temu częste operacje nie zużywają ani limitu AI, ani czasu.

Wglądy, historie i portfel

Ponad Twoimi danymi AI potrafi nie tylko odpowiadać na pytania, ale i samo dostrzegać prawidłowości. Składa karty wglądów (dokąd ucieka pieniądz, co się zmieniło), a nawet narracyjne «historie wydatków» — spójną opowieść zamiast suchych liczb.

Analityka na AI: z Twoich danych składane są karty wglądów i «historie wydatków», a dla portfela inwestycyjnego — osobne wglądy portfelowe z oceną ryzyka.

Osobna historia to portfel inwestycyjny. Tu AI analizuje skład inwestycji i wydaje wglądy portfelowe: ryzyko koncentracji w jednym aktywie, przechył wg typu, odstawanie od benchmarku, wpływ prowizji i inne sygnały — z czytelnymi progami «ostrzeżenie / krytyczne». Ta możliwość należy do planu płatnego (Pro+), kosztuje nieco więcej niż zwykłe żądanie i jest buforowana na dobę, aby nie przeliczać tego samego.

Gdzie AI świadomie NIE jest używane

To chyba najbardziej niedoceniany rozdział. Nie wszystko, co wygląda «inteligentnie», powinno iść do modelu — czasem zwykły kod jest uczciwszy, szybszy i tańszy. U nas w ten sposób zrobione są dwie zauważalne rzeczy.

Wykrywanie anomalii — na regułach, bez AI: cztery detektory uruchamiają się w momencie zapisu wydatku, wpadają do kanału z ochroną przed duplikatami i wysyłają nie więcej niż trzy powiadomienia dziennie.

Wykrywanie anomalii działa na czterech prostych regułach, uruchamiających się dokładnie w momencie zapisu wydatku: skok kategorii (wzrost o 30%+ do średniej), podrożała subskrypcja (wzrost ceny o ponad 10%), podwójne obciążenie (ten sam odbiorca i kwota w ciągu doby) i «wygląda na płatność cykliczną». Każdy sygnał trafia do kanału z ochroną przed duplikatami, a żeby nie zanudzać, powiadomień wysyłanych jest nie więcej niż trzy dziennie. Żadnego modelu — tylko deterministyczne reguły, które zawsze działają tak samo.

Osobisty indeks inflacji jest jeszcze uczciwszy. Pokazuje, jak zmienia się koszt właśnie Twojego «koszyka» zakupów, i liczony jest zwykłą matematyką (indeks Laspeyresa) po pozycjach z Twoich paragonów — bez ani jednego wywołania AI. Model bierze tu udział jedynie pośrednio: kiedyś rozpoznał paragon, a dalej działa arytmetyka. Tanio, przejrzyście i powtarzalnie.

Podsumowanie

Gdy zebrać to wszystko razem, wyłania się ta sama prosta myśl, co w naszych innych produktach: wartość bierze się nie z «większego modelu», lecz ze starannej inżynierii wokół niego. AI, które działa na Twoich realnych danych, a nie je wymyśla. Klucz, który zostaje na serwerze, a nie wycieka do aplikacji. Dane odizolowane od instrukcji. Potwierdzenie przed każdym zapisem. I trzeźwa decyzja, by nie wzywać modelu tam, gdzie poradzą sobie reguły i matematyka.

To właśnie ta dyscyplina zamienia gadatliwy model w asystenta, któremu można powierzyć swój budżet — bez obawy, że dorysuje Ci zbędny wydatek. AI Budget Assistant możesz wypróbować na ai-budget.pl, w Google Play albo złożyć samodzielnie ze źródeł na GitHubie. A jeśli potrzebujesz podobnego pomocnika AI wbudowanego w Twój produkt i Twoje dane — napisz do nas: [email protected].

Który model za co odpowiada

Na koniec — zestawienie: który model realizuje które zadanie. Osobno podkreślmy: wykrywanie anomalii i osobisty indeks inflacji działają bez modelu — na regułach i matematyce, dlatego nie ma ich w tabeli.

ZadanieModel
Zadania tekstowe: agent czatu, rozbiór wydatków, kategorie, tagi, projekty, podział, wglądy, historie, portfelgpt-4o-mini · gpt-4o · gpt-4.1
Rozpoznawanie paragonów (wizja)gpt-4o-mini · gpt-4o · gpt-4.1
Głos → tekst (transkrypcja)whisper-1
Podpowiedzi semantyczne (projekty, tagi)OpenAI embeddings