
Cerebras opracowuje sprzęt AI w technologii Wafer-Scale oraz zintegrowane oprogramowanie do wysokowydajnego trenowania i wnioskowania modeli. Jej Wafer-Scale Engine zasila system CS-3 oraz Cerebras Inference Cloud, który obsługuje przepływy pracy zgodne z OpenAI API i wdrażanie w środowiskach lokalnych, chmurowych oraz brzegowych. Platforma firmy jest przeznaczona do zastosowań obejmujących obsługę modeli, dostrajanie, trening wstępny, działanie agentów AI w czasie rzeczywistym, genomikę, odkrywanie leków, cyberbezpieczeństwo i wyszukiwanie korporacyjne. Cerebras łączy wyspecjalizowane układy, systemy i oprogramowanie dla organizacji tworzących i obsługujących wymagające obciążenia związane ze sztuczną inteligencją; firma zatrudnia od 501 do 1 000 pracowników.
Inżynier uczenia maszynowego ds. uruchamiania modeli
Uruchamiaj modele transformer na akceleratorach Cerebras AI i optymalizuj ich wydajność podczas inferencji. Twórz ścieżki kompilatora MLIR, poprawiając poprawność modeli, opóźnienia, przepustowość i efektywność wykorzystania pamięci.
Opis
- Wprowadzaj nowe modele do środowiska produkcyjnego: analizuj architektury, konwertuj wagi, implementuj ścieżki wykonania i weryfikuj wyniki względem implementacji referencyjnych.
- Obniżaj modele do sprzętu Cerebras za pomocą dialektów MLIR, transformacji grafów, etapów obniżania i mapowania specyficznego dla sprzętu.
- Obsługuj attention, mnożenie macierzy, normalizację, osadzenia pozycyjne i inne operatory poprzez rozwój kompilatora i jąder.
- Optymalizuj scalanie operatorów, układy tensorów, tiling, alokację pamięci, przesyłanie danych i wykonanie równoległe.
- Poprawiaj wydajność etapów prefill i decode, dostrajając zarządzanie pamięcią podręczną KV, przetwarzanie wsadowe i kwantyzację w celu uzyskania lepszych opóźnień, przepustowości i wykorzystania pamięci.
- Analizuj rozbieżności numeryczne i oceniaj wpływ zmian precyzji oraz optymalizacji kompilatora na dokładność.
- Korzystaj z profilerów, śladów wykonania i liczników sprzętowych, aby lokalizować wąskie gardła obliczeniowe, pamięciowe, komunikacyjne i wykonawcze.
- Współpracuj z zespołami sprzętowymi, kompilatora, jąder i środowiska uruchomieniowego, dostarczając niezawodną obsługę modeli oraz powtarzalne testy wydajności.
Wymagania
- Biegła znajomość programowania w C++ i Pythonie.
- Praktyczne doświadczenie w uruchamianiu i debugowaniu modeli uczenia maszynowego w PyTorch lub porównywalnym frameworku.
- Praktyczne doświadczenie z MLIR, w tym z dialektami, wzorcami przepisywania, etapami transformacji i potokami obniżania.
- Znajomość podstaw kompilatorów, w tym reprezentacji pośrednich, analizy przepływu danych i generowania kodu.
- Zrozumienie architektur transformerów, mechanizmów attention, operacji tensorowych i precyzji numerycznej.
- Doświadczenie w profilowaniu i optymalizacji obciążeń na GPU lub innych akceleratorach AI.
- Umiejętność diagnozowania problemów z poprawnością i wydajnością w kodzie modelu, wyniku kompilatora, jądrach i środowisku uruchomieniowym.
- Doświadczenie z inferencją dużych modeli językowych, w tym GQA, attention z przesuwanym oknem, mixture-of-experts, buforowaniem KV i dekodowaniem spekulatywnym.
- Doświadczenie z FP16, BF16, FP8 lub kwantyzacją niskobitową oraz znajomość kompromisów między dokładnością a wydajnością.
- Doświadczenie w tworzeniu jąder dla akceleratorów lub specyficznych sprzętowo backendów kompilatora.
- Znajomość wykonywania rozproszonego, równoległości modeli i hierarchii pamięci akceleratorów.
- Wkład w rozwój MLIR, LLVM, frameworków inferencyjnych lub powiązanych projektów open source.
Benefity
- Stabilne zatrudnienie w środowisku działającym w tempie startupu.
- Możliwości publikowania wyników i udostępniania zaawansowanych badań nad AI jako open source.
- Praca z jednym z najszybszych superkomputerów AI na świecie.
- Prosta, pozbawiona korporacyjnych naleciałości kultura szanująca indywidualne przekonania.
- Stała nauka, rozwój zawodowy i wsparcie.
- Równe i różnorodne środowisko pracy.