Inżynier NLP: umiejętności, projekty i ścieżka kariery

Inżynier NLP tworzy systemy, które odczytują, klasyfikują, przeszukują i generują język ludzki: chatboty, narzędzia do ekstrakcji danych z dokumentów, wyszukiwanie semantyczne oraz asystenci oparci na dużych modelach językowych. Ta praca ma pewien specyficzny charakter. Znaczna część zadań dotyczy języka polskiego, który charakteryzuje się bogatą fleksją i stanowi wyzwanie dla narzędzi zaprojektowanych z myślą o języku angielskim, dlatego lokalna wiedza specjalistyczna stanowi prawdziwą zaletę.

Czym zajmuje się inżynier NLP w dobie dużych modeli językowych (LLM)?

Jeszcze kilka lat temu praca inżyniera NLP polegała na szkoleniu niestandardowych modeli do konkretnych zadań: klasyfikacji tekstów, rozpoznawania nazwanych jednostek oraz wykrywania nastroju. Dzisiaj znaczna część pracy opiera się na gotowym modelu językowym i skupia się na wszystkim, co się z nim wiąże. Projektuje się systemy generowania wzbogaconego o wyszukiwanie (RAG), decyduje, kiedy dopracowanie modelu jest warte poniesionych kosztów, tworzy zestawy ewaluacyjne, mierzy halucynacje i buduje zabezpieczenia, które powstrzymują model przed udzielaniem odpowiedzi, których nie powinien udzielać.

Klasyczne NLP nie zniknęło. Mały klasyfikator dostrojony na podstawie kilku tysięcy oznaczonych przykładów jest często tańszy, szybszy i bardziej przewidywalny niż wywoływanie dużego modelu dla każdego z milionów dokumentów. Dobry inżynier NLP zna oba światy i potrafi wyjaśnić właścicielowi produktu, dlaczego w przypadku jednego zadania właściwym wyborem jest mniejszy model, a w przypadku innego – duży.

Polskie ogłoszenia o pracę odzwierciedlają tę różnorodność. Wymagają doświadczenia w zakresie transformatorów, głębokiego uczenia się i modeli językowych (LLM), ale także umiejętności doprowadzenia modelu od etapu prototypu do wdrożenia produkcyjnego oraz monitorowania i oceny jego działania w tym środowisku.

Dlaczego język polski utrudnia przetwarzanie języka naturalnego (NLP)?

Jest to aspekt pracy, o którym przewodniki w języku angielskim nigdy nie wspominają, a który kształtuje codzienną pracę. Polskie rzeczowniki zmieniają się w siedmiu przypadkach, przymiotniki zgadzają się pod względem rodzaju i liczby, a czasowniki wyrażają aspekt i osobę. Pojedyncze słowo może występować w kilkunastu formach. Kolejność wyrazów jest znacznie swobodniejsza niż w języku angielskim, więc to samo znaczenie można wyrazić na kilka sposobów.

Konsekwencje praktyczne są konkretne. Wyszukiwanie słów kluczowych zawodzi, gdy użytkownik wpisze jedną formę, a dokument zawiera inną, dlatego lematyzacja ma znaczenie, a polskie zespoły korzystają z analizatorów morfologicznych, takich jak Morfeusz, opracowany w IPI PAN. Tokenizatory stworzone dla języka angielskiego dzielą polskie słowa na więcej części, więc ten sam tekst generuje więcej tokenów i szybciej wypełnia kontekst modelu. Nazwiska osób, nazwy firm i miejsc również ulegają deklinacji, co komplikuje rozpoznawanie encji i anonimizację.

Dlatego Polska posiada własny ekosystem modeli i benchmarków. Wśród modeli reprezentacji znajdują się HerBERT, stworzony przez naukowców z Allegro, oraz polski RoBERTa z OPI PIB.

