PhotoPrism、immich 与 SnapByFace:自托管 vs 本地桌面索引
自托管把照片留在自己的硬件上,桌面索引也是 —— 但其中一个需要一台服务器。这篇对比 PhotoPrism、immich 与 SnapByFace,说清楚各自适合什么形态。
发布于 2026-09-28 约 6 分钟
- 对比
- 自托管
- 隐私
PhotoPrism 和 immich 解决的是 Google Photos 制造出来的问题:怎么在把数据留在自己硬件上的同时,拿到一个可检索、可浏览的相册库。两者都做得很好,都开源,对合适的人来说都是极佳选择。
但它们在形态上与桌面应用是两种不同的东西 —— 区别不在隐私,也不在价格(两边数据都在你自己手上),而在谁来干运维这件事。这才是通常的决定性因素。
:::note 写于 2026 年 9 月。两个项目迭代都很快,功能与硬件要求请以其官方文档为准。 :::
关键区别:自托管 ≠ 本地
- 自托管:软件跑在你自己运维的服务器上 —— NAS、家用服务器、VPS。照片留在那台硬件上,服务器也由你维护。
- 本地桌面:软件跑在你面前这台机器上。没有服务器,没有容器,没有要管的东西。
两者都让数据远离别人的云。差别在于谁做运维,而这一点往往就是决定因素。
自托管赢的地方
这点要说清楚,因为对很多人来说它才是更对的答案:
- 手机备份真的能用。自托管服务器能持续接收家里每个人的手机上传,走你自己的网络。
- 多人、多设备。一个库,所有人的照片,浏览器里随时访问(取决于你暴露到什么范围)。
- 跑在已有硬件上。一台常开的 NAS 就是很合适的宿主。
- 免费开源。没有授权成本,而且你能检查它对数据做了什么。
- 面向整个库的组织能力,不只是人:相册、地图、元数据、时间线。
如果你要的是家庭照片服务器,就跑 PhotoPrism 或 immich。单用户桌面应用不是同一个产品,也不该假装是。
桌面索引赢的地方
不用运维服务器
这就是全部论点。自托管意味着容器、更新、索引备份、容量规划,以及凌晨两点 NAS 满了要有人处理。桌面应用这些都没有:装上,指向目录,完事。
如果你本来就不跑家用服务器,这是一笔实实在在的工作量 —— 而且这份工作跟「找照片」毫无关系。
没网的笔记本上也能跑
基于服务器的库只在你能连上服务器时才可用。本地索引在飞机上、在客户办公室里、在隔离的剪辑机上都能跑。对档案跟着自己走的人来说,这不是小事。
参照照检索,而不是把所有人脸都聚类一遍
自托管工具通常是:检测库里所有脸 → 聚类 → 让你给每簇命名。对浏览家庭档案来说这是个好模型;但如果你只在乎几个人,它就慢了。
SnapByFace 反过来:每个人加一张参照照,直接检索这个人。不用审核聚类,也不用给几百张你永远不会搜的脸命名。
视频带时间码
这是最锋利的实操差异。SnapByFace 大约每秒看一次画面,与你的参照照比对,再把连续出现的画面合并成时间区间 —— 「02:14–02:34」,结果指向某一刻而不是某个文件。自托管相册库是围绕照片建的,视频只存储与播放。
逐项对照
| PhotoPrism / immich | SnapByFace | |
|---|---|---|
| 照片在哪 | 你的服务器 / NAS | 安装它的那台电脑 |
| 你要运维什么 | 服务器、容器、更新、备份 | 没有 |
| 上手 | Docker、存储、反向代理、账号 | 装上,指向目录 |
| 手机备份 | 有 | 没有 |
| 多用户 | 有 | 没有(单机、一份授权) |
| 怎么找人 | 检测全部人脸 → 聚类 → 命名 | 每人一张参照照 |
| 视频 | 存储与播放 | 按人脸检索,结果带时间区间 |
| 从哪里访问 | 浏览器、手机应用,能连通就行 | 装在哪台机器上就是哪台 |
| 索引在哪 | 服务器数据库里 | 你磁盘上的 ~/.snapbyface/ |
| 费用 | 免费开源(硬件自己出) | 一次性授权 |
| 需要网络 | 通常需要 | 不需要 |
各自「不是」什么
- SnapByFace 不是照片服务器。没有手机备份、没有分享、没有网页访问、没有相册和地图。这些是你要的功能,它就是错的那个工具。
- SnapByFace 不替代你的档案库。它索引你已有的目录,不移动、不重命名、不重组 —— 照片还在你放的地方。
- 自托管不是免维护。授权免费,运维不免费。
怎么选
- 你已经在跑家用服务器,或者要全家手机备份 → 自托管。
- 你想在一台机器上找出档案里特定的人,包括视频,并且不想运维任何东西 → 本地桌面。
- 两个都要 → 两个都跑。很多人就这么干:服务器放家庭档案,桌面索引处理工作素材。
免费试用能跑完整的本地检索,每人显示 5 条、每次搜索 20 条命中。试用期间累计最多发起 100 次分析。