Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Каждое приложение Databricks может включать зависимости для Python, Node.jsили обоих. Эти зависимости определяются в файлах, относящихся к языку:
- Используйте файл
requirements.txtдля указания дополнительных пакетов Python. - Используйте файл
package.jsonдля указания пакетов Node.js.
Каждое приложение также поставляется с предварительно установленным набором библиотек Python. См. предварительно установленные библиотеки Python.
Определение зависимостей Python
Чтобы определить дополнительные библиотеки Python, используйте requirements.txt файл. Если какие-либо из перечисленных пакетов соответствуют предварительно установленным, то версии в вашем файле переопределят значения по умолчанию.
Рассмотрим пример.
# Override default version of dash
dash==2.10.0
# Add additional libraries not pre-installed
requests==2.31.0
numpy==1.24.3
# Specify a compatible version range
scikit-learn>=1.2.0,<1.3.0
Избегайте конфликтов версий
Помните следующее при определении зависимостей:
- Переопределение предварительно установленных пакетов может привести к проблемам совместимости, если указанная версия значительно отличается от предварительно установленной.
- Всегда тестируйте приложение, чтобы убедиться, что изменения версии пакета не содержат ошибок.
- Фиксирование явных версий в
requirements.txtпомогает обеспечивать согласованное поведение приложений во всех развертываниях.
Определение зависимостей Node.js
Чтобы определить библиотеки Node.js, добавьте package.json файл в корневой каталог приложения. Во время развертывания Azure Databricks обнаруживает этот файл и выполняет npm install для установки всех зависимостей, перечисленных в нем.
Например, package.json файл для приложения React с помощью Vite может выглядеть следующим образом:
{
"name": "react-fastapi-app",
"version": "1.0.0",
"private": true,
"type": "module",
"scripts": {
"build": "npm run build:frontend",
"build:frontend": "vite build frontend"
},
"dependencies": {
"react": "^18.2.0",
"react-dom": "^18.2.0",
"typescript": "^5.0.0",
"vite": "^5.0.0",
"@vitejs/plugin-react": "^4.2.0",
"@types/react": "^18.2.0",
"@types/react-dom": "^18.2.0"
}
}
Замечание
Перечислите все пакеты, необходимые для npm run build под dependencies, а не devDependencies. Если вы установите NODE_ENV=production в переменных среды, процесс развертывания пропустит установку devDependencies.
Установка зависимостей и управление ими
Библиотеки, определенные в requirements.txt и package.json, устанавливаются непосредственно в контейнере, работающем на выделенном вычислительном ресурсе. Вы несете ответственность за управление и исправление этих зависимостей.
Библиотеки можно указать из нескольких источников в файлах зависимостей:
- Библиотеки, скачанные из общедоступных репозиториев, таких как PyPI и npm
- Частные репозитории, аутентифицирующиеся с использованием учетных данных, хранящихся в секретах Azure Databricks
- Библиотеки, хранящиеся в каталоге
/Volumes/(например,/Volumes/<catalog>/<schema>/<volume>/<path>)
Установка из частных репозиториев
Чтобы установить пакеты из частного репозитория, настройте переменные среды для проверки подлинности. Например, задайте PIP_INDEX_URL для указания на частный репозиторий:
env:
- name: PIP_INDEX_URL
valueFrom: my-pypi-secret
Конфигурация сети рабочей области должна разрешить доступ к частному репозиторию. См . статью "Настройка сети для приложений Databricks".
Установка файлов колес из томов каталога Unity
Чтобы установить пакеты Python из wheel-файлов, хранящихся в репозиториях каталога Unity, выполните следующие действия.
- Добавьте том каталога Unity в качестве ресурса в приложение. См . том каталога Unity.
- Ссылка на полный путь к файлу колесика непосредственно в вашей
requirements.txt:
/Volumes/<catalog>/<schema>/<volume>/my_package-1.0.0-py3-none-any.whl
Замечание
Ссылки на переменные среды не поддерживаются в requirements.txt. Необходимо жестко закодировать полный путь к файлу колесика.
Чтобы повысить безопасность при доступе к внешним репозиториям пакетов, используйте бессерверные элементы управления исходящего трафика, чтобы ограничить доступ к общедоступным репозиториям и настроить частные сети. См . статью "Настройка сети для приложений Databricks".