Wśród dużych modeli językowych dwie rodziny stworzone z myślą o języku polskim to Bielik, opracowany przez fundację SpeakLeash we współpracy z ACK Cyfronet AGH, oraz PLLuM, opracowany na zlecenie Ministerstwa Cyfryzacji. Modele porównuje się w ramach testów porównawczych, takich jak KLEJ, a konkurs PolEval wyznacza wspólne zadania dotyczące języka polskiego. Znajomość tego ekosystemu oraz umiejętność rozpoznania, kiedy polski model osiąga lepsze wyniki niż model globalny na danych danego pracodawcy, to cechy, na które zwracają uwagę rekruterzy.

Nad jakimi projektami pracują inżynierowie NLP?

Największymi pracodawcami dla osób posiadających tę umiejętność są banki, ubezpieczyciele, firmy telekomunikacyjne i e-commerce, a także firmy programistyczne i konsultingowe współpracujące z nimi. Typowe projekty obejmują:

  • Kierowanie i klasyfikowanie wiadomości od klientów, na przykład sortowanie skarg i e-maili według tematu i pilności, aby szybciej trafiały do odpowiedniego zespołu.
  • Wydobywanie danych z dokumentów, takich jak umowy, faktury, wnioski i dokumenty tożsamości, często w połączeniu z OCR.
  • Analizy w centrach obsługi klienta, gdzie rozpoznawanie mowy przekształca rozmowy w tekst, który jest następnie klasyfikowany i podsumowywany.
  • Wyszukiwanie i dane produktowe w handlu elektronicznym, od rozumienia zapytań wpisanych w każdej możliwej formie języka polskiego po normalizację atrybutów produktów.
  • Wewnętrzne systemy wsparcia wiedzy, które odpowiadają na pytania pracowników w oparciu o regulacje, procedury i dokumentację, zazwyczaj oparte na technologii RAG.
  • Anonimizacja orzeczeń sądowych, dokumentacji medycznej lub danych klientów przed analizą, w przypadkach, w których RODO (polskie określenie na RODO) wymaga zachowania ostrożności w odniesieniu do nazwisk, adresów i numerów PESEL.

Sektor publiczny również stanowi obszar o rosnącym znaczeniu. Ministerstwo Cyfryzacji testuje PLLuM w asystentach, które pomagają obywatelom w poruszaniu się po przepisach i procedurach urzędowych.

Jakich umiejętności i narzędzi wymagają ogłoszenia o pracę dla inżynierów NLP?

Znajomość języka Python jest niezbędna dla inżyniera NLP. W polskich ogłoszeniach wielokrotnie wymienia się PyTorch, Hugging Face Transformers, spaCy, NLTK i gensim, a także sentence-transformers lub inne modele osadzeń służące do wyszukiwania semantycznego. Praca z modelami LLM wymaga doświadczenia w zakresie interfejsów API modeli, modeli open source (w ogłoszeniach wymieniane są Llama, Mistral, Qwen i DeepSeek), frameworków RAG, wektorowych baz danych oraz metod dostrajania modeli.

Umiejętności związane z wdrażaniem do produkcji są wymieniane niemal tak samo często jak te związane z modelowaniem: Docker, środowiska GPU, wdrażanie modeli w AWS lub Azure oraz monitorowanie ich po uruchomieniu. Ogłoszenia o pracy na tym stanowisku często wspominają o ścisłej współpracy z inżynierami MLOps, a jeśli chcesz zrozumieć tę stronę pracy, przeczytaj o zawodzie inżyniera MLOps.

U podstaw tych narzędzi leży matematyka: statystyka, prawdopodobieństwo oraz na tyle algebry liniowej, by zrozumieć osadzenia i mechanizm uwagi. Na osobną wzmiankę zasługuje kwestia oceny. Wybór wskaźników, stworzenie zbioru testowego odzwierciedlającego rzeczywiste pytania polskich użytkowników oraz regularne przeprowadzanie testów regresji odpowiedzi generowanych przez model – to właśnie odróżnia wersję demonstracyjną od systemu, na którym bank może polegać.

Jak zostać inżynierem NLP?

