Как запустить модуль с несколькими файлами на веб-сервере R (сервер машинного обучения)?
Мне нужно задействовать всю структуру данных R (объектно-ориентированную) и ее методы. Ниже пример, чтобы понять:
library(data.table)
myClass = setClass("myClass", contains = "data.table")
source('./DB.r')
source('./operators.R')
Моя структура наследуется от data.table, заполняется данными из БД и имеет несколько перегруженных методов, а также пользовательских. Это отлично работает в R-SQL Server
Моя проблема сейчас состоит в том, чтобы опубликовать его как сервис. Насколько я видел в https://docs.microsoft.com/en-us/machine-learning-server/operationalize/how-to-deploy-web-service-publish-manage-in-r все функции должны находиться в одном файле (другие скрипты не могут содержать функции; они не публикуются). Например, ниже обязательно присваивается ans с суммированным результатом, чтобы он возвращался в качестве результата службы api <- publishService( ..., inputs = list(hp = "numeric", wt = "numeric"), outputs = list(ans = "numeric"), ... )
# separate script loaded in main file
t2 <- function(a, b) { sum(a, b) }
ans <- t2(hp, wt)
но это не может быть частью функции. Результат будет нулевым, если это так.
Итак, мой вопрос: могу ли я загрузить файлы на сервер и загрузить их в сеанс и создать экземпляр myClass
и построить сервисные функции поверх этого? Это должно было бы иметь объект в памяти со всеми его методами и вызывать их через функции сервиса-оболочки, чтобы они работали в режиме REST.