Присоединяйтесь к 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.
- Являетесь хорошим отладчиком.
- Можете писать отличную техническую документацию.