Импорт нескольких пользовательских задач tenor2tensor во Flask

В API-интерфейсе flask_restplus я пытаюсь сделать вывод из двух моделей tennors2tensor, которые обслуживаются на одном сервере. Обе эти модели являются пользовательскими, поэтому я поставляю t2t_usr_dir для обслуживающих функций tenor2tensor, чтобы можно было найти пользовательскую проблему.

При выводе одной пользовательской проблемы все в порядке и результаты ожидаемые. Тем не менее, когда я хочу сделать вывод о второй модели, программа терпит неудачу в

def get_registered_problem(usr_dir_string, problem):
    usr_dir.import_usr_dir(usr_dir_string)
    print("Importing worked?")
    problem = registry.problem(problem)
    print("Problem naam:", problem)
    return problem

с LookupError: my_custom_problem_2 not in the set of supported problems,

Когда я переключаюсь обратно на первую модель (my_custom_problem_1), все снова в порядке, и журналы говорят мне, что объект существует. Я дважды проверил, что все каталоги пользователя и данных верны. Это похоже на флягу или problem = registry.problem(problem) вещь, как будто однажды загруженная проблема загружается, регистрация второго пользовательского каталога просто не поднимается.

Есть идеи? Заранее спасибо!

1 ответ

Решение

Я узнал, что с помощью usr_dir.import_usr_dir(usr_dir_string) это не лучший способ, так как кажется, что он действительно импортирует тот же самый первый usr_dir, как предложил Матиас. Я решил эту проблему, добавив соответствующие usr_dirs в мою корневую папку и просто импортировав их как модуль.

После этого я удалил usr_dir.import_usr_dir(usr_dir_string) линии и приступил к регистрации проблемы через problem = registry.problem(problem), которая прошла хорошо для обеих проблем!

Другие вопросы по тегам