embedding、rerank模型不少,需要一个框架来集中管理,选用了xinference,使用简单。采取容器化部署:
1、镜像下载:原始模型下载慢,采用渡渡鸟,下载
2、容器运行:
docker run -itd --name xinference --restart=always --name=xinference \ -v /home/app/models:/root/.xinference/cache/ \ # 把本地模型映射到容器,不用再从魔塔等处下载。如果本地没有,则从魔塔下载,并在此目录做链接指向容器内的缓存目录下 -v /home/app/xinference:/opt/xinference -e XINFERENCE_ENV_HOME_PATH=/opt/xinference \ # 指定inference的主目录,暂时未明白用途 -e XINFERENCE_MODEL_SRC=modelscope \ # 指定模型的默认下载位置为魔塔,下载后的模型会保存在容器的~/.cache/modelscope/hub/AI-ModelScope目录 -e HTTP_PROXY=http://192.168.152.249:3128 -e HTTPS_PROXY=http://192.168.152.249:3128 -e NO_PROXY=192.0.0.1/8,localhost,127.0.0.1 \ # 如果在内网需要下载模型。。。 -p 9997:9997 \ --gpus all \ # 使用所有的gpu swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/xprobe/xinference:v1.6.1 \ # 来自渡渡鸟的镜像 xinference-local -H 0.0.0.0 \ --auth-config /opt/xinference/auth.json #启用鉴权,避免ui配置界面裸奔
鉴权信息配置文件:
# auth.json {"auth_config": {"algorithm": "HS256","secret_key": "09d25e094faa6ca2556c818166b7a9563b93f7099ff6fbf4caa6cf63b88e8d3e7","token_expire_in_minutes": 30},"user_config": [{"username": "admin","password": "1qaz2wsx121","permissions": ["admin"],"api_keys": ["sk-72tkvudyGLPMi","sk-Z0TLIY4gt9w11"]},{"username": "test","password": "1qaz2wsx121","permissions": ["models:list","models:read"],"api_keys": ["sk-35tkasdyGLYMy","sk-ALTbg16ut981w"]}] }
3、模型加载:容器启动后到http://ip:9997下进行配置,启动需要的模型,如无特殊要求,直接点击小火箭。