On-device ML Engineer - US Remote

Job expired!

Присоединяйтесь к Hugging Face на инновационном пути развития машинного обучения и делайте его более доступным. Мы вносим вклад в разработку технологий для улучшения общества.

Мы создали самую быстрорастущую, с открытым исходным кодом библиотеку предварительно обученных моделей в мире. С более чем 1 миллионом+ моделей и 320К+ звездами на GitHub, нашей технологии доверяют более 15 000 компаний, включая ведущие организации в области ИИ, такие как Google, Elastic, Salesforce, Grammarly и NASA.

Как инженер ML на устройстве, вы будете исследовать передовые методы запуска моделей на потребительских платформах, сосредоточив внимание на технологиях Apple. Ваши обязанности будут включать:

  • Оптимизация, квантование и преобразование лучших моделей для эффективного выполнения на iPhone и Mac.
  • Проектирование, создание и внесение вклада в программное обеспечение с открытым исходным кодом, демонстрирующее использование моделей и развитие библиотек для минимизации трений для разработчиков, незнакомых с машинным обучением.
  • Распространение методов, способствование их принятию и создание инструментов для сообщества.

Ежедневные задачи могут включать:

  • Оценка моделей на основе качества, задержки, памяти и потребностей в хранилище.
  • Стремление к эффективной работе SOTA моделей на платформах Apple путем их преобразования в нативные форматы, такие как Core ML или MLX.
  • Оптимизация архитектур моделей для платформ Apple Silicon, отладка проблем и разработка обходных путей.
  • Написание кода на Swift для реализации или оптимизации задач машинного обучения, включая предварительную и постобработку.
  • Создание высококачественной технической документации, такой как блогпосты, учебные пособия, руководства, посты в социальных сетях и демонстрационные приложения.
  • Вклад в проекты с открытым исходным кодом, такие как coremltools, для улучшения покрытия операций PyTorch.
  • Создание инструментов для разработчиков для легкого преобразования, запуска и обмена моделями.
  • Написание или понимание низкоуровневого кода, такого как параллельные GPU-ядра, по мере необходимости.

Вы будете процветать на этой должности, если вы:

  • Опытный разработчик Swift: Имеете сильный опыт разработки на Swift, практический менталитет строителя и хорошее чувство дизайна программного обеспечения и приложений.
  • Увлекаетесь ML: Имеете глубокое понимание архитектуры моделей и страсть к машинному обучению.
  • Владеете Core ML: Имеете опыт использования Core ML и понимаете его преимущества и ограничения.
  • Участвуете в проектах с открытым исходным кодом: Стремитесь публиковать и вносить вклад в библиотеки с открытым исходным кодом, чтобы помочь разработчикам освоить машинное обучение.
  • Разносторонний инженер: Можете перемещаться по разным уровням абстракции, от пользовательского интерфейса до ядра Metal.
  • Пишите читаемый код: Пишите код, который легко понять, но также оптимизируйте критический путь для производительности.
  • Понимаете методы оптимизации: Имеете представление о методах оптимизации, от kv-кэширования в трансформерах до постобучения с квантованием.
  • Имеете системное понимание: Можете выявлять узкие места в производительности.
  • Владеете различными фреймворками: Имеете опыт работы с фреймворками, такими как llama.cpp, MLX, PyTorch и CoreNet.
  • Являетесь хорошим отладчиком.
  • Можете писать отличную техническую документацию.