Azure Synapse: как заставить волшебную команду блокнота %pip работать в конвейере

При запуске %pip install в моем блокноте Synapse вручную он работает как положено, без каких-либо проблем.

Однако когда я пытаюсь запустить тот же блокнот в конвейере, я получаю:

{
    "errorCode": "6002",
    "message": "MagicUsageError: %pip magic command is disabled.",
    "failureType": "UserError",
    "target": <my_notebook_name>,
    "details": []
}

Я просмотрел эти два поста:

Почему волшебная команда не работает при запуске конвейера?

Synapse: выполнить блокнот Magic Command (%run) из конвейера

Но оба они касаются только команды %run, а не %pip.

Решение для обоих этих сообщений состоит в том, чтобы добавить абсолютный путь, что имеет смысл в контексте команды %run, но я не уверен, как перевести добавление абсолютного пути в %pip? Или есть что-то еще, что может заставить эту работу работать?

🤔 А знаете ли вы, что...
Python популярен в анализе данных и машинном обучении с помощью библиотеки scikit-learn.


59
1

Ответ:

Решено

Я получил ту же ОШИБКУ при использовании команды %pip и запуске конвейера.

Я попробовал следующий подход:

Я создал файл requirements.txt для зависимостей, которые необходимо установить.

Например, я создал зависимость для splink==1.0.3

Я загрузил requirements.txt

Перейдите на вкладку «Управление» > «Пул Spark».

Теперь я запустил блокнот, чтобы проверить, верна ли версия зависимости?

Далее я запустил трубопровод.

Полученные результаты: