Jak działa wyszukiwarka w Twoich rozmowach
Wpisujesz pytanie, dostajesz odpowiedź w dwie sekundy. Pod spodem trzech detektywów czyta Twoje rozmowy równolegle — bez kodu, bez wzorów, z obrazkami.
Dwa lata rozmów to około dwunastu tysięcy wiadomości. Z kimś bliskim, z byłym, z przyjaciółką. Chcesz zapytać: kiedy zaczęły się kłótnie, o czym rozmawialiśmy najczęściej, kiedy przestało jej zależeć — i nagle okazuje się, że nie da się tego wyszukać. Bo nie wiesz, jakich dokładnie słów użyć.
01/Problem
Dlaczego Ctrl+F nie znajduje tego, czego szukasz?
Ctrl+F porównuje ciągi znaków, a Ty szukasz znaczenia. Wpisujesz „smutek”, a rozmowa o smutku nigdy nie użyła tego słowa, więc wyszukiwarka zwraca zero wyników mimo że materiał leży dokładnie tam, gdzie go szukasz.
Słowo „smutek” może nigdy nie paść, a mimo to cała rozmowa jest o smutku. Ktoś napisał „nie chce mi się dziś nic”, „leżę i patrzę w sufit”, „nawet kawa mi nie smakuje”. Klasyczna wyszukiwarka w Messengerze przeleci przez to obojętnie, bo szuka ciągu znaków — jeśli chcesz sprawdzić, jak daleko sięga tamten mechanizm, opisaliśmy go osobno w poradniku o szukaniu wiadomości na Messengerze.
Wyszukiwarka PodTeksT szuka inaczej: porównuje sens Twojego pytania z sensem każdego fragmentu rozmowy. Ten tekst tłumaczy, jak to robi — bez wzorów, za to z rysunkami.
12
kroków
3
detektywów
768
liczb w odcisku
~2 s
od Entera do wyniku
02/Wejście
Zanim cokolwiek zacznie szukać
Pierwsze trzy kroki dzieją się, zanim program dotknie choćby jednej wiadomości. Chodzi w nich o jedno: zrozumieć, o co właściwie pytasz.
Krok 1: Piszesz pytanie zwykłym językiem
Tak jak do wyszukiwarki internetowej. Może być całe zdanie, może być jedno słowo: „czułam się samotna”, „kiedy zerwaliśmy”, „rozmowy z mamą”, „obietnice”. Cokolwiek.
Zwykłe pole tekstowe. Wciskasz Enter — i zaczyna się reszta tego artykułu. Krok 2: Program czyta pytanie i zgaduje intencję
Zanim zacznie szukać, zadaje sobie cztery pytania o Twoje pytanie:
- Pytasz o konkretną osobę? Imię w zapytaniu — „z Marią”, „o tacie”.
- Pytasz o konkretny czas? „Kiedy”, „zeszłego lata”, „w marcu 2023”.
- Pytasz o uczucia? Smutek, złość, strach, radość.
- Cytujesz coś dosłownie? Tekst w cudzysłowie.
Cztery szybkie sprawdzenia. Tu wyszło jedno trafienie: pytanie o emocję. Program to zapamiętuje na potem. Krok 3: W wersji premium AI rozszerza pytanie
Twoje pytanie idzie najpierw do modelu językowego, który je rozbudowuje. Wpisałeś „zdrada” — wraca lista: oszukała mnie, kłamstwo, niewierność, zdradził, romans, zakochał się w innej.
Po co? Bo w prawdziwej rozmowie prawie na pewno nikt nie napisał słowa „zdrada”. Ludzie piszą „zdradziłaś mnie”, „było coś z innym”, „kłamała mi w żywe oczy”.
Jedno słowo wchodzi, kilkanaście wariantów wychodzi. Każdy z nich zwiększa szansę na trafienie.
03/Rdzeń
Odciski znaczeń i trzech detektywów
Tu dzieje się właściwe szukanie. Najpierw pytanie zamienia się w liczby, potem trzy zupełnie różne metody przeczesują rozmowy równolegle, a na końcu porównują listy.
Krok 4: Tekst zamienia się w odcisk palca znaczenia
Model AI zamienia każdy tekst w ciąg 768 liczb, który opisuje jego znaczenie. Teksty o podobnym sensie dostają bardzo podobne ciągi. „Kocham cię” i „bardzo mi na tobie zależy” mają odciski niemal identyczne. „Kocham cię” i „idę po chleb” — zupełnie różne.
Kolorowe kwadraciki to liczby. Każdy fragment rozmowy dostaje ich 768 — po jednej na wymiar znaczenia. Krok 5: Szukanie najbliższych sąsiadów w krainie znaczeń
Twoje rozmowy mają odciski policzone wcześniej, w tle, przy imporcie. Teraz program bierze odcisk pytania i porównuje go z każdym odciskiem fragmentu. Fragmenty leżące najbliżej — to odpowiedź.
To jest serce całego mechanizmu i powód, dla którego nie musisz trafić w słowa. Wystarczy, że pytanie i fragment mówią o tym samym.
Jasny punkt to Twoje pytanie. Fioletowe kropki wokół — fragmenty o podobnym znaczeniu. Im bliżej, tym trafniej. Krok 6: Dwaj pozostali detektywi pracują równolegle
Odcisk znaczenia nie wystarcza. Czasem szukasz konkretnego słowa — imienia, wulgaryzmu, daty. Dlatego w tym samym momencie pracują jeszcze dwaj inni:
Detektyw od słów szuka dokładnych trafień[1]. Wie, że obietnica, obiecuję, obiecałem i obiecała to jedno słowo w różnych formach — polszczyzna ma siedem przypadków, więc bez tego wyszukiwarka byłaby bezradna[2]. Wybacza też literówki.
Detektyw od skojarzeń zna tysiące powiązań między słowami[3]. Jeśli ktoś napisał „zawiodłaś mnie”, a Ty pytasz o „zdradę” — on połączy jedno z drugim.
Trzy pary oczu, trzy różne mocne strony. Każdy dostaje to samo pytanie. Krok 7: Głosowanie przy jednym stole
Każdy detektyw ma własną listę. Program sprawdza, które fragmenty są wysoko u wszystkich trzech[4]. Fragment drugi u jednego, trzeci u drugiego i pierwszy u trzeciego wygrywa. Fragment genialny u jednego, a u pozostałych daleko — przegrywa.
Trzy listy, jeden ranking. Kto jest wysoko u wszystkich, ten wygrywa.
Nie musisz pamiętać słów. Wystarczy, że pamiętasz, o co Wam wtedy chodziło.
04/Szlif
Pięć kroków, żeby wynik nie był głupi
Surowy ranking to dopiero materiał. Zostało dostrojenie do intencji, druga runda dla trudnych pytań, filtr powtórzeń, ocena AI i wreszcie sposób pokazania wyniku.
Krok 8: Dostrojenie do tego, o co pytałeś
Pamiętasz intencję rozpoznaną w kroku drugim? Teraz wchodzi do gry:
- Pytanie o uczucia — fragmenty z mocnymi emocjami dostają premię.
- Pytanie o konkretny czas — rozmowy spoza okresu wypadają z listy.
- Pytanie o osobę — rozmowy z nią idą w górę.
Skąd program wie, że fragment jest smutny? Liczy to osobny moduł, który mierzy ton wiadomości po polsku — z narzekaniem, wulgaryzmami i XD włącznie. Opisaliśmy go w tekście jak mierzymy sentyment bez chmury.
Smutne fragmenty awansują o trzydzieści procent. Neutralne zostają tam, gdzie były. Krok 9: Druga runda dla trudnych pytań
Niektóre pytania są z natury rozmyte. „Obietnica” pada w dziesiątkach rozmów i trudno orzec, która jest tą właściwą. Program robi wtedy coś sprytnego: bierze pięć najlepszych wyników, wyciąga z nich słowa, które się powtarzają, i szuka jeszcze raz — już z bogatszym zapytaniem.
Program podpatruje własne wyniki, dopisuje sobie słowa i pyta drugi raz. Krok 10: Filtr różnorodności
Dziesięć najtrafniejszych wyników to bardzo często dziesięć fragmentów jednej rozmowy albo dziesięć wariantów tego samego zdania. Program świadomie miesza: zamiast najwyższych ocen bierze wyniki, które różnią się między sobą[5].
Lepiej zobaczyć pięć różnych momentów niż pięć wariantów tego samego zdania. Krok 11: W wersji premium AI ocenia wyniki jeszcze raz
Pięćdziesiąt najlepszych fragmentów trafia do modelu Google, który czyta każdy razem z pytaniem i wystawia ocenę trafności w skali od 1 do 10. Wynik końcowy to mieszanka: 40 procent głosowania detektywów i 60 procent oceny AI.
To ostatni etap, na którym łapane są polskie niuanse: narzekanie, ironia, memy, wulgaryzm w roli przecinka. Ocena zostaje jednak przypięta do konkretnych wiadomości — i to jest różnica, którą rozbieramy w tekście w czym jesteśmy lepsi od ChatGPT.
Każdy fragment dostaje ocenę od 1 do 10. Lista układa się od nowa. Krok 12: Pokazanie wyniku z podświetleniem
Dla każdego wyniku program wybiera najtrafniejsze zdanie z kontekstem wokół i podświetla pasujące słowa. Rozumie przy tym odmianę: pytałeś o „obietnicę”, podświetli też „obiecałem”.
Jaśniejsze podświetlenie to trafienie dokładne, ciemniejsze — skojarzeniowe.
05/Prywatność
Czy moje rozmowy trafiają do AI?
Surowy eksport nie trafia nigdzie: plik jest parsowany w Twojej przeglądarce. Do modelu Google idą pseudonimizowane zapytania i fragmenty potrzebne do policzenia odcisków znaczenia, a w wersji premium maksymalnie 50 krótkich fragmentów do końcowej oceny trafności.
To pytanie zadawane najczęściej i całkowicie słusznie. Odpowiedź bez marketingowej mgły, punkt po punkcie:
06/Podsumowanie
I to wszystko
Pod spodem: tysiące operacji na sekundę, trzy różne modele, kilka sprytnych sztuczek z lat sześćdziesiątych i dziewięćdziesiątych oraz sporo pracy nad polską morfologią. Z Twojej strony: wpisujesz, wciskasz Enter, czytasz.
Jeśli chcesz zobaczyć, co jeszcze da się wyczytać z jednej historii rozmowy poza wyszukiwaniem, zacznij od przewodnika po analizie czatu. A jeśli masz już wyeksportowany plik — wrzuć go w lobby i zadaj pierwsze pytanie.
Źródła i podstawy metod
- [1]Robertson, S. i Zaragoza, H. (2009). The Probabilistic Relevance Framework: BM25 and Beyond. Foundations and Trends in Information Retrieval. Podstawa detektywa od słów. źródło
- [2]Woliński, M., Miłkowski, M., Ogrodniczuk, M. i Przepiórkowski, A. (2012). PoliMorf: a (not so) new open morphological dictionary for Polish. Proceedings of LREC 2012, 860–864. Słownik odmiany, z którego korzysta rozpoznawanie form. źródło
- [3]Formal, T., Piwowarski, B. i Clinchant, S. (2021). SPLADE: Sparse Lexical and Expansion Model for First Stage Ranking. Proceedings of SIGIR 2021, 2288–2292. Podstawa detektywa od skojarzeń. źródło
- [4]Cormack, G. V., Clarke, C. L. A. i Buettcher, S. (2009). Reciprocal rank fusion outperforms condorcet and individual rank learning methods. Proceedings of SIGIR 2009, 758–759. Metoda głosowania trzech list. źródło
- [5]Carbonell, J. i Goldstein, J. (1998). The use of MMR, diversity-based reranking for reordering documents and producing summaries. Proceedings of SIGIR 1998, 335–336. Podstawa filtru różnorodności. źródło
Najczęstsze pytania
Czy muszę użyć dokładnie tych samych słów, co w rozmowie?
Ile trwa jedno wyszukiwanie?
Czym różni się wersja premium?
★ OGŁOSZENIE REDAKCYJNE ★
Zadaj pytanie swoim rozmowom
Surowy import zostaje w Twojej przeglądarce · AI dostaje tylko pseudonimizowane fragmenty