Nie ma żadnej licencji ani formalnego certyfikatu. W klasyfikacji KZiS nie ma kodu o nazwie NLP; najbliższe pozycje to 251908, specjalista ds. rozwoju sztucznej inteligencji (AI development specialist), oraz 251905 dla specjalistów ds. rozpoznawania mowy. Pracodawcy zazwyczaj oczekują dyplomu z informatyki, matematyki, statystyki lub inżynierii danych, a wiele ofert pracy dla początkujących wymaga co najmniej rocznego doświadczenia jako data scientist z realizowanymi projektami z zakresu NLP.

Istnieje kilka ścieżek prowadzących do roli inżyniera NLP. Analitycy danych wkraczają w tę dziedzinę, specjalizując się w tekstach, a programiści backendowi w języku Python – poprzez pracę nad aplikacjami opartymi na modelach LLM. Absolwenci kognitywistyki lub lingwistyki komputerowej wnoszą dogłębne zrozumienie języka, ale muszą uzupełnić je o umiejętności inżynierskie. Stopień doktora pomaga w laboratoriach badawczych, jednak firmy produktowe zatrudniają głównie na podstawie umiejętności.

Przekonujące portfolio na rynek polski mogłoby obejmować dostrojenie modelu HerBERT na publicznym polskim zbiorze danych, system RAG oparty na polskich tekstach prawnych lub administracyjnych wraz z odpowiednim zestawem ewaluacyjnym oraz porównanie modeli Bielik lub PLLuM z modelem globalnym w ramach tego samego zadania. Udział w zadaniu PolEval pozwala uzyskać wynik, który inni mogą zweryfikować.

Jak wygląda proces rekrutacji?

Rozmowa kwalifikacyjna dla inżyniera NLP zazwyczaj łączy w sobie zagadnienia z zakresu kodowania, teorii uczenia maszynowego oraz projektowania systemów. Typowe pytanie projektowe brzmi na przykład: „Zbuduj asystenta, który odpowiada na pytania dotyczące wewnętrznych regulaminów firmy, a następnie wyjaśnij, w jaki sposób zmierzyłbyś jego jakość i zapobiegłbyś wymyślaniu przez niego odpowiedzi”. Osoby przeprowadzające rozmowę chcą usłyszeć o podziale na fragmenty, wyszukiwaniu, zmianie rankingu, ocenie i kosztach, a nie tylko o nazwie modelu.

Wiele firm pyta również szczegółowo o poprzednie projekty: jak wyglądały dane, w jaki sposób zostały oznaczone, jaki poziom odniesienia udało się przekroczyć oraz co poszło nie tak podczas wdrażania. W większości ofert wymagana jest znajomość języka angielskiego na poziomie B2 lub wyższym, a niektóre ogłoszenia dotyczące produktów w języku polskim równie wysoko cenią dobrą znajomość pisemnego języka polskiego. Jeśli Twoje doświadczenie ma głównie charakter akademicki, przeredaguj swoje CV informatyczne tak, aby skupiało się na wynikach i pracy produkcyjnej, a nie wyłącznie na publikacjach.

Wynagrodzenie inżyniera NLP: co ma znaczenie?

Jest to stanowisko specjalistyczne w branży IT, więc wynagrodzenie od samego początku przewyższa średnią krajową, a doświadczeni inżynierowie zajmujący się produkcyjnymi projektami z wykorzystaniem modeli LLM zarabiają znacznie powyżej tej średniej. Ofert pracy na poziomie podstawowym jest mniej niż w przypadku ogólnego tworzenia oprogramowania, co sprawia, że najniższe wynagrodzenia nie zbliżają się do krajowej płacy minimalnej.

Najważniejszymi czynnikami wpływającymi na wynagrodzenie są udokumentowane doświadczenie w pracy z modelami LLM i RAG w środowisku produkcyjnym, umiejętność samodzielnego zarządzania całym systemem, a nie tylko samym modelem, oraz umowy B2B, które dominują w firmach programistycznych i konsultingowych. Stanowiska badawcze i akademickie są zazwyczaj gorzej opłacane niż w firmach produktowych, ale dają dostęp do dużych zasobów obliczeniowych i możliwości publikacji. Specjalizacja w przetwarzaniu języka polskiego podnosi Twoją wartość w oczach pracodawców, których klienci znajdują się w Polsce, podczas gdy międzynarodowe firmy produktowe przywiązują większą wagę do doświadczenia w pracy z językiem angielskim.

