做了一个Serverless的仿discuz验证码识别器
在 Cloudflare Worker 中部署,纯原生 JavaScript 手写实现 2D 卷积、池化以及图像协议解码,最终将 AI 识别任务压缩到了极致的 ~ 400KB(FP32) 和 ~ 100KB(INT8),且做到 0 依赖运行。可以识别 类discuz 的 BMP、PNG、GIF 的简单验证码(过于复杂的码识别能力很差)。
在 Cloudflare Worker 中部署,纯原生 JavaScript 手写实现 2D 卷积、池化以及图像协议解码,最终将 AI 识别任务压缩到了极致的 ~ 400KB(FP32) 和 ~ 100KB(INT8),且做到 0 依赖运行。可以识别 类discuz 的 BMP、PNG、GIF 的简单验证码(过于复杂的码识别能力很差)。
在 Cloudflare Worker 中部署,通过纯 JavaScript 在内存中构建像素矩阵,利用 V8 引擎原生的 CompressionStream API 打包生成 PNG 图片。可用于AI训练数据的生成等。
学校的 wifi 有 ap 隔离,在同一wifi下使用 Tailscale 打洞连接极其不稳定,于是设置了强制Tailscale走Derp中转(顺便吐槽宿舍的有限网口居然只是摆设…)。Tailscale 预留了专门用于开发测试的环境变量:TS_DEBUG_ALWAYS_USE_DERP=true,带上变量启动即可:
1 | TS_DEBUG_ALWAYS_USE_DERP=true tailscaled |
从google fonts里可以找想要的字体。
某度网盘貌似可以用多个普通账户生成同一个文件的链接,用 aria2 多源下载 来一定程度加快下载。不过我没有太多百度账号,用两个账户来下载貌似比一个账户快了几十 kb/s 。(挺鸡肋)
aria2不进行ETag一致性检验,所以命令很简单:
1 | fetch('http://localhost:6800/jsonrpc', { |
我ipad的系统停在ios15养老,但是真的要被Safari恶心坏了,现在登不了谷歌账号,chatgpt也登录不了,github网页一半内容显示不了。还有各种莫名其妙的bug。目前网上也找不到任何non-webkit浏览器的ipa,没办法只有折腾虚拟机了。
Vaultwarden 是一个使用 Rust 编写的非官方 Bitwarden 服务器实现,与Bitwarden 客户端兼容。Bitwarden是一个挺好用的密码管理器。我服务器内存和硬盘空间都太小了,不想使用docker版本。
之前给ssh用了白名单。不过邮件服务的端口还在被爆破。网上冲浪看到fail2ban挺好用,于是安装了试试。
不过我服务器上的dovecot的日志格式不符合fail2ban默认配置的正则,dovecot官网上的也不能用,我配置文件也没改关于日志的内容啊。稍微改了一下才能用。
照网上搜到的内容给icarus加了夜间模式。改了一部分css和js,主要是给夜间模式加上了背景图,并能够在切换模式的时候自由切换,判断系统是否处于深色模式的部分也改了一下。然后切换模式的时候会重新生成 Mermaid 图来匹配模式。
Update your browser to view this website correctly.&npsb;Update my browser now