SpeakLeash – projekt mający na celu rozwój uczenia maszynowego w języku polskim

W dzisiejszych czasach sztuczna inteligencja staje się coraz bardziej powszechna, a jej rozwój jest niezwykle ważny w wielu dziedzinach. Jednym z kluczowych elementów w rozwijaniu uczenia maszynowego jest odpowiednia baza danych, na której będzie ono opierało swoje działanie. 

Przedstawienie projektu SpeakLeash

Projekt SpeakLeash /ˈspix.lɛʂ/, zwany również Spichlerzem, ma na celu stworzenie zestawu danych o rozmiarze co najmniej 1 TB, składającego się z różnorodnych tekstów w języku polskim. Jest to projekt otwarty (open science / open source), co oznacza, że każdy może do niego dołączyć i wziąć w nim udział.

Dashboard Spichlerza, źródło: https://speakleash.streamlit.app/

Główny cel projektu

Spichlerz powstał, aby umożliwić badania nad uczeniem maszynowym oraz stworzyć na podstawie zebranych danych generatywnych, wstępnie wytrenowanego modelu transformatora działającego w języku polskim. To z kolei pozwoli na rozwój różnych aplikacji, takich jak chatboty, systemy tłumaczeń czy rozpoznawanie mowy. Dzięki temu możliwe będzie również przyspieszenie rozwoju sztucznej inteligencji w Polsce.

Skąd nazwa “Spichlerz”?

Nazwa projektu, Spichlerz, została wybrana ze względu na piękne staropolskie słowo z “rz” i “ch”. Dodatkowo, zdaliśmy sobie sprawę, że będziemy nadawać projektowi globalny charakter, dlatego nazwaliśmy go również SpeakLeash.

Kampania “Niech Bloom przemówi po Polsku”

Projekt rozkwitł w trakcie kampanii “Niech Bloom przemówi po Polsku!”. Podczas jednego z odcinków podcastu nieliniowy.pl Michała Dulemby, Sebastian Kondracki, Chief Innovation Officer w Deviniti został zapytany, kto wpłynie na polonizację Blooma, jeśli nie on. (Przeczytaj więcej w naszym artykule “Niech Bloom Przemówi po Polsku”). 

Po wielu dyskusjach i kontaktach Sebastiana z Hugging Face, a także poszukiwaniach członków zespołu Big Science (twórców Blooma) i rozmowach z nimi, zaczęła nabierać kształtu idea stworzenia grupy roboczej do polonizacji Blooma. Nikt nie spodziewał się, że kampania ta przerodzi się w coś więcej.

Konferencja i wsparcie

Następnym kamieniem milowym była konferencja podsumowująca rok prac Grupy Roboczej ds. Sztucznej Inteligencji (13 września 2022), na którą Sebastian Kondracki został zaproszony do panelu „Nauka dla biznesu, biznes dla nauki” prowadzonego przez dr Dominikę Kaczorowską-Spychalską, dyrektor Centrum Inteligentnych Technologii Wydziału Zarządzania Uniwersytetu Łódzkiego. 

Na początku konferencji przedstawiliśmy naszą koncepcję, aby stworzyć polskiego Language Modela (LLM) za pomocą otwartych danych tekstowych. Dzięki naszej inicjatywie udało nam się skontaktować z Huu Nguyenem, prawnikiem z Nowego Jorku, który pracował przy tworzeniu Blooma i współpracował z EleutherAI, twórcą modelu GPT-NeoX. Współpraca ta okazała się dla nas bardziej owocna, gdyż po przedstawieniu naszej koncepcji, Stella Bidermann, szefowa EleutherAI, zobowiązała się pomóc nam wytrenować polskiego LLM-a, jeśli uda nam się zdobyć 1 TB polskich danych tekstowych.

Projekt “Niech Bloom przemówi po polsku” rozkwita jako SpeakLeash

Po kontakcie z Bidermann zdecydowaliśmy, że nasza inicjatywa “Niech Bloom przemówi po polsku” zostanie przekształcona w projekt SpeakLeash /ˈspix.lɛʂ/, który będzie miał na celu zebranie i udostępnienie otwartych danych tekstowych dla wszystkich dostawców LLM. Zdecydowaliśmy się również zbudować sieć naukowców, firm, ośrodków badawczych i pensjonatów NLP, które będą mogły wykorzystać zebrane przez nas dane do tworzenia dowolnych modeli.

