On-device ML Engineer - US Remote

Job expired!

Dołącz do Hugging Face na innowacyjnej drodze do rozwijania Machine Learning i uczynienia go bardziej dostępnym. Przyczyniamy się do rozwoju technologii na rzecz poprawy społeczeństwa.

Stworzyliśmy najszybciej rosnącą, open-source'ową bibliotekę modeli pre-trained na świecie. Z ponad 1 milionem modeli i 320 tysiącami gwiazdek na GitHubie, naszej technologii ufa ponad 15 000 firm, w tym czołowe organizacje AI, takie jak Google, Elastic, Salesforce, Grammarly i NASA.

Jako Inżynier ML na urządzeniach, będziesz eksplorować najnowocześniejsze metody uruchamiania modeli na platformach konsumenckich, skupiając się na technologiach Apple. Twoje obowiązki będą obejmować:

  • Optymalizowanie, kwantyzowanie i konwertowanie najlepszych modeli w celu efektywnego ich wykonywania na iPhone'ach i Macach.
  • Projektowanie, budowanie i przyczynianie się do open-source'owego oprogramowania, które demonstruje użycie modeli i rozwija biblioteki, aby zminimalizować trudności dla deweloperów nieznających ML.
  • Upowszechnianie metod, ułatwianie ich przyjęcia oraz tworzenie narzędzi dla społeczności.

Codzienne zadania mogą obejmować:

  • Ocena modeli pod kątem jakości, opóźnienia, pamięci i potrzeb dotyczących przechowywania.
  • Dążenie do efektywnej pracy modeli SOTA na platformach Apple przez konwertowanie ich do natywnych formatów, takich jak Core ML lub MLX.
  • Optymalizowanie architektur modeli pod kątem platform Apple Silicon, rozwiązywanie problemów i opracowywanie obejść.
  • Pisanie kodu Swift w celu implementacji lub optymalizacji zadań ML, w tym pre- i post-processing pipelines.
  • Tworzenie wysokiej jakości dokumentacji technicznej, takiej jak wpisy na blogu, samouczki, przewodniki, wątki na mediach społecznościowych oraz aplikacje demonstracyjne.
  • Przyczynianie się do open-source'owych projektów jak coremltools w celu poprawy zasięgu operacji PyTorch.
  • Tworzenie narzędzi dla deweloperów do łatwego konwertowania, uruchamiania i udostępniania modeli.
  • Pisanie lub rozumienie kodu na niskim poziomie, takiego jak równoległe jądra GPU, gdy jest to konieczne.

Będziesz rozwijać się w tej roli, jeśli:

  • Jesteś doświadczonym deweloperem Swift: Masz solidne doświadczenie w programowaniu w Swift, praktyczne podejście oraz dobre wyczucie w projektowaniu oprogramowania i aplikacji.
  • Pasjonujesz się ML: Masz głębokie zrozumienie architektur modeli oraz pasję do uczenia maszynowego.
  • Masz biegłość w Core ML: Posiadasz doświadczenie w korzystaniu z Core ML oraz zrozumienie jego zalet i ograniczeń.
  • Jesteś współtwórcą open-source: Chcesz publikować i przyczyniać się do bibliotek open-source, aby pomagać deweloperom wdrażać ML.
  • Jesteś wszechstronnym inżynierem: Potrafisz poruszać się na różnych poziomach abstrakcji - od interfejsu użytkownika po jądra Metal.
  • Piszesz czytelny kod: Pisz kod, który jest łatwy do zrozumienia, ale także optymalizuj krytyczną ścieżkę pod kątem wydajności.
  • Rozumiesz techniki optymalizacji: Masz pojęcie o technikach optymalizacji