ModelScope 魔搭社区的免费 Notebook,有一个坑,关闭浏览器就停实例
ModelScope 魔搭社区的免费 Notebook,有一个坑,关闭浏览器就停实例
你用的是 ModelScope 魔搭社区的免费 Notebook,不是阿里云的 PAI-DSW(虽然界面长得像)。这是两个完全不同的东西:

关键区别
| ModelScope Notebook (你现在用的) | 阿里云 PAI-DSW | |
|---|---|---|
| 关闭策略 | 关闭浏览器/断网后自动释放实例 | 可以后台运行,支持定时关机 |
| 持久化 | 实例释放后数据丢失(除非存到数据集/OSS) | 有持久化存储,实例停止数据保留 |
| tmux 效果 | ❌ 没用,因为整个容器被销毁了 | ✅ tmux/screen 有效 |
| 费用 | 免费(有算力额度限制) | 按量付费/包年包月 |
为什么 tmux 没用?
ModelScope 的免费 Notebook 是无状态容器:
- 关闭浏览器 tab → 检测到 WebSocket 断开 → 一段时间后自动销毁容器
- tmux 是进程级工具,容器都没了,里面的进程自然全死
解决方案
哎,这就非常坑了!看来 ModelScope 的免费 Notebook 是底层硬件级别的强制回收——它检测到你的浏览器 WebSocket 断开,就直接把整个容器(包括 tmux 所在的 Linux 环境)给挂起或销毁了。这种情况下,任何命令行技巧(tmux、nohup)都无能为力。
既然你今晚就想关机睡觉,但又不得不让网页开着,这里有几个**“保命”大招和长期解决方案**:
今晚怎么办?(让网页强行保持连接)
你遇到的情况很常见——很多浏览器扩展插件名称可能不同,或者已被下架、更新,导致在应用市场搜不到。别急,我会帮你分析原因,并提供切实可行的解决方案。
🔍 先了解为什么找不到插件
浏览器扩展(尤其是名称简单、通用的)经常遇到以下情况:
- 名称变更或下架:开发者可能更新了名称,或者插件已被下架。
- 浏览器兼容性问题:你使用的浏览器(如Edge)与Chrome扩展商店的兼容性设置问题。
- 搜索关键词误差:插件名称可能有细微差别(如"KeepAlive" vs “Keep Alive”)。
🛠️ 实用解决方案:让网页保持活跃
以下方法按推荐度排序,你可以逐一尝试。
方法一:使用浏览器控制台代码(最简单、免安装)
这是最直接有效的方法,原理是通过JavaScript模拟用户活动,防止网页因“无操作”而被判定为休眠。
操作步骤:
- 在你打开ModelScope Notebook的网页标签页上,按下
F12键打开开发者工具。 - 点击顶部标签栏的
Console(控制台)。 - 将以下代码复制并粘贴到控制台最下方的输入框中,然后按回车键执行:
function keepAlive() {
// 模拟鼠标移动事件
document.dispatchEvent(new MouseEvent('mousemove', {
'bubbles': true,
'cancelable': true,
'view': window,
'detail': 0,
'clientX': Math.random() * 100,
'clientY': Math.random() * 100
}));
// 模拟极微小的滚动
window.scrollBy(0, (Math.random() > 0.5 ? 1 : -1));
// 输出日志,方便确认运行
console.log('保活心跳:', new Date().toLocaleTimeString());
}
// 每30秒执行一次
setInterval(keepAlive, 30000);
- 保持这个网页标签页打开,并且不要关闭开发者工具面板(可以将其最小化)。你只需确保电脑本身不休眠即可。
💡 小贴士:执行后,你会在控制台看到每隔30秒打印一条“保活心跳”日志,这表示代码正在运行。关闭浏览器或电脑休眠会中断。
方法二:安装确实存在的替代扩展
以下是一些确实存在且功能相近的扩展,你可以直接在浏览器扩展商店中搜索它们的全称:
Browser Mouse Jiggler MT Auto Clicker Stay Awake Pro
在这里插入图片描述




