On-device ML Engineer - US Remote

Job expired!

Rejoignez Hugging Face dans un voyage innovant pour faire progresser le Machine Learning et le rendre plus accessible. Nous contribuons au développement de la technologie pour le bien de la société.

Nous avons construit la bibliothèque open-source de modèles pré-entraînés à la croissance la plus rapide au monde. Avec plus de 1 million de modèles et 320 000 étoiles sur GitHub, notre technologie est utilisée par plus de 15 000 entreprises, y compris les principales organisations d'IA comme Google, Elastic, Salesforce, Grammarly et la NASA.

En tant qu'Ingénieur ML sur dispositif, vous explorerez des méthodes de pointe pour exécuter des modèles sur des plateformes grand public, en mettant l'accent sur les technologies Apple. Vos responsabilités incluront :

  • Optimiser, quantifier et convertir les meilleurs modèles pour une exécution efficace sur les iPhones et les Macs.
  • Concevoir, construire et contribuer à des logiciels open-source qui démontrent l'utilisation des modèles et développent des bibliothèques pour minimiser les frictions pour les développeurs non familiers avec le ML.
  • Diffuser les méthodes, faciliter leur adoption et créer des outils pour la communauté.

Les tâches quotidiennes peuvent inclure :

  • Évaluer les modèles en fonction de la qualité, de la latence, des besoins en mémoire et en stockage.
  • S'efforcer de faire fonctionner les modèles SOTA efficacement sur les plateformes Apple en les convertissant en formats natifs comme Core ML ou MLX.
  • Optimiser les architectures de modèles pour les plateformes Apple Silicon, déboguer les problèmes et développer des solutions de contournement.
  • Écrire du code Swift pour implémenter ou optimiser des tâches ML, y compris des pipelines de pré- et post-traitement.
  • Produire une documentation technique de haute qualité, comme des articles de blog, des tutoriels, des guides, des fils sur les réseaux sociaux et des applications de démonstration.
  • Contribuer à des projets open-source comme coremltools pour améliorer la couverture des opérations PyTorch.
  • Créer des outils pour permettre aux développeurs de convertir, exécuter et partager des modèles facilement.
  • Écrire ou comprendre du code bas niveau comme des noyaux GPU parallèles si nécessaire.

Vous excellerez dans ce poste si :

  • Vous êtes un développeur Swift expérimenté: Vous avez une solide expérience en développement Swift, un esprit pratique de constructeur et un bon sens de la conception logicielle et applicative.
  • Vous êtes passionné par le ML: Vous avez une compréhension approfondie des architectures de modèles et une passion pour le Machine Learning.
  • Vous avez une maîtrise de Core ML: Expérience dans l'utilisation de Core ML et compréhension de ses avantages et limitations.
  • Vous êtes un contributeur open-source: Envie de publier et de contribuer aux bibliothèques open-source pour aider les développeurs à adopter le ML.
  • Vous êtes un ingénieur polyvalent: Capable de passer d'un niveau d'abstraction à un autre, de l'interface utilisateur aux noyaux Metal.
  • Vous écrivez du code lisible: Vous écrivez du code facile à comprendre mais aussi optimisé pour les performances.
  • Vous comprenez les techniques d'optimisation: Vous avez une connaissance des techniques d'optimisation, du kv-caching dans les transformers à la quantification après entraînement.
  • Vous avez une compréhension des systèmes: Capable d'identifier les goulots d'étranglement de performance.
  • Vous maîtrisez divers frameworks: Expérience avec des frameworks tels que llama.cpp, MLX, PyTorch et CoreNet.
  • Vous êtes un bon débogueur.
  • Vous pouvez écrire une excellente documentation technique.
  • Vous participez aux forums de discussion et aux communautés sur ces sujets.

Même si vous ne cochez pas toutes les cases, nous vous encourageons à postuler. Nous valorisons la diversité et construisons une équipe dont les compétences, les expériences et les parcours se complètent mutuellement