| name | description |
|---|---|
modelscope-deploy |
Help users deploy projects to ModelScope Studio (魔搭创空间). Use when user mentions deploying to ModelScope, 魔搭创空间, or creating ms_deploy.json. Handles configuration for static sites, Gradio, Streamlit, and Docker deployments. |
帮助用户配置项目并部署到魔搭创空间。
当用户提到以下内容时触发:
- "部署到魔搭创空间"
- "上传到 ModelScope Studio"
- "创建 ms_deploy.json"
- "modelscope deploy"
首先检查当前工作目录中的项目:
# 检查项目目录
ls -la
# 查找主要文件
ls index.html app.py Dockerfile README.md 2>/dev/null检测项目类型:
| 检测到文件 | 推荐类型 | sdk_type |
|---|---|---|
index.html |
静态网页 | static |
app.py (包含 gradio) |
Gradio | gradio |
app.py (包含 streamlit) |
Streamlit | streamlit |
Dockerfile |
Docker | docker |
获取项目路径:pwd 或使用当前工作目录
根据项目类型生成对应的配置。
{
"$schema": "https://modelscope.cn/api/v1/studios/deploy_schema.json",
"sdk_type": "static",
"resource_configuration": "platform/2v-cpu-16g-mem",
"base_image": "ubuntu22.04-py311-torch2.3.1-modelscope1.31.0"
}{
"$schema": "https://modelscope.cn/api/v1/studios/deploy_schema.json",
"sdk_type": "gradio",
"sdk_version": "5.49.1",
"resource_configuration": "platform/2v-cpu-16g-mem",
"base_image": "ubuntu22.04-py311-torch2.3.1-modelscope1.31.0"
}{
"$schema": "https://modelscope.cn/api/v1/studios/deploy_schema.json",
"sdk_type": "streamlit",
"resource_configuration": "platform/2v-cpu-16g-mem",
"base_image": "ubuntu22.04-py311-torch2.3.1-modelscope1.31.0"
}{
"$schema": "https://modelscope.cn/api/v1/studios/deploy_schema.json",
"sdk_type": "docker",
"resource_configuration": "platform/2v-cpu-16g-mem",
"port": 7860
}重要:Docker 类型必须使用 7860 作为外部端口,这是魔搭创空间的规定。
资源配置选项:
platform/2v-cpu-16g-mem- 免费,所有用户可用xgpu/8v-cpu-32g-mem-16g- GPU,需要申请xgpu/8v-cpu-64g-mem-48g- GPU,需要申请
ls README.md如果不存在,询问用户是否需要创建。
| sdk_type | 必需文件 | 缺失时操作 |
|---|---|---|
static |
index.html |
提示用户 |
gradio |
app.py |
提示用户 |
streamlit |
app.py |
提示用户 |
docker |
Dockerfile |
询问用户是否需要创建模板 |
Dockerfile 模板(询问用户同意后创建):
FROM python:3.10-slim
WORKDIR /app
COPY requirements.txt .
RUN pip install -r requirements.txt
COPY . .
EXPOSE 7860
CMD ["python", "app.py"]根据应用内容生成以下变量:
| 变量 | 说明 | 生成规则 |
|---|---|---|
{english_name} |
英文创空间名称 | 项目名转 kebab-case(如 my-project) |
{chinese_name} |
中文创空间名称 | 根据应用功能生成 |
{description} |
创空间描述 | 根据应用功能生成简短描述 |
{project_path} |
本地项目路径 | pwd 获取完整路径 |
输出模板(直接在 CLI 输出,不要写入文件):
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
🚀 部署到魔搭创空间
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
1️⃣ 访问部署页面:
https://modelscope.cn/studios/create?template=quick
2️⃣ 填写基本信息:
• 英文名称:{english_name}
• 中文名称:{chinese_name}
• 可见性:公开 / 私有
• 描述:{description}
3️⃣ 上传项目文件:
• 选择整个项目文件夹上传
• 项目路径:{project_path}
4️⃣ 点击 "确认创建并部署"
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
💡 提示:部署完成后,如需使用 Git 维护项目,可运行:
git init && git add . && git commit -m "Initial commit"
然后在魔搭创空间的 Git 仓库页面获取远程地址并连接。
重要:所有部署方式都使用同一个页面:https://modelscope.cn/studios/create?template=quick
当用户明确要求“自动填表并提交”时,优先使用仓库脚本:
node scripts/modelscope-auto-submit.mjs \
--project-path <project_path> \
--english-name <english_name> \
--chinese-name <chinese_name> \
--description "<description>" \
--browser-channel chrome \
--visibility private \
--auto-submit \
--monitor-deploy \
--auto-fix \
--run-timeout-ms 1200000行为说明:
--auto-submit:自动点击“确认创建并部署”--monitor-deploy:提交后持续抓取部署日志--auto-fix:命中已知错误时,自动在本地项目中应用修复(例如 Docker entrypoint/registry 问题)--browser-channel:默认chrome(优先复用本机浏览器,避免下载卡住)--run-timeout-ms:限制脚本总时长,避免长时间死等
如果自动修复已应用,提醒用户重新运行脚本发起新一轮部署。
部署成功后,默认补做一次健康检查,优先使用仓库脚本:
node scripts/modelscope-studio-healthcheck.mjs \
--studio-url "https://modelscope.cn/studios/<user>/<studio>" \
--check-frontend \
--latest-log-count 10 \
--browser-channel chrome验收要求:
- 输出“最新 10 条日志”
- 前端图片上传可用
- bbox JSON 可解析并渲染到画布
- 无错误提示
| 项目 | english_name | chinese_name | description |
|---|---|---|---|
| bbox-viz | bbox-visualizer | 边界框可视化工具 | 纯前端边界框可视化工具,支持多种坐标格式 |
| chat-app | chat-assistant | 智能对话助手 | 基于 Qwen 的智能对话应用 |
| image-gen | image-generator | AI图像生成器 | 文本生成图像的 AI 工具 |
- 默认手动,按需自动化 - 默认给手动步骤;用户明确要求时执行自动提交脚本
- 用合理默认值 - 减少用户输入,使用免费资源配置
- 智能检测 - 根据现有文件推断项目类型
- 缺失文件提醒 - 特别注意 Dockerfile 需要询问确认
- Docker 端口 - Docker 类型必须使用 7860 端口
- CLI 输出 - 部署指南直接在 CLI 输出,不要写入文件
发生报错或页面异常时,先查阅:
references/post-deploy-troubleshooting-and-pr.md
若用户明确要求自动化网页提交流程,可使用仓库脚本:
scripts/modelscope-auto-submit.mjsscripts/open-modelscope-login.mjs(先打开登录页并复用同一 profile)scripts/modelscope-studio-healthcheck.mjs(部署后日志与前端可用性验收)- 详细参数说明:
references/playwright-auto-submit.md - 验收说明:
references/post-deploy-validation.md
执行前要求:
- 本机可用
node与npx - 已安装
playwright(建议npm install --save-dev playwright)
若用户要求走 Google 官方 MCP,可参考:
references/chrome-devtools-mcp-auto-submit.md
推荐配置(Codex/Claude 等):
- server:
chrome-devtools - command:
npx - args:
["-y", "chrome-devtools-mcp@latest"]