文章目录
- 安装pypushdeer
- 手机安装pushdeer
- 代码推送
- 实际使用中在项目下的utils中实现pushdeer.py模块
- 如何使用server3 Server酱³ 使用说明书
- wandb的使用,展示模型训练结果
- 注册
- 安装和配置流程
- 按照注册后的主页流程安装和登陆wandb
- 结合pushdeer的例子
- 结果观察
- 错误修正
安装pypushdeer
pip install pypushdeer手机安装pushdeer
会得到设备的key
pushdeer目前没有严格的推送限制,也就是一分钟60次,为了避免商用。
https://github.com/easychen/pushdeer/issues/83
可以和server酱联合使用,防止出现tx封锁公众号消息推送服务,pushdeer也有自建服务,相对稳定。
代码推送
from pypushdeer import PushDeer pushdeer = PushDeer(pushkey="your_push_key") pushdeer.send_text("hello world", desp="optional description") pushdeer.send_markdown("# hello world", desp="**optional** description in markdown") pushdeer.send_image("https://github.com/easychen/pushdeer/raw/main/doc/image/clipcode.png") pushdeer.send_image( "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVQYV2NgYAAAAAMAAWgmWQ0AAAAASUVORK5CYII=")实际使用中在项目下的utils中实现pushdeer.py模块
.py文件是模块 含有.py文件以及__init__.py文件的文件夹是包。
frompypushdeerimportPushDeerdefpush_deer(text="hello world"):pushdeer=PushDeer(pushkey="XXX")#从pushdeer ios app中获得pushdeer.send_text(text,desp="optional description")# pushdeer.send_markdown("# hello world", desp="**optional** description in markdown")# pushdeer.send_image("https://github.com/easychen/pushdeer/raw/main/doc/image/clipcode.png")# pushdeer.send_image(# "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVQYV2NgYAAAAAMAAWgmWQ0AAAAASUVORK5CYII=")然后在代码运行的主文件夹中,引入当前程序的跟路径(一般是程序所在的主文件夹);然后倒入pushdeer模块,并调用该模块下的push_deer()方法,发送消息推送。
import sys sys.path.append('/home/data/XXX/codespace/debate/XXX') from utils import fypushdeer fypushdeer.push_deer()如何使用server3 Server酱³ 使用说明书
https://doc.sc3.ft07.com/zh/serverchan3
wandb的使用,展示模型训练结果
注册
https://wandb.ai/home
安装和配置流程
https://wandb.ai/quickstart?utm_source=app-resource-center&utm_medium=app&utm_term=quickstart
按照注册后的主页流程安装和登陆wandb
页面中包括api key
登陆后,会在服务器的主目录下生成一个.netrc文件,其中保存了你的key和密令。
另外 wandb可以通过学校邮箱实现解锁全部功能。
下一次输入wandb login后不需要再次填入key,会默认自动登录
结合pushdeer的例子
importsys sys.path.append('/home/data/XXX/codespace/debate/XXX')fromutilsimportfypushdeer# 下面是模拟的训练过程importwandbimportrandom# start a new wandb run to track this scriptwandb.init(# set the wandb project where this run will be loggedproject="my-awesome-project",# track hyperparameters and run metadataconfig={"learning_rate":0.02,"architecture":"CNN","dataset":"CIFAR-100","epochs":10,})# simulate trainingepochs=10offset=random.random()/5forepochinrange(2,epochs):acc=1-2**-epoch-random.random()/epoch-offset loss=2**-epoch+random.random()/epoch+offset# log metrics to wandb 在每个epoch中,把你的指标记录到wandbwandb.log({"acc":acc,"loss":loss})# [optional] finish the wandb run, necessary in notebookswandb.finish()# push deerfypushdeer.push_deer()结果观察
进入网页中,可以查看对应项目每次运行的结果折线图。每次运行的结果会用不同的序号标注。
错误修正
如果在程序运行期间从网页上三处wandb run,会导致下一次运行的时候wandb.init()报错。
解决方案:去程序当中的wandb/latest-run文件夹下删除残留的文件