背景

目前chatbi的license基本只给一个月的有效期,所以需要经常更换license,但是chatbi的license和bi的不是一个,需要生成ma和bi的不是一个,需要生成machine_id,然后chatbi同学通过machine_id来给新的license.txt给到我们,再重新启动gpu服务和cpu服务。

操作方法

ChatBI大模型私有化服务中,NL2SQL容器(gensql_tgi)启动需要使用授权文件。授权文件绑定了部署机器ID,并限定了服务有效期。按下面的步骤获取:

在部署gensql_tgi容器的GPU机器上,运行如下命令获取的机器ID:

docker run --privileged --network=host --rm -e NVIDIA_DISABLE_REQUIRE=1 --entrypoint get_mid hub-inner.cn-east-p1.netease.com/deeplearning/nl2sql:0.0.4_cu118_tgi_1.3.4_hf

输出样例:

Machine ID: xle02uGQTSvKKz7weAI2OuSFc71eOgoyw0VDlll8q3i0OQKqga+Zmt1WvT+lALtxewuNmxgYtltp4bxKAqnXc1XutdZnxAnMdzOFw4eSG3k= Uyq6+Fr5KfAHXTyf7ztYXNOya3ADutVlV3eeutG2ok0keEtMb3NGvk0eEIjdS+j0YsLc2+KlQrcJQ5dCE2Z3mmFAM76EF5FxJywITDxYCUzSXzVpRtY6dcQkBwCG0dey91pW5lC2fSjiD3bHEOqRrx4KHQhIhDr0p4dA2r3qEDc=

将机器信息给到网易数帆对接人获取授权文件 将授权文件放到v1.18.0目录下,并命名为license.txt

若上述命令报错:excutetable file not found in $path

解决:进入容器运行命令

# 启动容器
docker run --privileged --network=host -itd -e NVIDIA_DISABLE_REQUIRE=1 hub-inner.cn-east-p1.netease.com/deeplearning/nl2sql:0.0.4_cu118_tgi_1.3.4_hf
# 进入容器
docker exec -it 容器ID bash
# 增加可执行权限
chmod +x /usr/bin/get_mid
#运行命令
get_mid

然后会获取到一个上述输出样例的Machine ID,给到大模型同学。他们会给到我们新的license.txt的内容

复制内容在chatbi目录下更换license.txt的内容,然后重新启动gpu和cpu服务即可。