本章主要结介绍如何部署自然语言分析引擎(NLA)。本章主要结介绍如何部署自然语言分析引擎, 升级NLA引擎请查看文档:自然语言分析引擎版本升级。
1.安装环境要求
1.1. 服务器配置清单
注意:小模型版本-目前已经暂停发布小模型版本
组件 | 配置 | CPU | 内存 | 硬盘 |
---|---|---|---|---|
NLA核心服务 | 最低配置 | X86架构 16核 | 32G |
1TB+ | |||
推荐配置 | X86架构 32核 | 128G | 1TB+ |
大模型版本的机器需要有GPU,大模型版本的硬件要求请查看文档
(1) 服务器CPU要求支持AVX指令集,否则无法安装 TensorFlow;
...
(3) 当服务器配置为最低配置时,即16核32GB。并发数推荐为30个左右,最高不应超过40个。不同并发数下的平均响应时间如下:
并发数 | 平均响应时间 |
---|---|
20 | 2.487s |
30 | 3.669s |
40 | 4.814s |
1.2. 系统环境要求
由于 Smartbi-NLA 采用 docker 容器 部署,因此服务器的系统环境需要支持 docker19.03 以上 和 docker-compose 1.24.* 。
以下系统版本支持部署 Smartbi-NLA :
系统 | 版本 |
---|---|
Ubuntu | Ubuntu-16.04.3以上 |
Centos | CentOS-7以上 |
1.3. Smartbi版本要求
版本要求 | License |
---|---|
Smartbi V11 及以上 | License 需要包含“自然语言分析”相应权限 |
1.4. 环境检查
1.4.1 CPU架构以及指令集确认
输入查看系统的指令
...
出现如下信息则在Smartbi服务器访问NLA服务是正常的。
2.安装
(1) 解压安装包
代码块 | ||||
---|---|---|---|---|
| ||||
tar -xvf nla-setup.tar.gz |
解压出来的文件目录如下:
(2) 执行安装脚本进行安装
先在安装包的解压目录下对文件进行授权:
...
这里以 http://10.10.202.100:8080/smartbi为例。
进入“系统运维--自然语言配置“中设置“自然语言分析的登录地址”,设置NLA服务地址 ,点击“显示更多设置”:
...
信息 |
---|
NLA默认的端口为9060;如需修改端口请依照安装目录下的docker-compose.yml的注释进行修改。 |
信息 |
---|
如果点击“保存“按钮提示报错,请检查一下是否拥有系统配置权限。 |
(4) 配置大语言模型
进入“系统运维--自然语言配置“中设置“使用大模型的版本”
Local_llm/Local
适用于所有OpenAI接口的大模型,例如deepseek
OPEN Al/gpt-3.5-turbo
OPEN Al/gpt-3.5-turbo-1106-ft
Azure/gpt-3.5-turbo
Baidu/ERNlE-Bot-4
Mianbi/cpm-conv
Xunfei/Spark-general 3.5
Qwen/Qwen
3.常见问题(FAQ)
1. selinux导致daemon的OCI runtime create failed
问题现象:启动服务的时候出现报错,报错信息如下
解决办法:关闭selinux
...
使用docker logs 进入容器查看,出现如下日志:
|
当前服务器的 CPU 不支持TensorFlow所需要的指令集 avx 和 avx2。
...
问题可能的原因2:Smartbi服务器地址没有填,或者NLA服务无法访问smartbi服务的地址。请在NLA服务器上用curl -L <Smartbi地址>来测试连通性。
4.修改docker本地存储地址
原因:通常docker安装后,默认的本地存储地址是根目录,根目录通常都不大,需要将仓库迁移到容量较大的目录
方法:
1、在 /etc/docker目录下创建daemon.json;如果存在该文件则修改: vi /etc/docker/daemon.json 2、daemon.json文件的内容如下(假设你的存储目录是:/docker-data): { 3、sudo systemctl restart docker |
---|
5. 启动报NLA服务 iptables failed问题
问题报错:如下
解决方案:
1、检查iptables状态, systemctl status iptables 如果状态启动则跳到第3步,如果失败则参照第2步进行安装iptables。
2、安装iptables
sudo wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
yum install iptables
sudo systemctl start iptables
sudo systemctl enable iptables
3、手动添加iptables规则
sudo iptables -P FORWARD ACCEPT
sudo iptables -A FORWARD -i dockere -j ACCEPT
sudo iptables -A FORWARD -o dockero -j ACCEPT
4、重启docker
sudo systemctl restart docker