У руби есть много разных методов для запуска внешних скриптов, подробно описано тут -
https://stackoverflow.com/questions/7212573/when-t...
Но, нужно понимать, что запуск скрипта блокирует весь руби процесс, поэтому если скрипт работает несколько минут, то все остальные потоки будут заблокированы. Т.е Sidekiq и Puma работать не будут.
Будет работать Resque но он жрет куча памяти.
Возможно Вам нужно отказаться от руби в проекте, если он на начальном этапе. Или обернуть питоновский скрипт в веб сервер, например flask и дергать его по http