
用 4000 张图训一个牙科照片分类器:从 VL 大模型试错到 ResNet-18 落地
做口腔诊断系统时遇到一个体验痛点:医生提交病例需要上传 10 类照片(X 光片、面部照片、口腔内照片),每次都要手动逐张选择分类、逐张上传。能不能一次拖入所有照片,系统自动识别分类? 这篇文章记录我从零开始的完整过程:先试 VL 大模型零样本分类碰壁,再用迁移学习训练专用小模型,最终部署上线的全链路实践。 问题定义 10 个分类,涵盖三个大类: 大类 ...

做口腔诊断系统时遇到一个体验痛点:医生提交病例需要上传 10 类照片(X 光片、面部照片、口腔内照片),每次都要手动逐张选择分类、逐张上传。能不能一次拖入所有照片,系统自动识别分类? 这篇文章记录我从零开始的完整过程:先试 VL 大模型零样本分类碰壁,再用迁移学习训练专用小模型,最终部署上线的全链路实践。 问题定义 10 个分类,涵盖三个大类: 大类 ...

这两年别人问我「有没有好用的数据库客户端」,我一开始是回避的:手上的库越来越杂,MySQL、PostgreSQL、Redis、MongoDB、ClickHouse 各配一个客户端,许可证、平台限制、更新节奏全不一样,推荐谁都显得偏心。直到我把 DBX 用成了主力,并且以贡献者的身份给它写完了一整个 Salesforce 驱动之后,我可以不回避了:这就是我现在会第一个推荐的名字。 先给结论,...

前阵子线上出了一个很有意思的偶发报错:一个对接第三方物流开放平台的查询服务,一天几十次调用里只有一次失败,报 token response is empty,之后 30 天再没复现。顺着日志和源码查下来,根因是一个非常经典的并发问题——手写缓存的 check-then-act 竞态。而修复它,只需要把两行代码换成 Caffeine 的一个方法调用。 这篇就借这个案例,把 Caffeine ...

~/.ssh 是那种配好就再也不看的目录——直到某天换机器、加账号,或者 git push 突然开始报 Permission denied (publickey),才会发现里面躺着一堆自己都认不出来的文件。这几天整理密钥,顺手把自己的配置逐行过了一遍,发现里面其实塞了不少 SSH 的典型用法:443 端口连 GitHub、一台机器三个 GitHub 账号、云效、走 Tailscale 的内网...

密码和各种 token 都放在 Bitwarden 里,但总有些时刻你需要在终端里拿到它们:脚本里要导出一个 GitHub token、命令行登录某个服务要临时取个 2FA 验证码、本地起服务要注入数据库密码。浏览器插件管不了这些场景——Bitwarden 官方提供了命令行工具 bw,登录解锁之后,整个密码库都能在命令行里读写。我在 Mac 上用了一段时间,这篇把安装、登录、取密钥、备份的完...

这个博客从 2010 年开站,主题还是当年手改的 Jekyll 默认模板,十几年下来积累了不少历史包袱:标签越打越散、代码块还在用 Google Code Prettify 的 <pre class="prettyprint">、统计用的 Universal Analytics 早被 Google 停服、评论区干脆没有。这次花了点时间一次性翻新,做了五件事:整理标签和分类、迁移 ...

一台机器上同时有几个 git 身份是很常见的:个人 GitHub、公司仓库、也许还有几个上古马甲号。全局配置只能写一个身份,靠”每个仓库手动设 local”又吃记忆力——忘了设,就会把公司邮箱写进个人仓库的历史里,或者用一个拼错的邮箱提交(GitHub 根本不把这些 commit 算你头上)。踩完坑之后我换成了按远程地址条件包含配置,从此身份自动正确。 思路 git 的身份解析是 rep...

浏览器可以靠 PAC 分流,但终端、各种 GUI 应用也想走代理,还希望一个热键全局开关——这是我折腾这套东西的出发点。方案:iStoreOS 虚拟机里跑 OpenClash,向局域网提供代理服务;Mac 本机不装任何代理客户端,只用几个 bash 脚本(挂到 Raycast)管理系统代理和环境变量。干净、可随时拆。 架构 Mac(宿主机) ├─ 系统代理 / 终端 env ──▶ &...

最近开始折腾 Nix,目的很简单:不想再靠「手动装软件 + 手动改配置」来维护我的 Mac。这篇记录一下 Nix 是什么、能干什么,以及我打算怎么一步步把整台机器都交给它管。 Nix 是什么 Nix 是一个声明式、可复现的包管理器,也有配套的发行版 NixOS。它的核心思想是把「环境配置」变成代码,让你在任何一台机器上重建出完全相同的软件环境。 关键特性: 可复现 —— 用代码...

GitHub Copilot 订阅到期了。续费之前先想清楚一个问题:编辑器里的 AI 能力,到底需要几层、每层用什么最划算? 折腾完的结论是三层分工——云端免费档管自动补全、本地模型管手动补全、国产大模型管聊天和改代码。这篇记录架构和一路踩的坑(最后一个键位冲突藏得极深)。 最终架构 场景 方案 模型 成本 ...