Poza Sebastianem Kondrackim, do projektu zaczęli dołączać również inni pracownicy Deviniti: Mateusz Kuras, Maciej Kondracki i Tomasz Kańka. A także reprezentanci innych firm, Paweł Wilk (współautor nazwy i pierwszych wizualizacji), Marcin Kurzyna (Head of Media Technology & Innovation w Grupie Wirtualna Polska), Waldemar Boszko, Jacek Chwiła, Adrian Gwoździej, Grzegorz Urbanowicz. 

Nawiązanie nieoficjalnego partnerstwa z czołowymi instytucjami naukowymi i organizacjami

Po konferencji DataScience Summit do Spichlerza zgłosił się pan Ryszard Tuora, doświadczony badacz w dziedzinie NLP i pracownik IPI PAN. Wkrótce projekt otrzymał gigabajty otwartych danych przekazanych przez różne instytucje naukowe i organizacje. Ponadto, Spichlerz nawiązał nieoficjalne partnerstwa z takimi organizacjami jak GRAI, EleutherAI, Izbą Łukasiewicza, OPI PIB, PAN, CoHere, QuickChat.

Selekcja źródeł danych dla lepszej jakości i imponujących rezultatów

Dotychczas Spichlerz zgromadził zbiór danych o rozmiarze 184 GB. Projekt ma na celu osiągnięcie rozmiaru 1 TB, a do tego potrzebuje pomocy wolontariuszy i nowych partnerów. Jednakże, Spichlerz stawia na jakość, a nie ilość danych, dlatego bardzo dokładnie selekcjonuje źródła, aby dane były jak najlepszej jakości. Projekt ma na celu osiągnięcie rezultatów równie imponujących, jak w przypadku modeli zagranicznych.

Dashboard Spichlerza, źródło: https://speakleash.streamlit.app/

Opis i indeksowanie danych dla eliminacji błędów i niedopatrzeń

Spichlerz stara się bardzo dokładnie opisywać i indeksować zgromadzone dane, aby wyeliminować powtórki, błędy i niedopatrzenia. Jesteśmy świadomi, że jakość danych wpływa bezpośrednio na jakość modeli uczenia maszynowego opartych na NLP, dlatego stawia na dokładność i precyzję w procesie selekcji i przetwarzania danych.

Tworząc narzędzie wzorujemy się na podobnych projektach, które przyniosły sukces w trenowaniu Blooma i GPT-NeoX, czyli odpowiednio Root/The Catalogue i The Pile. Są to zbiory danych zebrane przez BigScience i EleutherAI, które umożliwiły im wytrenowanie swoich modeli uczenia maszynowego. Idąc krok dalej, staramy się bardzo dokładnie opisywać i indeksować nasze dane, aby wyeliminować powtórki, błędy i niedopatrzenia. 

Struktura Spichlerza

Zestaw ekstraktorów (replikatorów), czyli skryptów programów, które wygenerują dowolny podzbiór danych, np. Wikipedii, bibliotek cyfrowych, projektu Gutenberg PL, Open Subtitles PL, orzecznictwa polskich sądów powszechnych itp., w wybranym miejscu (w postaci skompresowanych danych w formacie JSONL i manifestu).

Struktura Spichlerza, źródło: Deviniti

Dashboard

Na stronie https://speakleash.streamlit.app/ znajduje się  live dashboard. Dzięki niemu powstała możliwość śledzenia na bieżąco postępów naszych prac nad Spichlerzem. Można tam zobaczyć pojemność danych oraz rozbieżności między branżami, ale to nie wszystko! Dashboard umożliwia też zastosowanie filtrów, co pozwala dostosować widok do własnych potrzeb.

Projekt w pigułce

Podsumowując, SpeakLeash to projekt skupiający się w 100% na danych, co oznacza rozwój narzędzi do ewidencji, filtrowania oraz utrzymania zestawów danych.  Jest on agnostykiem technologicznym, co oznacza, że stara się współpracować ze wszystkimi dostawcami modeli LLM. Projekt cechuje się wysokim poziomem dokumentacji, zarówno na poziomie użytkownika, jak i w opisach procesów crowdsourcingowych oraz badań naukowych.  Stara się zapewnić prosty dostęp do swoich narzędzi poprzez API lub po prostu pip install SpeakLeash. Projekt buduje także interdyscyplinarny zespół, nie tylko w obszarze technologii. Jest to próba pokazania polskiej AI open science & source oraz budowania opinii społeczności poprzez procesy mierzenia i uczenia się. 

Jesteście ciekawi co wydarzy się dalej z naszym polskim LLMem? Śledźcie artykuły i portale społecznościowe Deviniti!