Programista miał dość Google. Wydał 10 dolarów i w jeden weekend stworzył własną wyszukiwarkę


Programista miał dość Google. Wydał 10 dolarów i w jeden weekend stworzył własną wyszukiwarkę

Wielkie wyszukiwarki internetowe wymagają potężnej infrastruktury, ogromnych baz danych i milionowych budżetów. Alex Morley-Finch z Nottingham postanowił jednak podejść do tematu zupełnie inaczej. Brytyjski programista zbudował własną, lokalnie działającą wyszukiwarkę, która zindeksowała ponad 560 tys. stron. Na wynajem GPU w chmurze wydał około 10 dolarów.

Projekt powstał przede wszystkim z myślą o odnajdywaniu niewielkich witryn, blogów, stron domowych, niezależnych magazynów i autorskich projektów. Morley-Finch chciał stworzyć katalog internetu, w którym łatwiej trafić na treści publikowane przez małych twórców.

Do budowy systemu wykorzystał własne narzędzie open source o nazwie Marlin. Program napisany w TypeScript został udostępniony na GitHubie na licencji MIT. Całość może działać lokalnie i potrzebuje mniej niż 1 GB przestrzeni dyskowej.

Największe koszty pojawiły się podczas tworzenia indeksu. Programista wynajął GPU w chmurze, aby przyspieszyć pracę systemu. Rachunek wyniósł około 10 dolarów, a efekt końcowy przekroczył 560 tys. zindeksowanych stron.

AI pomogło, ale nie wszystko poszło zgodnie z planem

Marlin wykorzystuje kilka elementów pracujących razem. Robot pobiera strony i podąża za znajdującymi się na nich odnośnikami. Następnie lokalny model językowy analizuje treść i tworzy dla każdej witryny zestaw informacji opisujących jej zawartość.

Programista szybko przekonał się jednak, że sztuczna inteligencja potrafi wygenerować więcej chaosu niż porządku. Model stworzył aż 671 kategorii oraz około 121 tys. tagów. Ponad połowa tagów pojawiła się tylko raz, a część kategorii była przypisana do pojedynczych stron.

Morley-Finch musiał więc przygotować dodatkowe narzędzie, które łączyło podobne kategorie i porządkowało wygenerowane oznaczenia.

Internet okazał się inny, niż zakładał

Pierwsza wersja indeksatora również przyniosła niespodziankę. Zamiast dominacji małych, niezależnych witryn ponad 90 proc. zebranych materiałów pochodziło z dużych serwisów korporacyjnych i dokumentacji technicznej.

Twórca nie zdecydował się na proste blokowanie niechcianych adresów. Marlin nadaje stronom priorytety podczas indeksowania. Witryny bardziej odpowiadające założeniom projektu trafiają wyżej w kolejce, a pozostałe są przetwarzane później.

System otrzymał także interfejs internetowy i API. Dzięki nim można monitorować pracę wyszukiwarki oraz przeszukiwać utworzony indeks.

10 dolarów wystarczyło na eksperyment

Marlin nie jest konkurencją dla Google czy Binga i nie ma ambicji konkurowania z nimi skalą. Projekt pokazuje jednak coś znacznie bardziej interesującego: stworzenie własnego, wyspecjalizowanego indeksu internetu jest dziś dostępne dla pojedynczego programisty.

Morley-Finch przyznaje, że obecna wersja wymaga jeszcze pracy. Jego zdaniem kilka dni poświęconych na poprawki może wystarczyć, aby uzyskać znacznie lepsze rezultaty.

Najciekawsze w całym eksperymencie jest połączenie taniej infrastruktury, otwartego oprogramowania i lokalnego modelu AI. Jeszcze niedawno budowa wyszukiwarki indeksującej setki tysięcy stron kojarzyła się z projektem dla dużej firmy. Dziś jeden programista może zrobić własną wersję w weekend, a rachunek za wykorzystanie chmury zamknąć w kwocie, którą łatwo wydać na obiad.

Spodobało Ci się? Podziel się ze znajomymi!

Pokaż / Dodaj komentarze do:

Programista miał dość Google. Wydał 10 dolarów i w jeden weekend stworzył własną wyszukiwarkę
 0