Z jakimi zagrożeniami musi radzić sobie inżynier NLP?

Modele językowe zawodzą w sposób, który łatwo przeoczyć. Z całą pewnością podają błędne odpowiedzi, ujawniają informacje z dokumentów, których użytkownik nie powinien widzieć, i można nimi manipulować poprzez wstrzyknięcie podpowiedzi ukrytej w dokumencie lub na stronie internetowej. Projektowanie kontroli dostępu do wyszukiwania danych oraz testowanie asystenta pod kątem odporności na ataki to zadania, które wykonuje się wspólnie z inżynierem ds. bezpieczeństwa, a w sektorach podlegających regulacjom jest to warunek uruchomienia systemu.

Wymogi prawne stanowią dodatkowe utrudnienie. RODO ogranicza zakres danych osobowych, które można przekazywać do zewnętrznego modelu, oraz okres ich przechowywania. Unijna ustawa o sztucznej inteligencji wprowadza obowiązki w zakresie przejrzystości i dokumentacji, które zależą od sposobu wykorzystania systemu sztucznej inteligencji. W praktyce inżynier NLP zatrudniony w polskim banku lub instytucji publicznej poświęca znaczną część czasu na dokumentację, tworzenie schematów przepływu danych oraz rozmowy z zespołami prawnymi i ds. zgodności z przepisami.

Czy NLP ma przyszłość jako ścieżka kariery?

Popyt na inżynierów NLP, którzy potrafią przekształcić modele językowe w niezawodne produkty, stale rośnie, co odzwierciedla oficjalna klasyfikacja zawodów, zawierająca odrębne kody dla specjalistów ds. sztucznej inteligencji i uczenia maszynowego. Charakter tej pracy ulega jednak ciągłym zmianom. Zadania, które kiedyś wymagały stworzenia modelu dostosowanego do konkretnych potrzeb, takie jak prosta klasyfikacja czy streszczanie, mogą obecnie być realizowane przez model ogólnego przeznaczenia przy użyciu odpowiedniego promptu.

Ta zmiana wywiera presję na stanowiska oparte wyłącznie na pisaniu promptów. Trwałe umiejętności to jakość danych, ocena, projektowanie systemów oraz wiedza na temat tego, gdzie model zawodzi w języku polskim i dlaczego. Osoby łączące te umiejętności z doświadczeniem produkcyjnym należą do najtrudniejszych do pozyskania profili w polskiej branży IT. Jeśli zamierzasz przejść do tej dziedziny z analizy danych, porównaj ją najpierw z zawodem data scientist.

Często zadawane pytania

Czy potrzebuję wykształcenia lingwistycznego, aby zostać inżynierem NLP?

Nie. Większość inżynierów NLP wywodzi się z kierunków informatyki, matematyki lub nauki o danych. Znajomość językoznawstwa jest pomocna, zwłaszcza w zakresie polskiej morfologii, wytycznych dotyczących adnotacji oraz analizy błędów, a absolwenci kognitywistyki lub lingwistyki komputerowej posiadają ją w naturalny sposób. Pracodawcy zatrudniają jednak głównie ze względu na umiejętności programowania, uczenia maszynowego oraz zdolność do wdrażania i oceny modeli w środowisku produkcyjnym.

Jaka jest różnica między inżynierem NLP a analitykiem danych?

Analityk danych pracuje z wieloma rodzajami danych i często skupia się na analizie oraz modelowaniu w kontekście zagadnień biznesowych. Inżynier NLP specjalizuje się w tekście i mowie i zazwyczaj zajmuje się bardziej inżynieryjnymi zadaniami: budowaniem potoków przetwarzania, wdrażaniem modeli językowych, projektowaniem wyszukiwania oraz oceną odpowiedzi w środowisku produkcyjnym. W mniejszych polskich firmach jedna osoba może pełnić obie role, dlatego warto zapoznać się z zakresem obowiązków, a nie tylko z nazwą stanowiska.

Czy potrzebuję stopnia doktora, aby pracować w dziedzinie NLP?

