很多用户在用 PAI-DSW(Data Science Workshop)完成模型训练后,都会卡在一个关键问题上:模型本地跑得好好的,怎么让它变成一个别人能通过浏览器访问的 Web 服务?这个问题其实不难,但涉及几个关键步骤,尤其对刚接触云服务器的新手来说,容易在环境配置、端口开放、服务启动这些环节出错。
- GPU推理型 32核64G服务器
691元/月
了解详情 →
1.5折32核超高性价比!
- GPU计算型 8核32G 服务器
502元/月
了解详情 →
适用于深度学习的推理场景和小规模训练场景
- HAI-GPU基础型 服务器26.21
元/7天
了解详情 →
搭载NVIDIA T4级GPU,16G显存
- HAI-GPU进阶型 服务器49元/7天
了解详情 →
搭载NVIDIA V100级GPU,32G显存
立即查看详细配置和优惠,为您的项目选择最佳服务器
下面我们就围绕“把 PAI-DSW 训练好的模型部署成 Web 服务”这个目标,用一台通用的 Linux 云服务器,从零开始一步步搞定。
小贴士:云产品续费较贵,建议一次性购买3年或5年,性价比更高。
点击了解更多优惠信息
第一步:确认你的模型和依赖能独立运行
- 轻量2核2G3M 服务器68元/年(约5.67元/月)
了解详情 →
服务器适合个人项目、学习测试、小流量网站
- 轻量4核4G3M 服务器79元/年(约6.58元/月)
了解详情 →
服务器适合中型网站、企业官网、开发环境
- 轻量4核8G10M 服务器630元/年(约52.5元/月)
了解详情 →
服务器适合高并发应用、数据库服务器、电商平台
点击了解更多优惠信息
PAI-DSW 环境虽然方便,但它是个托管开发环境,不能直接对外提供 Web 服务。所以你得先把模型文件和推理代码“搬出来”,确保它们能在干净的 Linux 环境里跑起来。
- 轻量2核2G4M 服务器99元/年(约8.25元/月)
了解详情 →
服务器4M带宽,访问速度更快,适合流量稍大的网站
- 轻量2核4G5M 服务器188元/年(约15.67元/月)
了解详情 →
服务器5M带宽 + 4G内存,性能均衡,适合中型应用
- 轻量2核4G6M 服务器199元/年(约16.58元/月)
了解详情 →
服务器6M带宽 + 4G内存,高性价比选择
立即查看详细配置和优惠,为您的项目选择最佳服务器
- 导出训练好的模型(比如 PyTorch 的
.pt文件、TensorFlow 的.pb或 SavedModel 目录)。 - 整理推理脚本(通常是一个
predict.py或app.py),里面包含加载模型、预处理输入、返回预测结果的逻辑。 - 记录依赖包清单,比如用
pip freeze > requirements.txt导出当前环境的 Python 包。
这一步非常重要!很多用户直接复制代码到服务器就跑不起来,就是因为漏了某些依赖,或者路径写死了本地路径。
第二步:准备一台通用 Linux 云服务器
你需要一台支持自定义环境的云服务器,系统建议选 Ubuntu 20.04 或 CentOS 7 以上版本。购买时注意几点:
- 配置不用太高,2核4G 足够跑大多数轻量级模型服务。
- 系统盘建议 40GB 以上,留足空间装 Python 环境和模型文件。
- 公网 IP 必须有,否则别人无法访问你的服务。
服务器创建成功后,用 SSH 工具(比如 Xshell、Terminal)登录,用户名通常是 root 或 ubuntu,密码在购买后会通过站内信提供。
第三步:搭建基础运行环境
登录服务器后,先更新系统并安装必要工具:
Ubuntu/Debian
sudo apt update && sudo apt upgrade -y
sudo apt install -y python3 python3-pip git nginx
CentOS/RHEL
sudo yum update -y
sudo yum install -y python3 python3-pip git nginx
然后创建项目目录,把模型文件和代码上传上去(可以用 scp、宝塔面板或直接 git clone):
mkdir /opt/my-model-service
cd /opt/my-model-service
假设你已将代码推到 GitHub
git clone https://github.com/yourname/your-model-repo.git .
pip3 install -r requirements.txt
测试一下本地能不能跑通:
python3 app.py
如果没报错,说明环境基本 OK。这时候服务默认只监听 127.0.0.1,外网还访问不到。
第四步:用 Gunicorn + Nginx 暴露 Web 服务
直接用 Flask 或 FastAPI 自带的开发服务器上线是不安全的,我们需要用生产级部署方式。这里推荐 Gunicorn 作为应用服务器,Nginx 作为反向代理。
先安装 Gunicorn:
pip3 install gunicorn
启动应用(假设你的 FastAPI/Flask 应用对象叫 app,在 app.py 里):
gunicorn -w 4 -b 0.0.0.0:8000 app:app
这行命令的意思是:启动 4 个 worker,监听所有 IP 的 8000 端口。
接下来配置 Nginx,让它把 80 端口的请求转发给 Gunicorn:
sudo vim /etc/nginx/sites-available/my-model
写入以下内容(替换 your-server-ip 为你的服务器公网 IP):
server {
listen 80;
server_name your-server-ip;
location / {
proxy_pass http://127.0.0.1:8000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
}
启用配置并重启 Nginx:
sudo ln -s /etc/nginx/sites-available/my-model /etc/nginx/sites-enabled/
sudo nginx -t && sudo systemctl reload nginx
第五步:检查防火墙和安全组端口
很多用户到这一步发现还是打不开网页,问题通常出在端口没放行。
你需要在云服务器控制台的“安全组”或“防火墙”设置里,确保以下端口对公网开放:
| 端口 | 用途 |
|---|---|
| 22 | SSH 登录(必须) |
| 80 | HTTP 访问 Web 服务(关键!) |
| 443 | HTTPS(可选,后续可配) |
注意:即使你在服务器上用 netstat -tuln 看到 8000 端口在监听,如果云平台的安全组没放行 80 端口,外部依然无法访问。
第六步:验证服务是否上线成功
现在打开浏览器,输入你的服务器公网 IP(比如 http://123.123.123.123),如果看到模型返回的 JSON 或网页界面,就说明部署成功了!
你可以用 curl 在服务器本地快速测试:
curl http://localhost/predict -H "Content-Type: application/json" -d '{"input": [1,2,3,4]}'
如果返回预测结果,说明后端逻辑没问题。
进阶建议:让服务长期稳定运行
上面的 Gunicorn 是前台进程,关掉 SSH 就会停止。要用 systemd 把它变成系统服务:
sudo vim /etc/systemd/system/my-model.service
内容如下:
[Unit]
Description=My Model Web Service
After=network.target
[Service]
User=root
WorkingDirectory=/opt/my-model-service
ExecStart=/usr/local/bin/gunicorn -w 4 -b 127.0.0.1:8000 app:app
Restart=always
[Install]
WantedBy=multi-user.target
然后启用服务:
sudo systemctl daemon-reexec
sudo systemctl enable my-model
sudo systemctl start my-model
这样即使服务器重启,你的模型服务也会自动拉起。
常见踩坑点总结
- 模型路径写死:代码里不要用绝对路径如
/home/user/model.pt,改用相对路径或环境变量。 - 依赖缺失:PAI-DSW 预装了很多包,但新服务器是干净的,务必用
requirements.txt安装。 - 端口冲突:8000 端口可能被占用,可用
lsof -i :8000检查。 - 权限问题:Nginx 默认以
www-data用户运行,确保它能读取你的项目文件(必要时chmod)。
只要按上面步骤一步步来,从 PAI-DSW 训练完模型到上线 Web 服务,其实并不复杂。关键在于环境隔离、端口开放、服务守护这三个环节别出错。现在,你的模型已经可以被任何人在浏览器里调用了!
| 厂商 | 配置 | 带宽 / 流量 | 价格 | 购买地址 |
|---|---|---|---|---|
| 腾讯云 | 4核4G | 3M | 79元/年 | 点击查看 |
| 腾讯云 | 2核4G | 5M | 188元/年 | 点击查看 |
| 腾讯云 | 4核8G | 10M | 630元/年 | 点击查看 |
| 腾讯云 | 4核16G | 12M | 1024元/年 | 点击查看 |
| 腾讯云 | 2核4G | 6M | 528元/3年 | 点击查看 |
| 腾讯云 | 2核2G | 5M | 396元/3年(≈176元/年) | 点击查看 |
| 腾讯云GPU服务器 | 32核64G | AI模型应用部署搭建 | 691元/月 | 点击查看 |
| 腾讯云GPU服务器 | 8核32G | AI模型应用部署搭建 | 502元/月 | 点击查看 |
| 腾讯云GPU服务器 | 10核40G | AI模型应用部署搭建 | 1152元/月 | 点击查看 |
| 腾讯云GPU服务器 | 28核116G | AI模型应用部署搭建 | 1028元/月 | 点击查看 |
所有价格仅供参考,请以官方活动页实时价格为准。