LibrePhotos
自托管的AI照片管理,自动识别人脸、物体,支持语义搜索。
智能下载
前往项目主页
该项目暂未提供安装包,请直接访问源代码仓库
开源版Google Photos,让照片管理AI化且私有。
核心功能
- 自动扫描文件系统,支持原始照片和视频
- 人脸识别与分类,自动聚合同一人脸
- 物体/场景检测与反向地理编码
- 语义搜索:用自然语言描述即可找到照片
- 事件相册智能生成(如“周四在柏林”)
避坑指南
- •人脸识别等 ML 功能非常消耗内存,建议 8GB RAM 以上,否则可能卡死。2. 首次扫描大量照片时 CPU 和内存占用很高,建议分批添加。3. face_recognition 库在 ARM 设备(如树莓派)上安装困难,不推荐。4. 不支持 iOS 客户端(仅有 Android 移动端)。5. 若要公开部署,务必配置反向代理和 HTTPS。
适用场景
- 个人/家庭照片库的本地化管理,替代云服务
- 需要隐私保护或不想付费订阅 Google Photos 的用户
- 通过 AI 能力快速组织海量照片(如摄影师、媒体从业者)
- 希望完全掌控自己数据的技术爱好者或小型企业
详细介绍
LibrePhotos 是一款开源自托管的照片管理工具,旨在替代 Google Photos。它能自动扫描你的照片库,识别人脸和物体,基于事件生成相册(例如“周四在柏林”),并支持语义搜索。后端基于 Django 5,前端使用 React 18,通过 Docker Compose 一键部署,数据完全由你掌控。内置机器学习流水线,开箱即用地实现人脸聚类、场景分类、图像描述和反向地理编码。支持所有照片格式(包括原始照片)和视频。
常见问题与排障 (1)
故障排除为什么在LibrePhotos中delete_missing_photos任务会因GreenletExit错误而崩溃?
当缺失照片数量极大时(例如超过40万张),会导致基于gevent的工作器超时或达到并发限制。作为临时解决方案,请使用Django管理命令或直接执行SQL查询,手动分批清理缺失的照片。例如,运行 python manage.py shell 并执行:from api.models import Photo; missing = Photo.objects.filter(files__isnull=True)[:1000]; Photo.objects.filter(id__in=missing.values_list('id', flat=True)).delete() —— 重复此操作直到所有缺失照片被删除。或者,尝试切换到非gevent工作器(例如带线程的gunicorn),或增加任务超时时间。
标签
快速上手
安装软件
双击下载的安装程序,按提示完成安装
步骤1:确保系统已安装 Docker 和 Docker Compose
步骤2:克隆仓库:git clone https://github.com/LibrePhotos/librephotos.git
步骤3:进入 deploy/compose 目录,运行 docker compose up -d
- 步骤1:确保系统已安装 Docker 和 Docker Compose
- 步骤2:克隆仓库:git clone https://github.com/LibrePhotos/librephotos.git
- 步骤3:进入 deploy/compose 目录,运行 docker compose up -d
暂未获取到校验码
该项目暂未在 GitHub Release 页面提供 SHA-256 校验码
SHA256 校验码
暂无校验码
建议从 GitHub Releases 页面直接下载,并自行核对文件完整性
本平台所有 SHA-256 校验码均提取自项目在 GitHub 官方 Release 页面发布的文件,未做任何修改。你可以通过 GitHub Releases 页面自行验证。
开源透明
查看 GitHub 源码卸载说明
停止并移除容器:在 deploy/compose 目录下执行 docker compose down -v,然后删除整个 librephotos 目录。注意 -v 会清除数据库和已生成的数据,如需保留请提前备份。
无额外依赖
下载后即可直接使用,无需安装其他运行环境
遇到问题?查看下方 FAQ
1 FAQ