Использование пакетов проекта внутри задачи Ray

#python #distributed-computing #ray

#python #распределенные вычисления #ray

Вопрос:

У меня есть проект с несколькими папками пакетов, каждая из которых содержит определение класса для функции (например, класс обработки данных). И в корневом каталоге проекта есть основной скрипт, который может получить доступ ко всем этим папкам пакетов. основной скрипт создает экземпляры этих классов. Если я помещу эти экземпляры (например, объект data_processor) в качестве аргументов для задач Ray, чтобы использовать их функциональные возможности внутри задач Ray, будет ли это работать при настройке кластера, и все узлы смогут видеть методы объекта data_processor, или мне нужно использовать что-то вроде среды выполнения Ray и добавлять всеэти папки пакетов для каждого узла? Заранее спасибо.

Ответ №1:

Для этого вы можете использовать поля working_dir или py_modules сред выполнения: https://docs.ray.io/en/latest/handling-dependencies.html

Это автоматически загрузит папки на все узлы кластера и соответствующим образом установит PYTHONPATH, чтобы сделать пакеты импортируемыми в задачи.