Импорт модуля MAGE.AI через сайт Mage.aiPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Импорт модуля MAGE.AI через сайт Mage.ai

Сообщение Anonymous »

Контекст:
Я пытаюсь создать конвейер для хранения процедуры в облаке (редактор блоков веб-сайта MAGE.AI), потому что сервер мы используем на моем рабочем месте, устарело, и мне нужно было использовать определенные библиотеки. Поток следующий:
  • @data_loader load_config (загружает информацию в формате JSON некоторых маршрутов).
    < /li>
    @custom
  • @transform

    @data_exporter
Дело в том, что это должно вызываться через API, поэтому я отправляю некоторые переменные с помощью POST (kwargs.get('custom_arguments'):< /p>
def execute(*args, **kwargs):
# Rutas:
config_data = load_config()
if not config_data:
return "Error: Config data is missing or invalid"
# Obtención de variables (API call):
custom_args = kwargs.get('custom_arguments', {})
urls = custom_args.get('urls', [])
imgs = custom_args.get('imgs', [])
uppertext = custom_args.get('uppertext', '')
idioma = custom_args.get('idioma', '')
# Ejecución:
actualizador = actualizarMarketingGlobal(urls, imgs, uppertext, idioma, config_data)
actualizador.mod_all()

Сведения об ошибке:
Кажется, все работает нормально, когда я вызываю его из Postman. Что вызывает у меня ошибку, так это ссылка на load_config(), в результате чего config_data не определена.
File "/usr/local/lib/python3.10/site-packages/mage_ai/data_preparation/models/block/__init__.py", line 2169, in execute_block_function

output = block_function_updated(*input_vars, **global_vars)

File "", line 17, in execute

NameError: name 'config_data' is not defined
  • Когда я тестирую функцию load_config, она отлично возвращает переменные, поэтому проблема заключается в ссылке на функцию.
  • Я пытался получить его напрямую из иерархии с помощью *args, но он сказал, что не определено. Кроме того, я хотел получить больше контроля над ней, вызвав эту функцию самостоятельно.
Функция load_config находится on:
  • data_loaders > load_config.py > def load_config()
И у него нет вышестоящих зависимостей. Я хочу знать, как я бы назвал это из моей функции выполнения(), которая находится по адресу:
  • custom > actizarmarketingglobal.py > def Execute()
Ссылки, которые я делаю, и их ошибки:
Итак, для каждого вызова ссылки я получаю другая ошибка.
1 – нет модуля. по имени...:
from load_config import load_config

Ошибка:
2037 if custom_code is not None and custom_code.strip():

2038 if BlockType.CHART != self.type:

-> 2039 exec(custom_code, results)

2040 elif self.content is not None:

2041 exec(self.content, results)

File :8

ModuleNotFoundError: No module named 'load_config'

2 — «имя» не в глобальных переменных...?
from .load_config import load_config

Ошибка:
2037 if custom_code is not None and custom_code.strip():

2038 if BlockType.CHART != self.type:

-> 2039 exec(custom_code, results)

2040 elif self.content is not None:

2041 exec(self.content, results)

File :8

KeyError: "'__name__' not in globals"

Когда я спросил Chatgpt, мне сказали:

Если вы считаете, что проблема конкретно в __name__ , одним из обходных путей является установка __name__ вручную в пользовательском блоке. Например, вы можете добавить это в начало кода вашего пользовательского блока:
if '__name__' not in globals():
globals()['__name__'] = '__main__'


3 — Опять ошибка импорта
Однако, если я это сделаю, я получу:
tion_previous, **kwargs)

2037 if custom_code is not None and custom_code.strip():

2038 if BlockType.CHART != self.type:

-> 2039 exec(custom_code, results)

2040 elif self.content is not None:

2041 exec(self.content, results)

File :10

ImportError: attempted relative import with no known parent package


Подробнее здесь: https://stackoverflow.com/questions/792 ... ai-website
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»