
Компания приобрела рабочую станцию машинного обучения и поручила мне ее эксплуатацию и обслуживание.
Цель: Разработать собственные приложения МО, а также разрешить нашим глобальным офисам подключаться к рабочей станции для обучения/запуска собственных моделей. Я бы также установил стандартные фреймворки обучения для других глобальных команд, чтобы начать обучение моделей классификации и обнаружения объектов.
Язык разработки: Python
Характеристики рабочей станции:
- Убунту 18.04
- Драйверы графического процессора и общие библиотеки машинного обучения были предустановлены.
- Intel Core i9-9920X, 4x RTX 2080 Ti
- 128 ГБ ОЗУ, 2 ТБ NVMe + 2 ТБ SATA SSD
Текущий план — настроить разные учетные записи для всех пользователей, и они будут подключаться по ssh к своим учетным записям. Однако я не уверен, что это сработает. Что произойдет, если пользователи захотят разные версии библиотек и т. д.?
Являются ли контейнеры Docker правильным решением? Таким образом, каждый может иметь свою собственную изолированную среду, которую он может свободно настраивать по своему усмотрению. Недавно я также узнал о виртуальных средах Python, и теперь это кажется самым простым решением.
У меня нет большого опыта в этой области, и я только начинаю. Пожалуйста, поделитесь своим опытом/предложениями, и дайте мне знать, если вам нужны дополнительные подробности, спасибо!
решение1
Виртуальные среды Python предназначены именно для ваших вариантов использования. Таким образом, у вас будут зависимости пакетов python для каждого проекта, что позволит избежать глобальных установок и несоответствий версий.
Каждый пользователь будет иметь собственную системную учетную запись и сможет получить доступ к одной или нескольким виртуальным средам.
Для каждого проекта следует рассматривать одну виртуальную среду.
Плюс вы можете использоватьpyenvчтобы вы могли работать/переключаться между несколькими версиями Python.
Единственный минус здесь в том, что вам понадобится дополнительное место на диске.
решение2
Хотя использование docker возможно, оно может привести к слишком большим накладным расходам на конфигурацию.
Однако,Конда средывозможно, это может быть решением. Они позволяют различным (python) библиотекам сосуществовать в изолированных средах рядом друг с другом. Самый простой способ — установить Miniconda по всей системе и позволить каждому создавать собственные среды conda по своему желанию.