如何将 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 中看到状态消息。