如何将 Python 库安装和更新到 SQL ML 服务器实例中?
How to install and update Python Libraries into SQL ML Server instance?
我在数据库实例中的 SQL 服务器机器学习服务上升级和安装 python 包时遇到问题。我已经尝试过使用 pip(从正确的实例)进行数据库内安装和使用 sqlmlutils 库进行远程客户端安装。更准确地说,当我尝试使用 statsmodels.tsa.statespace.SARIMAX 库拟合模型时遇到了问题,并且出现以下错误:
Invalid BXL stream error while running BxlServer: caught exception: Error communicating between BxlServer and client: 0x000000e9
所以我认为更新库会有所帮助。首先,我努力通过出现此错误的远程客户端用 sqlmlutils 更新它:
('08S01', '[08S01] [Microsoft][ODBC SQL Server Driver]Communication link failure (0) (SQLEndTran)')
我成功安装了 pip,但是当我再次尝试将其导入 SSMS 时(因为 statsmodels 也更新了 pandas 库)我遇到了一个新错误:
Unable to communicate with the runtime for 'Python' script for request id: C3DCF376-3B87-4C3C-9BE5-125ACD788EB4. Please check the requirements of 'Python' runtime.” “ImportError: cannot import name 'DataFrame' from 'pandas' (unknown location)
此外,我尝试使用 pip install 安装 fbprophet 库,但出现此错误:
Failed building wheel for fbprophet
Running setup.py clean for fbprophet
Failed to build fbprophet
tables 3.5.1 requires mock>=2.0, which is not installed.
nltk 3.4 requires singledispatch, which is not installed.
Installing collected packages: Cython, numpy, six, python-dateutil, pytz, pandas, cmdstanpy, pystan, pyparsing, kiwisolver, cycler, matplotlib, ephem, LunarCalendar, pymeeus, convertdate, korean-lunar-calendar, holidays, setuptools-git, fbprophet
Running setup.py install for fbprophet ... error
Complete output from command "C:\Program Files\Microsoft SQL Server\MSSQL15.MLSERVER\PYTHON_SERVICES\python.exe" -u -c "import setuptools, tokenize;__file__='C:\Users\Marko\AppData\Local\Temp\pip-install-wyjwmusv\fbprophet\setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record C:\Users\Marko\AppData\Local\Temp\pip-record-g_krzlzj\install-record.txt --single-version-externally-managed --compile --home=C:\Users\Marko\AppData\Local\Temp\pip-target-zavyou39:
running install
running build
running build_py
creating build
creating build\lib
creating build\lib\fbprophet
creating build\lib\fbprophet\stan_model
Importing matplotlib failed. Plotting will not work.
Importing plotly failed. Interactive plots will not work.
最后,我尝试使用 “绑定” 和机器学习服务器应用程序升级整个 Python 包。这也因错误而失败:
The instance must have a compatible version of SQL R Services (in-DB) installed.
我遵循以下 link 中的所有安装说明:
https://docs.microsoft.com/en-us/sql/machine-learning/install/sql-machine-learning-services-windows-install?view=sql-server-ver15
提前致谢。
第 1 步:找到 Python 库
例如,如果机器学习服务是使用默认设置安装的,并且在默认实例上启用了机器学习,则路径为:
cd "C:\Program Files\Microsoft SQL Server\MSSQL14.MSSQLSERVER\PYTHON_SERVICES"
第 2 步:使用 pip
安装软件包
使用 pip 安装程序安装新包。您可以在 PYTHON_SERVICES 文件夹的脚本子文件夹中找到 pip.exe。 SQL Server Setup 不会将Scripts 子文件夹添加到系统路径中,因此您必须指定完整路径,或者您可以将Scripts 文件夹添加到Windows 中的PATH 变量中。
scripts\pip.exe install nltk
系统可能会提示您提升权限以完成安装。随着安装的进行,您可以在命令提示符 window 中看到状态消息。
我在数据库实例中的 SQL 服务器机器学习服务上升级和安装 python 包时遇到问题。我已经尝试过使用 pip(从正确的实例)进行数据库内安装和使用 sqlmlutils 库进行远程客户端安装。更准确地说,当我尝试使用 statsmodels.tsa.statespace.SARIMAX 库拟合模型时遇到了问题,并且出现以下错误:
Invalid BXL stream error while running BxlServer: caught exception: Error communicating between BxlServer and client: 0x000000e9
所以我认为更新库会有所帮助。首先,我努力通过出现此错误的远程客户端用 sqlmlutils 更新它:
('08S01', '[08S01] [Microsoft][ODBC SQL Server Driver]Communication link failure (0) (SQLEndTran)')
我成功安装了 pip,但是当我再次尝试将其导入 SSMS 时(因为 statsmodels 也更新了 pandas 库)我遇到了一个新错误:
Unable to communicate with the runtime for 'Python' script for request id: C3DCF376-3B87-4C3C-9BE5-125ACD788EB4. Please check the requirements of 'Python' runtime.” “ImportError: cannot import name 'DataFrame' from 'pandas' (unknown location)
此外,我尝试使用 pip install 安装 fbprophet 库,但出现此错误:
Failed building wheel for fbprophet
Running setup.py clean for fbprophet
Failed to build fbprophet
tables 3.5.1 requires mock>=2.0, which is not installed.
nltk 3.4 requires singledispatch, which is not installed.
Installing collected packages: Cython, numpy, six, python-dateutil, pytz, pandas, cmdstanpy, pystan, pyparsing, kiwisolver, cycler, matplotlib, ephem, LunarCalendar, pymeeus, convertdate, korean-lunar-calendar, holidays, setuptools-git, fbprophet
Running setup.py install for fbprophet ... error
Complete output from command "C:\Program Files\Microsoft SQL Server\MSSQL15.MLSERVER\PYTHON_SERVICES\python.exe" -u -c "import setuptools, tokenize;__file__='C:\Users\Marko\AppData\Local\Temp\pip-install-wyjwmusv\fbprophet\setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record C:\Users\Marko\AppData\Local\Temp\pip-record-g_krzlzj\install-record.txt --single-version-externally-managed --compile --home=C:\Users\Marko\AppData\Local\Temp\pip-target-zavyou39:
running install
running build
running build_py
creating build
creating build\lib
creating build\lib\fbprophet
creating build\lib\fbprophet\stan_model
Importing matplotlib failed. Plotting will not work.
Importing plotly failed. Interactive plots will not work.
最后,我尝试使用 “绑定” 和机器学习服务器应用程序升级整个 Python 包。这也因错误而失败:
The instance must have a compatible version of SQL R Services (in-DB) installed.
我遵循以下 link 中的所有安装说明: https://docs.microsoft.com/en-us/sql/machine-learning/install/sql-machine-learning-services-windows-install?view=sql-server-ver15
提前致谢。
第 1 步:找到 Python 库
例如,如果机器学习服务是使用默认设置安装的,并且在默认实例上启用了机器学习,则路径为:
cd "C:\Program Files\Microsoft SQL Server\MSSQL14.MSSQLSERVER\PYTHON_SERVICES"
第 2 步:使用 pip
安装软件包 使用 pip 安装程序安装新包。您可以在 PYTHON_SERVICES 文件夹的脚本子文件夹中找到 pip.exe。 SQL Server Setup 不会将Scripts 子文件夹添加到系统路径中,因此您必须指定完整路径,或者您可以将Scripts 文件夹添加到Windows 中的PATH 变量中。
scripts\pip.exe install nltk
系统可能会提示您提升权限以完成安装。随着安装的进行,您可以在命令提示符 window 中看到状态消息。