W przypadku większości stanowisk nie jest to konieczne. Tytuł doktora przydaje się w laboratoriach badawczych oraz w zespołach, które uczą modele językowe od podstaw, gdzie liczą się publikacje i dogłębna wiedza teoretyczna. Firmy produktowe, banki i domy oprogramowania zatrudniają głównie na podstawie umiejętności praktycznych: znajomości języka Python, modeli transformatorowych, RAG, a także doświadczenia w ocenie i pracy w środowisku produkcyjnym. Solidne portfolio z wymiernymi wynikami może otworzyć w tych firmach te same drzwi, co tytuł doktora.

Jakie polskie modele językowe powinienem znać?

Warto zapoznać się z modelami HerBERT i polską wersją RoBERTa w zakresie klasyfikacji, rozpoznawania encji i wektorów osadzenia, a także z rodzinami dużych modeli językowych Bielik i PLLuM. Dowiedz się, jak wypadają one w porównaniu z modelami światowymi w zadaniach dotyczących języka polskiego, korzystając z testów porównawczych, takich jak KLEJ i PolEval. Umiejętność uzasadnienia, kiedy model polski jest lepszym wyborem w przypadku twoich danych, stanowi mocny atut podczas rozmów kwalifikacyjnych.

Czy przetwarzanie języka naturalnego (NLP) w języku polskim to umiejętność niszowa?

To raczej specjalizacja niż nisza. Każdy bank, ubezpieczyciel, operator telekomunikacyjny i sklep internetowy obsługujący polskich klientów ma do czynienia z tekstami w języku polskim – od skarg po umowy. Globalne modele z roku na rok radzą sobie coraz lepiej z językiem polskim, ale odmiana, koszt tokenizacji oraz lokalny język prawniczy nadal powodują błędy. Inżynierowie potrafiący mierzyć i naprawiać te błędy są cenieni przez pracodawców, których klienci znajdują się w Polsce.

„,
„occupationLocation”: {
„@type”: „Country”,
„name”: „Polska”
},
„umiejętności”: „Python, PyTorch, Hugging Face Transformers, spaCy, NLTK, gensim, sentence-transformers, duże modele językowe, generowanie wspomagane wyszukiwaniem (RAG), wektorowe bazy danych, dostrajanie modeli, ocena modeli, morfologia języka polskiego i lemmatyzacja, Docker, środowiska GPU, AWS lub Azure, statystyka”,
„obowiązki”: „Tworzenie rozwiązań opartych na NLP i LLM; projektowanie systemów RAG; dostrajanie i ocena modeli językowych; przygotowywanie i adnotowanie zbiorów danych; wdrażanie i monitorowanie modeli w środowisku produkcyjnym; anonimizacja danych osobowych w tekstach; współpraca z zespołami MLOps, ds. bezpieczeństwa i zgodności z przepisami”,
„wymagania-wykształcenie”: „Zazwyczaj dyplom z informatyki, matematyki, statystyki, inżynierii danych lub lingwistyki komputerowej; nie jest wymagana żadna formalna licencja”,
„experienceRequirements”: „Zazwyczaj co najmniej rok doświadczenia na stanowisku analityka danych lub inżyniera ML przy projektach z zakresu NLP; na stanowiskach wyższego szczebla wymagane jest doświadczenie w pracy produkcyjnej z modelami LLM i RAG”,
„occupationalCategory”: „251908 Specjalista ds. rozwoju sztucznej inteligencji (KZiS)”
}

👤E

Oprac. 👤 ePraceo.pl

Redakcja portalu ePraceo.pl. Tutaj publikujemy nowinki z rynku pracy i materiały poradnikowe dla kandydatów i rekruterów. Naszą misją jest wspieranie podkarpackich firm w poszukiwaniu najlepszych kandydatów z regionu. Nasz zespół redakcyjny tworzą specjaliści z działu HR, employer brandingu i skutecznej komunikacji na linii pracodawca-pracownik. Publikujemy materiały oparte o ekspercką wiedzę, rzetelny research i najnowsze trendy z rynku pracy.