方法三:调整浏览器和系统设置防止睡眠
这是从根源上防止浏览器标签页被休眠的方法。
1. 禁用Edge浏览器的“睡眠标签页”功能(关键步骤):
* 进入 设置 > 系统和性能。
* 找到 使用效率模式 或 睡眠标签页 选项,将其关闭。
* 在下方 始终保持这些网站活跃 中,点击 添加网站,输入 www.modelscope.cn 并添加。
2. 调整Windows电源设置(防止电脑休眠):
* 按 Win + R,输入 control 打开控制面板。
* 进入 电源选项 > 更改计划设置。
* 将 关闭显示器 和 使计算机进入睡眠状态 都设置为 从不。
* 点击 更改高级电源设置,展开 睡眠,将 允许混合睡眠 设置为 关闭,在此时间后睡眠 设置为 从不。
方法四:使用油猴脚本(Tampermonkey)
如果你安装了油猴扩展,可以编写一个用户脚本实现保活,功能更强大。
- 安装
Tampermonkey扩展。 - 点击油猴图标,选择
添加新脚本。 - 将以下代码粘贴进去并保存:
// ==UserScript==
// @name ModelScope Keep Alive
// @namespace http://tampermonkey.net/
// @version 0.1
// @description 防止ModelScope Notebook因无操作而断开
// @author You
// @match *://*.modelscope.cn/*
// @grant none
// ==/UserScript==
(function() {
'use strict';
function keepAlive() {
document.dispatchEvent(new MouseEvent('mousemove', {
bubbles: true,
cancelable: true,
view: window,
detail: 0,
clientX: Math.random() * 100,
clientY: Math.random() * 100
}));
console.log('Tampermonkey保活心跳:', new Date().toLocaleTimeString());
}
setInterval(keepAlive, 30000);
})();
📋 方案总结与建议
为了让你更清晰地选择,我总结了各种方案的优缺点:
⚠️ 重要提醒
- 组合使用:为确保万无一失,建议方法一(控制台代码)+ 方法三(调整设置) 同时使用。这是最保险的组合。
- 网络稳定性:除了网页保活,也要确保你的网络连接稳定。如果网络本身不稳定,断开的风险很高。
- 最终方案:如果以上所有方法都无法解决你当前的问题,并且你需要长时间稳定运行任务,那么强烈建议你考虑将任务迁移到其他更适合长时间运行的平台,如:
- Kaggle Notebooks:关闭网页后仍可后台运行约9-12小时。
- AutoDL/恒源云:按量付费的云GPU平台,关机不扣费,实例可长期保留,随时重连,最适合跑过夜任务。
希望这些方案能帮你解决问题!如果你在尝试过程中遇到任何疑问,或者想了解某个平台的更详细使用方法,随时可以再问我。
2. 浏览器开发者工具“挂机脚本”(免安装)
如果你不想装插件,可以在当前网页按下 F12 打开开发者工具,切换到 Console(控制台) 标签页,粘贴以下代码并回车:
function keepAlive() {
console.log("防断网心跳:", new Date().toLocaleTimeString());
document.title = "运行中 - " + Math.random(); // 改变标题模拟操作
}
setInterval(keepAlive, 30000); // 每30秒执行一次
只要不关闭这个浏览器标签页,电脑不休眠,这个脚本就会一直运行,防止网页因超时断开。
3. 电脑设置:坚决不休眠
确保你的电脑(尤其是笔记本)设置成:
- 关闭屏幕时间:从不(或者设为1小时后关屏幕,但系统不能睡)
- 系统休眠时间:从不
- (Mac 用户:系统设置 -> 电池 -> 选项 -> 勾选“防止自动进入睡眠”)
其他参考插件
| 扩展名称 (全称) | 功能描述 | 适用浏览器 |
|---|---|---|
| Keep Browser Alive | 防止浏览器进入睡眠状态,保持后台运行。 | Chrome, Edge |
| Page Keep-Alive(存疑) | 防止页面因后台不活跃而被冻结或休眠。 | Chrome , Edge(没有) |
| Auto Refresh | 自动刷新网页,间隔可设,适合防止超时断开。 | Chrome, Edge |
| 安装方法(以Edge为例): |
- 点击浏览器右上角
...>扩展。 - 在打开的扩展页面左下角,打开
开发人员模式和允许来自其他应用商店的扩展。 - 在搜索框中输入上述扩展的全称,找到后点击
获取或添加至 Chrome进行安装。
彻底解决:以后别在 Notebook 里跑长任务
既然摸清了 ModelScope Notebook 的尿性,以后千万别用它跑需要过夜的任务。你有两个更好的选择:
方案一:使用 ModelScope 的“模型训练”功能(官方正解)
ModelScope 其实提供了脱离 Notebook 的云端训练任务。你把代码和数据准备好,提交一个 “训练任务”。
这个任务一旦提交,就是在阿里云后台独立运行的,不需要你开着网页,跑完了会通知你。这才是正确使用 ModelScope 算力的方式。
方案二:转战 Kaggle(免费且支持后台)
如果你只是需要免费的 GPU 跑过夜任务,Kaggle 是目前体验最好的。
- 每周免费 30 小时 GPU。
- 关键点:Kaggle 的 Notebook 关闭网页后,代码会继续在后台运行(最长可达 12 小时左右)。你完全可以提交后安心去睡觉,第二天早上来看结果。
方案三:花几毛钱用 AutoDL
如果模型大、时间长,建议直接花点小钱用 AutoDL 或恒源云。租个机器,关掉网页、甚至关机都没事,实例给你保留,随时重连,一小时也就一两块钱,省心省力。
总结建议:今晚先用 F12 控制台脚本 + 电脑不休眠 顶着。等这次跑完,赶紧把代码迁移到 Kaggle 或者直接提交 ModelScope 的训练任务去跑吧!
方案 1:用 ModelScope 的「后台任务」功能
ModelScope 支持提交离线训练任务(不是交互式 Notebook):
- 代码写到
.py文件 → 提交为训练任务 → 在后台跑完 - 结果可以保存到数据集或 OSS
- 路径:
模型库→ 选模型 →训练→创建训练任务
方案 2:换用阿里云 PAI-DSW(付费)
如果你需要长时间训练:
- 阿里云 PAI-DSW 实例停止后数据保留,支持后台运行
- 可以配 NAS/OSS 持久化存储
- 价格:GPU 实例约几毛到几块/小时
方案 3:代码自动保存 + 断点续训
在 Notebook 里加保存逻辑:
# 定期保存 checkpoint 到 ModelScope 数据集
from modelscope.hub.api import HubApi
api = HubApi()
# 或者简单点:把模型权重 push 到 HuggingFace/ModelScope Hub
方案 4:用本地机器 / 其他云服务器
如果你有其他 GPU 资源,SSH 上去用 tmux 就正常了。
总结:免费午餐有代价,ModelScope Notebook 就是给你临时调试代码用的,不适合跑长时间任务。要后台跑,要么用它的离线训练任务,要么上付费的 PAI-DSW。
方案 1:用 ModelScope 的「后台任务」功能
ModelScope 支持提交离线训练任务(不是交互式 Notebook):
代码写到 .py 文件 → 提交为训练任务 → 在后台跑完
结果可以保存到数据集或 OSS
路径:模型库 → 选模型 → 训练 → 创建训练任务 可以自己上传模型吗
更多推荐


所有评论(0)