当前位置: 首页 > article >正文

SwanLab邮件通知插件:训练完成收到邮件,掌握训练进度更及时

在这里插入图片描述

如果你希望在训练完成/发生错误时,第一时间发送邮件通知你,那么非常推荐你使用邮件通知插件。

SwanLab插件均为开源代码,你可以在Github源代码中查看,欢迎提交你的建议和PR!

文章目录

    • 准备工作
    • 基本用法
    • 自由提醒
    • 限制

准备工作

在使用插件前,首先你需要准备开通你的邮箱的STMP服务。以QQ邮箱为例:

步骤 1:进入邮箱设置

  • 进入QQ邮箱网页,点击顶部的 ​​“设置”​
  • 在设置菜单中,选择 ​​“账号”​ 选项。

​步骤 2:开启SMTP服务

  • 找到 “POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务”
  • 在“服务状态”旁边,点击 “开启服务”
  • 经过一些身份验证流程后,完成STMP服务的开启
  • (重要)保存给到你的授权码

​步骤 3:记录以下信息

  • SMTP服务器地址: smtp.qq.com
  • 端口: 465(SSL加密)或 587(TLS加密)
  • 发送邮箱: 你的完整QQ邮箱地址(如 123456789@qq.com)
  • 密码: 使用你刚刚获取的 ​授权码,而不是QQ邮箱的登录密码。

其他的邮箱服务基本都支持STMP,可按照相似的流程开启服务。

基本用法

使用邮件通知插件的方法非常简单,只需要初始化1个EmailCallback对象:

from swanlab.plugin.notification import EmailCallback

# 初始化邮件通知插件
email_callback = EmailCallback(
    sender_email="<发送者邮箱,即开启SMTP服务的邮箱>",
    receiver_email="<接收者邮箱,即你想要收到邮件的邮件>",
    password="<你的授权码>",
    smtp_server="<你的邮箱服务器>",
    port=587,
    language="zh",
)

然后将email_callback对象传入swanlab.initcallbacks参数中:

swanlab.init(callbacks=[email_callback])

这样,当训练完成/发生错误时(触发swanlab.finish()),你将会收到邮件通知。

在这里插入图片描述

自由提醒

你还可以使用EmailCallback对象的send_email方法,发送自定义的邮件。

这在提醒你某些指标达到某个阈值时非常有用!

if accuracy > 0.95:
    # 自定义场景发送邮件
    email_callback.send_email(
        subject="SwanLab | Accuracy > 0.95",  # 邮件标题
        content=f"Current Accuracy: {accuracy}",  # 邮件内容
    )

限制

  • 邮件通知插件的训练完成/异常通知,使用的是SwanKitCallbackon_stop生命周期回调,所以如果你的进程被突然kill,或者训练机异常关机,那么会因为无法触发on_stop回调,从而导致未发送邮件通知。

  • 完善方案请期待SwanLab平台开放API上线。


http://www.kler.cn/a/589590.html

相关文章:

  • 全栈网络安全-渗透测试-2
  • Linux 脚本Shell 的应用场景
  • 莱姆森科技携手东莞市农林水务局助力乡村振兴 佛顶山村食堂建设项目圆满竣工
  • 计算机网络笔记再战——理解几个经典的协议HTTP章3
  • java多线程基础
  • Ubuntu零基础学习---基础指令
  • 依赖倒置 DIP、依赖注入 DI、控制反转 IoC 和工厂模式
  • Kotlin-inline函数特效
  • 【从0到1搞懂大模型】RNN基础(4)
  • Spring组件初始化扩展点:BeanPostProcessor
  • MacOS 15.3.1 安装 GPG 提示Error: unknown or unsupported macOS version: :dunno
  • Java---SpringMVC(2)
  • 自然语言处理(NLP)核心技术深度解析
  • ReLU对决Leaky ReLU:深度学习的生死博弈
  • 系统盘的制作
  • [蓝桥杯](布尔类型dfs)全球变暖
  • Ollama + CherryStudio:构建本地私有知识库
  • CC45.【C++ Cont】STL中的哈希表及练习
  • 定时器‘PWM和串口通信(20250317)
  • cesium 实现万级管网数据渲染,及pickImageryLayerFeatures原生方法改写