🛠️ 开发工具与插件
未读简介在这篇文章中,我将以一个实际项目为例,带你从零开始学习 Chrome 插件开发。我们将开发一个图片上传工具,它能帮助博主快速处理和上传图片。通过这个项目,你将学习到 Chrome 插件开发的基础知识和实战技巧。 为什么要开发这个插件?作为一名技术博主,我经常需要在文章中插入图片。每次处理图片都需要经过以下步骤: 在网上找到合适的图片 下载到本地 压缩图片 转换格式 上传到图床 复制链接 插入 Markdown 标签 这个过程不仅耗时,而且每添加一张图片都要重复一遍。作为一个程序员,我觉得这种重复性的工作应该被自动化。这就是我开发这个 Chrome 插件的初衷。 解决方案:Chrome 扩展为了解决这个问题,我开发了一个 Chrome 扩展:Image Uploader。它能让你通过简单的右键点击就完成上述所有步骤。 主要功能 一键上传:右键点击网页上的任何图片,选择”上传图片”即可 自动压缩:可配置的图片压缩功能,平衡图片质量和文件大小 格式转换:支持将图片转换为 WebP 格式,进一步优化加载性能 多语言支持:支持中文和英文界面 自定义配置:可设置自己的图床 API ...
🤖 AI:人工智障
未读在上一篇 AI助力博客创作:自动生成摘要与标签的实战指南 中使用 AI 自动生成文章摘要和 Tags, 这次我们依旧利用 AI 来帮我们为文章进行智能分类. 理解分类和标签分类 (Categories)在图书馆中,每本书都会被归入一个特定的分类。我们所熟知的图书馆分类系统,例如杜威十进制分类法,便是依据主题将书籍进行系统划分的工具。杜威分类法将书籍划分为十个主要类别(如哲学、社会科学、语言学、自然科学等),并在此基础上根据主题进一步细分为子类。 将这一概念类比至博客分类,可以视作一种类似图书馆的分类体系,旨在将文章按照主题进行有序组织。例如,“编程技术”作为一个主要类别,类似于图书馆中的“技术科学类”,在此主类别下,又可细分为“前端开发”、“后端开发”、“数据库”等子分类,这与图书馆的子类系统颇为相似。 主要特点: 层次感强:一个大类下可以有多个子分类,比如 “编程” 下面可以再分成 “Java”、“Python” 等。 一个分类为主:每篇文章通常会归入一个主要的分类,帮助读者明确文章的核心主题。 作用: 帮助读者导航:让人一进来就知道文章讲的是哪个大方向。 SEO 加分:搜索 ...
🤖 AI:人工智障
未读在信息爆炸的时代,如何让您的博客内容在浩如烟海的资讯中脱颖而出,成为吸引读者眼球的关键。而标签和摘要在这一过程中扮演着至关重要的角色。今天,我们将探讨如何利用 AI 技术为博客自动生成标签和摘要,从而提升内容的可发现性和阅读体验。 标签与摘要的重要性标签是博客内容的“关键词”,它们能够简洁、直观地反映文章的主题和核心内容。好的标签不仅有助于搜索引擎优化(SEO),还能引导读者快速找到感兴趣的内容。摘则是博客的“门面”,它以简短的文字概括文章的主要内容,激发读者的阅读兴趣。一个吸引人的摘要能够有效地提高文章的点击率。 AI 在标签和摘要生成中的优势传统上,标签和摘要的生成依赖于人工撰写,这不仅耗时耗力,而且难以保证一致性和准确性。而 AI 技术的引入,为这一领域带来了革命性的变化: 高效性:AI 能够快速处理大量文本,生成标签和摘要在短时间内完成,大大提高了内容发布的效率。 准确性:通过机器学习算法,AI 能够准确识别文章的主题和关键信息,生成相关度高的标签和摘要。 个性化:AI 可以根据不同的内容和风格需求,定制化的生成标签和摘要,满足多样化的内容创作需求。 AI 生成标签 ...
简介随着博客文章的数量不断增加,尤其是长篇文章中需要插入大量图片,发布一篇博客变得更加复杂。这包括图片的剪切、格式转换、清理多余图片、上传图床、替换 Markdown 中的图片标签,以及最终发布到站点。如果全程手动操作,无疑会非常繁琐。为了解决这个问题,我将这些步骤全部实现为独立的脚本,最后通过 Makefile 将它们串联起来,打造了一套完整的 Hexo 部署工作流。 那么接下来就是讲怎么实现这个流程了, 这里就以 Hexo 为例, 只要了解整个思路, 我觉得其他的任何博客都可以实现这套流程. 图片处理一图胜千言,因此我非常喜欢在博客中插入大量图片。无论是截图、网络图片,还是用 Drawio 绘制的 SVG,精心挑选的配图不仅能够提升博客的视觉效果,还能直观地增强内容的表达力和吸引力。 以前我对图片的处理步骤大致为: 第一步是使用截图工具简单的处理一下图片, 比如截图, 调整尺寸, 打马赛克, 添加圆角, 添加阴影等等; 第二步是将图片转换成 webp, 尽量在保证图片质量的前提下减小图片尺寸; 第三步就是上传到图床, 然后替换原来的图片标签; 上面的步骤是一个正向流程, ...
🏠 HomeLab:中年男人之友
未读如果你使用的是群晖 NAS (本文在 DSM 7.2 版本测试通过),可能会遇到无法下载 Docker 镜像的情况。通过配置代理,你可以轻松绕过这些限制,顺利下载和更新镜像。本教程教你如何为 Docker 设置代理,让 Docker 本身的网络请求走你指定的 HTTP 或 SOCKS5 代理服务器。 为什么需要代理?国内目前网络环境可能会限制你访问 Docker 镜像库(例如 docker pull 等操作),尤其是官方的国外镜像库。配置 HTTP 或 SOCKS5 代理可以让你绕过这些限制,顺畅地拉取镜像。 操作步骤1. 登录到群晖 NAS首先,你需要通过 SSH 连接到你的群晖 NAS。在 DSM 中,进入 控制面板 > 终端机与 SNMP,启用 SSH 服务。然后打开命令行工具(Windows 用 PuTTY,Mac 或 Linux 用 Terminal),输入以下命令:(命令回车执行) [CMD] Windows SSH 连接服务器教程 (系统自带方式) 替换 <用户名> 为你的群晖管理员用户名,<NAS_IP> 为 NAS 的 IP 地址。接 ...
🛠️ 开发工具与插件
未读背景最近在进行博客迁移, 以前吃过图床的亏, 所以这次将图片全部保留在本地, 并使用 GitHub 和 Gitee 来作备份, 但是因为大量的图片提交导致出发了 Gitee 的仓库体积限制, 在最近几次提交时, 出现了如下错误: 12345678910remote: Powered by GITEE.COM [1.1.5]remote: Set trace flag 784c0784remote: Repo size: 1077.199MB, exceeds quota 1024MBremote: Push rejected for repository [size exceeds limit]remote: HelpLink: https://gitee.com/help/articles/4232remote: Repository GC: https://gitee.com/xxx/hexo-site/settings#git-gcremote: Enterprise Edition: https://gitee.com/enterprises#c ...
🤖 AI:人工智障
未读简介最近 ComfyUI Desktop 发布了 Bate 版本,但是安装的时候遇到了一些问题,记录一下。 问题这次我尝试第二次安装 ComfyUI-Desktop,版本 0.3.33(241212)。自动安装没有成功。在查看日志并手动运行缺失的命令后,安装成功。想给遇到同样问题的朋友一个解决方法。我不知道这是否是一个 bug,但它在我的机器上没有正确部署。 解决这是我第一次安装时遇到的问题,似乎 0.3.33 版本已经修复了它,但我在 zsh 下仍然遇到问题, 所以这次我将仅使用初始 .zshrc 文件: 1234export ZSH="$HOME/.oh-my-zsh"ZSH_THEME="robbyrussell"plugins=(git)source $ZSH/oh-my-zsh.sh 然后尝试首次启动: 日志如下: 1234567891011121314[2024-12-14 22:01:21.481] [info] Running command: /Users/dong4j/comfy/ComfyUI/.venv/bin/p ...
🤖 AI:人工智障
未读简介在这个信息泛滥的时代,我们每天都在互联网上接收到大量的内容,包括吸引人的文章、实用的工具和转瞬即逝的灵感。我们都希望能够随时访问这些内容。 然而,我过去习惯使用 Things、Memos 或 Reeder 来收集这些内容,但随着时间的推移,收藏的文章数量越来越多,查找起来变得非常麻烦。而且,另一个让我不满意的地方是,这些工具只能展示链接,而无法显示标题和简要内容,这给后来的整理工作带来了一些困扰。 更多的时候,我们只是在收藏这些信息,却从未再次打开过它们,这并没有解决我们对信息管理的根本问题。 因此,今天我要介绍的是 Hoarder——一款专为数据收集者量身定做的自托管书签应用。它集成了 AI 智能标签和强大的全文搜索功能,彻底改变了我们的信息处理和保存方式。 想象一下,无论是深夜阅读到的深度文章还是清晨灵感迸发的图片,都可以轻松一键保存,随时随地进行自由访问。即使在无法一键保存的情况下,将链接复制到 Hoarder 中也能显示标题、图片等关键信息,这使得它比 Things、Memos 这类工具更加好用。 Hoarder 是什么Hoarder 是一个开源的 “Bookmark E ...
🖥️ 基础设施与运维
未读背景事情的起因是 ComfyUI 官网出桌面版了, 虽然是 Bete 版本, 当还是准备试用一下, 结果第一步安装环境就卡住了: The default interactive shell is now zsh. To update your account to use zsh, please run 'chsh -s bin/zsh'. 这个再熟悉不过了, 提示我们更新 shell 为 zsh, 但是我并不想更新, 我并不想把 zsh 用作我的默认 shell, 因为 zhs 的启动时间太长. 这个问题是在将老系统迁移到新买的 MBP 时出现的, 现象是将 zsh 作为默认 shell 后, 每次打开终端都需要等待 1-2 分钟, 才出现提示符. 这显然是不能接受的. 后来使用 Command 直接指定 /bin/zsh 就可以了, 也就没在深究这个问题. 但今天这个问题逃不过去了, 就开始研究一下, 彻底解决这个问题. shell 配置加载顺序因为现象是使用默认的 /bin/bash , 然后直接是用 /bin/zsh 切换到 zsh 打开速度很快. ...
🏠 HomeLab:中年男人之友
未读简介 步入中年的人生道路,10GB 以太网口不只是性能的简单提升,它更像是一扇通往新生活的大门。这扇门之后,是丰盈的路由器、交换机和 NAS 的世界,能够让你的中年时光更加充实、更加快乐! 在我家 2.5G 网络的陪伴下, 已经度过了三个充满活力的年头. 这段时光里, 我的网络稳定可靠, 成为了家中信息高速公路的坚实基石. 然而, 随着科技的快速发展和生活需求的变化, 我发现原本强大的 2.5G 网络已经无法满足未来几年日益增长的需求. 期间一直在犹豫是否升级到万兆, 因为 MBP M1 作为我的主力机, 担心万兆网卡兼容性和稳定性问题, 当然也有成熟的雷雳网卡可供选择, 但是价格高的离谱. 最近, 各种升级方案陆续出现, 价格也逐渐符合我的预算. 同时, 家中使用的万兆设备也越来越多. 这一切让我意识到升级到万兆网络的时机已经到了. 在这篇博客中, 我将分享从犹豫不决到决定升级 10G 网络的决策过程. 详细介绍第一次接触的光纤和光模块的相关知识, 一步步地讲解设备购买、网络拓扑设计、网络环境配置和网络测试等方面的细节. 相关文章: 先导篇:我的 HomeLab 概要; ...
🤖 AI:人工智障
未读简介最近在玩儿 检索增强生成(RAG,Retrieval Augmented Generation), 本地部署了一套 dify, 应该算是 RAG 功能最全的开源项目了, 可以集成工大厂商的 AI API 以及自建的 LLM 服务. 所以就用 dify 做了一个个人知识库, 数据来源与博客内容. dify 的部署以及使用可查看官方文档, 写的非常详细, 这里只是介绍一下如何将 dify 集成到 hexo 的博客中. 根据 官方文档 的说明, 我选择使用 script 标签方式 集成 dify 到博客中, 这种方式会有一个聊天机器人按钮, 不会影响博客的整体体验: 集成首先从 dify 获取嵌入到网站中的代码, 比如下面这样: 1234567891011121314151617181920<script> window.difyChatbotConfig = { token: 'xxxxxxxxxxxx', baseUrl: 'http://192.168.1.2' }</script>< ...
🏠 HomeLab:中年男人之友
未读简介在 基于树莓派的视频推流方案 我们尝试了通过树莓派推流到流媒体服务器, 然后通过 Web 查看视频, 这次我们来尝试一下通过树莓派控制舵机. 想法这这样的, 使用一个 Web 页面实时展示 2 个摄像头的画面, 然后通过 PCA9685 舵机来控制摄像头角度.这样就可以实现一个简单的监控了. PCA9685PCA9685 是 NXP 生产的一款 16 通道 PWM(脉宽调制)控制器,主要用于驱动 LED 或舵机,广泛应用于机器人、灯光控制和 DIY 电子项目。 主要特点 16 路独立 PWM 输出(每个通道 12 位分辨率,0~4096 可调)。 I²C 接口通信,地址可调(0x40~0x7F)。 频率可调,支持 24Hz~1526Hz 的 PWM 频率。 支持外部时钟(适用于需要更高精度的场景)。 可编程 LED 亮度控制,支持单独和分组控制。 工作电压:2.3V~5.5V(兼容 3.3V 和 5V 逻辑电平)。 最大输出电流:每个通道 25mA(默认),最大 400mA(所有通道总电流)。 接线方式: 外接供电: 驱动板右侧的黑黄蓝红 4 条线的接法毫无争议。关键是 ...
🖥️ 基础设施与运维
未读为了满足燃气站设备的安全、维护、效率、合规和技术发展等多方面的需求。通过实施该解决方案,实现实现无人值守的目的, 提高燃气站设备的安全性和运行效率,降低运营成本。 需求 通过连接本地 IPC 和 NVR 实现视频展示功能, 已达到安全巡检的目的; 连接燃气站内部 门禁 系统, 通过局域网定时探活的方式监测门禁设备运行情况; 使用 SNMP 协议监测 网络交换机 的实时运行情况, 包括以下内容: 端口占用情况 上下行的数据流量 其他关键参数信息 获取运行日志并上传 温度、负荷 监测 UPS 设备, 收集电池, 当前功率等相关的数据; 空调 控制, 包括温度调节, 启停等操作; 环境监测, 包括温度, 湿度, 噪音等数据; 柴油发电机检测, 需要做到市电停自动启动柴发, 市电来只有停止柴发; IPC, 网络交换机等关键设备能够实现 远程重启; 收集所有设备到的 状态(在线/离线) 数据; 站内数据可以集中展示在场站内部的 显示屏 上, 并能够实时上报到云平台; 当市电断电且 UPS 电量耗尽后还能够通过 4G 的方式持续上报设备数据到云平台; 提供扩展模块用于后续新设 ...
🙉 Zeka.Stack
未读首先我们需要明确什么是 基础框架 以及 基础框架 能给我们带来怎样的便利从而方便开发者快速根据业务需求构建可实施的业务项目. 1.1 什么是基础框架1.1.1 定义 框架(framework)是整个或部分系统的 可重用 设计,表现为一组抽象构件及构件实例间 交互 的方法,另一种定义为,框架是可被应用开发者定制的应用 骨架。 框架是一个 可复用 的设计构件,通常以 构件库 的形式出现,但构架库只是框架的一个重要部分,框架的关键在于框架内对象间的的交互模式和控制流模式。 从定义可以得出, 框架是一种 可复用 构件, 以 构件库 的方式加入到业务代码中, 从而避免重复开发达到复用的目的. 每个公司都会或多或少根据自己公司业务封装内部的开发基础框架. 比如蚂蚁金服基于 Spring Boot 自研的 SOFA, 属于金融级别的微服务框架; Vert.x 基于 Netty 封装的基于事件的异步框架; Dubbo 是一个高性能的、基于 Java 的开源 RPC 框架等. 考虑到面向的领域,以及实现编码实现,我们可以将将框架至少分为三类: 基础类库: 包含多数项目所需要的类库, 开发人员 ...























