项目介绍
Album AI 是一个创新的项目,旨在通过最近发布的 gpt-4o-mini 和 Haiku 作为视觉模型,自动识别相册中图片文件的元数据,并利用 RAG 技术实现与相册的对话功能。它可以作为传统的照片相册使用,或作为图像知识库,辅助大型语言模型(LLM)进行内容生成。
背景故事
作为一个摄影爱好者,在面对几 TB 的照片时,开发者常感到无所适从。现有的照片管理软件都需要额外的维护,这让人感到苦恼。Haiku 和最新的 gpt-4o-mini 带来了新的希望,于是开发者和他的伙伴决定迅速实施想法,用不到24小时的时间完成了项目的初版。开发者希望用户也会喜欢这个项目,并欢迎各种赞美和批评。
项目特点
- 自动发现与存储:使用 PgSQL 数据库用于相册图片的自动发现和存储。
- 元数据生成:利用 GPT-4-o-mini 自动生成图片的元数据。
- 元数据向量化:采用 OpenAI 的 Embedding API 对元数据进行向量化处理。
- 提供两种 API:
- 搜索 API:接收查询并返回最相关的图片。
- 对话 API:接收查询,检索图片并生成响应。
- 一键部署:支持在如 Render 这样的 Docker 容器平台上一键部署。
- 开源许可:采用宽松的开源许可,允许用户集成和修改(商业使用请联系开发者)。
如何开始使用?
推荐用户在本地运行,如果希望在服务器上运行,请自行部署,相关的指南会不断完善。
1. 克隆项目
git clone git@github.com:gcui-art/album-ai.git
cd album-ai
2. 修改 .env 文件
cp .env.prod.example .env.prod
使用你喜欢的编辑器打开 .env.prod
文件,修改配置:
HOST_NAME= # 你的本地 IP 地址,通常为 192.168.x.x:8080
PROXY_URL= # (可选)你的本地代理 IP 地址,通常为 192.168.x.x:7890,仅在无法直接访问 OpenAI API 时需要
OPENAI_API_KEY= # 你的 openai api 密钥
ANTHROPIC_API_KEY= # 你的 Anthropic api 密钥
3. 构建并运行项目
chmod a+x ./build.sh
./build.sh
4. 开始体验
打开浏览器访问 http://localhost:8080
以查看演示。
5. 添加新照片
打开项目中的 images
目录,将新照片添加到 images
目录中,后台会自动识别和矢量化元数据。添加后,用户可以通过搜索和聊天功能在演示中使用它。
API 参考
Album AI 目前实现了以下 API:
get
/api/v1/file/search:搜索图片post
/api/v1/chat:与图片对话
贡献方式
支持这个项目有四种方式:
- Fork 项目并提交 PR:我们欢迎任何使 Album AI 更加完美的 PR。
- 提交 Issue:我们欢迎任何合理的建议或错误报告。
- 推荐项目给其他人;点击 Star;在使用后留下项目链接。
许可
此项目采用 Apache 2.0 许可。
疑问/建议/问题或 Bug?
我们使用 Github Issue 来管理反馈,用户可以提交相关问题。我们会定期处理这些反馈。
相关链接
- 项目仓库:github.com/gcui-art/album-ai
- Album AI 主页:album.gcui.ai
- 实时演示:album.gcui.ai
- 作者:Kane
免责声明
如需商用,请联系我们。