网络技术
第一天 上个月有一些做图的需求,手工搞了几张实在是烦了,就想着搞搞 AI 让它画图。
正好之前调研过这玩意的部署难度,在我拥有的设备里就 Windows 和 M1 最简单,Mac mini Inter 最难,本来想着在我的电脑上部署一个给同事调戏着玩,介于投入产出比太低就一直没做。
最后还是选择了室友的 Windows 部署,为什么选择了 Windows 呢,只是因为 M1 那晚在后备箱里睡着了。
忽略一些调研祛魅的过程,虽然过程很有意思,但过程有些个人化,所以先直接说答案。
Windows 方案 这是我能找到的最傻瓜的方案下载包,也是实践过的方案。
Stable Diffusion Webui - aki 整合包 v4.4 (Windows)下载地址 | 异次元软件 这里有个最低配置前提,不满足这个条件就不要硬上了。
显卡 显存 内存 硬盘 RTX 2060+ 8G+ 16G+ SSD 下载好之后一键启动就可以看到如下操作界面。接着就可以开始自己的炼丹之路了。
Stable Diffusion 懒人整合包 - 开源免费 AI 绘图工具神器 (简单入门绿色版解压即用) - 异次元软件下载
一些 Hugo 常用信息留存。
Hugo 使用的是 Go 语言自带的模板引擎, 模板的标签为{{}}, {{}}中包含的内容叫 动作 (action).
动作-action 动作分为两种类型
数据求值 控制结构 求值的结果会直接输出到模板中, 控制结构主要包含条件, 循环, 函数调用等. 点. {{.}} 点`.`代表传递给模板的数据, 表示当前模板的上下文, 他可以是go语言中的任何类型, 如: 字符串, 数组, 结构体等. 注释 {{/* comment */}} 空格处理 // 清除 pipeline 前后的空格 {{- pipeline -}} // 清除 pipeline 前面的空格 {{- pipeline }} // 清除 pipeline 后面的空格 {{ pipeline -}}
这两天的新闻是小猫咪纷纷删库,Page not found · GitHub - Dreamacro/clash
我确实也在用,以前没当一回事,但是有经验的一旦看到我电脑状态栏就很容易知道我用了啥,于是我就打算给状态栏的小猫咪穿个马甲。
这次忽略过程直接说方案,首先找到这个目录下的这个文件
通过经验对比发现它就是状态栏的图标
最近我有个需求,想用家里的智能音箱推送播放一些语音,用来做一些定时提醒和新闻推送,设备支持的话还能做 ChatGPT 的语音助手。
家里现在用的是首发的天猫精灵,我查了下这玩意很难做到自定义一些推送播放,硬件不支持那就只能软件先行。
市面上大部分的 TTS 服务都不是完全免费的,即使个人用也是那种有时间限制的一年内免费,虽然会在一年后要重新切换服务调整代码,但至少先把这个功能做起来。
做的过程中又想了一些使用场景
语音播放新闻摘要 一些敏感怕被截图的文字可以生成语音再发送(做了音频下载功能) 适老化辅助 搞了大概半个晚上搞完了,这里记录下,怕自己忘了。代码不多,也不贴了,有需要的可以留言。也可以直接用,测试玩玩可以,但别依赖,因为不知道哪天服务就停了 。
最近我自己有个需求,经常需要将在多个设备间互相发送信息,在陌生的设备又不想登录,通过三方软件中转的还需要安装软件,于是就打算搞个临时网页剪贴板,一些临时的文字信息就可以很方便的共享。
产品需求也不复杂,个人用的东西只需要做到 MVP 就行。
网页版,联网的浏览器设备随时都可以访问,域名自己好记 一处保存,多处查看 页面干净简洁,只需要简单的输入区 既然需要存储,那就少不了数据库,之前在 Vercel 了解到有个 KV 数据库,简单又快速,于是这次的存储也选择了 KV 数据库。
域名就先随便选一个常用的,后面切换也方便。这次我没有选择 Vercel,而是选择了 Cloudflare,因为域名也在 Cloudflare 上,搞起来比较方便。
没有评论功能的小站是不完整的,可以没有人用,但是一定要有。
静态网站是没有数据库的,一些需要数据存储的功能只能依赖第三方服务,评论功能就是其中之一。
很久之前也用过一些第三方的评论服务,不知道是否还有人记得多说,当时很有名,但是这种开放模式的网络服务是无法在新时代活下去的,这也是关闭之后才逐渐明白的道理,只要是正确的道理,什么时候明白也不算太晚。
现在的处境是服务内求无果,只能向外求,恰恰和心学相反。
搞过博客的应该都知道,文字版本的文章都很比较容易处理,而图片存储一直是一个难于抉择的问题。
如果是使用 WordPress 还好,可以直接后台上传。但是现在很多静态博客都是 Hexo 或者 Hugo 这种方式,没有独立的后台,如何上传图片就变成了一个不得不面对的问题。
刚迁移完小站的时候新图片我是放在了当前站点的 public 目录下,使用固定 images/ 的方式访问,如下↓ https://www.ppanda.com/images/3e04366b23d0490abb5dfdd6d1e8e5ca/Untitled%204.png 这会有个问题,一旦站点无法访问或者图片流量异常,就会导致整站任何资源都无法访问,而这又变成了一个风险。要有永远不要把鸡蛋放在一个笼子里的意识。
于是我打算把图片资源单独放在一个图床上,和小站的服务器资源分开,这样不但规避了高耦合的风险,还减少了图片有大量请求会拖垮源站的情况。
市面上的图床有很多,免费又好用的的却很少。我目前主要在用的是阿里云的 OSS 用来做静态资源存储,价格中庸品质还行,但是我现在还没有能备案的域名,阿里云 OSS 自动生成的域名看起来不太美观,所以阿里云暂时只能算是备选方案。
刚好最近在搞 Cloudflare,那么又到了薅 Cloudflare 羊毛的时候了。
Cloudflare R2 完全可以满足我的需求。要使用 R2,需要先绑定一种支付方式,因为我没有信用卡,所以付款方式我选择了 PayPal,在 paypal 里维护下借记卡就可以通过认证了。认证完毕之后需要配置下 bucket,起个好听的名字,让自己不会忘记。
先看下改革成果,本篇文章的图片都会来自 R2。
https://img.ppanda.com/y5.gif
在很早以前小站中有一个留言板功能,存储了所有留过言访客的 Gravatar 头像,然后我把他们组成了一个照片墙,并中二的称之为叹息之墙。但是随着空间到期和域名没续费这个墙就坍塌了,虽然当时的代码还在,但是数据已经难以回溯,现在想想不免有些遗憾。
于是我就在想,如何能找到一些有关系的头像重新组成新的叹息之墙呢,微信好友头像应该是目前能利用的最好素材了。
我抱着伸手党的态度试着搜了下获取微信好友头像 - Google 搜索,发现大部分的方案都过期了,而且微信好像已经不再提供网页版,登录网页版就会出现以下提示:
为了保障你的账号安全,暂不支持使用网页版微信。你可以前往微信官网 https://weixin.qq.com/ 下载客户端登录。
这就有点麻烦了
可是在墙里墙外徘徊穿梭这么多年的我是相信第一性原理的,方法论就是用来解决没有解决过的问题而存在的。
十一回来同事反馈搭建的 ChatGPT 服务无法访问了,我自己试了一下我这边确实是好的,但是我电脑的网络环境比较复杂,不具备太多的参考性,于是就用手机扫码访问了下,好家伙,联通号直接给我干到了反诈中心
又换了移动的流量卡访问了下,直接显示无法访问,那么服务大概率是被 wall 了。
没有办法,修吧。
好在十一前就搞了 Cloudflare,这网修起来就稍微简单了些
迁移完小站/域名/Notion/之后又打算顺便把之前的一些读书笔记也搬到小站来。
要做到这个需求
首先得有一份本地的读书笔记数据,最好是 markdown 其次要把这份本地数据原目录迁移到小站里 最后读书笔记的格式还要匹配小站的书写文章书写规则才能正确识别,包括时间排序和笔记展示形式 上面三个问题,单独看起来哪个都不是那么简单,但是好在我前期做了一些工作,无意间打通了需求的整个流程,有种善战者无赫赫之功的内心成就感。
我能较好整理的读书笔记几乎都在微信读书里,自从我开始用微信读书,大部分的读书笔记都选择微信读书这个平台来记录。这也直接造成了对平台有很大的依赖,这种依赖本身就是一种风险,对于个人是,对于国家也是。
那么来看看我是如何逐渐解除这个风险的