
昇思MindSpore跑GLM-Z1-9BDocker容器3步部署手册【免费下载链接】aisuiteSimple, unified interface to multiple Generative AI providers项目地址: https://gitcode.com/GitHub_Trending/ai/aisuite手里只有一台Atlas 800T A2不想从零搭环境就想把90亿参数的GLM-Z1-9B跑成能直接调用的推理服务昇思MindSpore这套容器部署方案适合数学推理、一般任务这类体验场景Docker镜像已内置运行环境和启动脚本。先说边界这套镜像只用于体验不支持生产环境部署。动手之前先核对三件事。 自检硬件、软件、网络各查一遍项目最低要求不满足时的典型表现硬件1台1卡Atlas 800T A264G服务器按BF16权重计资源不够装不下权重容器内起不了推理任务软件已安装Docker引擎且有私有镜像仓库的拉取权限docker pull报 unauthorized网络能访问昇思MindSpore容器镜像仓库镜像拉取超时 → 检查仓库网络白名单三项都过了按拉镜像 → 起容器 → 确认活着走主线。 三步走从镜像到运行中的容器拉取镜像执行docker pull swr.cn-central-221.ovaijisuan.com/mindformers/mindspore_glm_z1:20250414镜像来自昇思MindSpore官方容器仓库mindformers命名空间版本20250414与 GLM-Z1-9B-0414 权重配套。镜像拉下来后别急着启动——先确认挂载路径写对了。启动容器实例执行/path/to/your/GLM-Z1-9B-0414换成宿主机上模型目录的实际路径docker run -it --privileged --nameGLM-Z1 --nethost \ -v /path/to/your/GLM-Z1-9B-0414:/home/work/GLM-Z1-9B-0414 \ swr.cn-central-221.ovaijisuan.com/mindformers/mindspore_glm_z1:20250414三个关键参数为什么这么写参数为什么需要--privileged放开设备权限容器内才能访问NPU这类硬件--nethost与宿主机共用网络栈1025端口的服务直接暴露本机可curl 127.0.0.1访问-v挂载把宿主机模型目录映射到容器内/home/work/GLM-Z1-9B-0414权重和词表才读得到踩坑提醒多机部署时每台机器上容器的hostname不能重复如果几台宿主机本身的hostname一致启动容器时要把容器的hostname改掉。确认容器存活容器起来后先用一条轻量命令确认它还活着docker ps | grep GLM-Z1预期看到类似输出容器ID为示意CONTAINER ID IMAGE STATUS 5c1f8a2e0b3d swr.cn-central-221.ovaijisuan.com/mindformers/mindspore_glm_z1:20250414 Up 3 minutes容器在跑接下来把配置改成你的实际路径。⚙️ 改配置只动4个字段默认路径下以下字段不用改你的路径与默认不一致时打开predict_glm_z1_9b.yaml只动这4处config.json、tokenizer_config.json存在即可无需编辑load_checkpoint: /home/work/GLM-Z1-9B-0414/weights auto_trans_ckpt: True load_ckpt_format: safetensors processor: tokenizer: vocab_file: /home/work/GLM-Z1-9B-0414/tokenizer.model每个字段为什么改load_checkpoint改它是因为权重不在默认位置时必须指向实际挂载的模型绝对路径auto_trans_ckpt改它是因为打开后自动切分权重转换为分布式任务所需格式load_ckpt_format改它是因为这里固定用safetensors加载格式vocab_file改它是因为tokenizer文件不在默认路径时需指向其绝对路径yaml 保存后就可以拉服务了。拉服务一条脚本加3个参数MindSpore Transformers 提供了一个预置环境变量和服务化配置的启动脚本进目录、给参数即可启动推理服务cd /home/work/mindformers/scripts bash run_mindie.sh --model-name GLM-Z1-9B-0414 --model-path /home/work/GLM-Z1-9B-0414 --max-prefill-batch-size 1参数一句话作用--model-name设置模型名称--model-path设置模型目录路径--max-prefill-batch-size预填充批大小体验场景填1查看服务日志tail -f output.log日志里出现Daemon start success!服务就起来了。看到成功字样后发一次真实请求验证端到端效果。测调用一次curl看结果发送推理请求curl -w \ntime_total%{time_total}\n -H Accept: application/json -H Content-type: application/json -X POST -d {inputs: 请介绍一个北京的景点, parameters: {do_sample: false, max_new_tokens: 128}, stream: false} http://127.0.0.1:1025/generate_stream 正常返回包含生成文本的JSON末尾带curl -w追加的耗时形状示意字段和文本以实际输出为准{generated_text: 北京有很多值得一去的景点比如故宫博物院它是明清两代的皇家宫殿……} time_total2.13没收到响应先确认1025端口是否在监听再查output.log有无报错。请求通了部署主线就走完了最后把边界说清楚。⚠️ 划重点边界说清楚这套模型代码、权重文件和部署镜像只用于基于昇思MindSpore体验GLM-Z1-9B-0414的部署效果不支持生产环境部署使用中的问题反馈到对应项目的 Issue 区收尾前把散在文中的文件位置集中列一下。路径速查4个文件在哪weights/模型权重文件config.json模型json配置predict_glm_z1_9b.yaml模型yaml配置tokenizer_config.json词表配置【免费下载链接】aisuiteSimple, unified interface to multiple Generative AI providers项目地址: https://gitcode.com/GitHub_Trending/ai/aisuite创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考