AI-First Album, Chat with your gallery/album using plain language!
👉 We update frequently, feel free to star us.
English | 简体中文 | Demo | Discord
https://github.com/user-attachments/assets/5cc72436-2749-479f-a1bf-06e0d06ce1e3
Album AI is an experimental project that uses the recently released gpt-4o-mini and Haiku as a visual model to automatically identify metadata from image files in the album. It then leverages RAG technology to enable conversations with the album.
It can be used as a traditional photo album or as an image knowledge base to assist LLM in content generation.
As a photography enthusiast facing terabytes of photos, I often felt overwhelmed. All existing photo management software required extra effort to maintain. Haiku and the newly released gpt-4o-mini gave me hope. So I decided to implement it immediately. My partner and I created the first version in less than 24 hours.
We hope you'll like it too. We welcome any praise or criticism. Don't forget to give us a ⭐️ or share to let more people know about it.
Recommended to run locally, if you want to run on a server, please deploy yourself, and we will improve this part of the guide.
git clone git@github.com:gcui-art/album-ai.git
cd album-ai
cp .env.prod.example .env.prod
Open .env.prod
with your favorite editor, modify the configuration:
HOST_NAME= # Your local IP address, usually 192.168.x.x:8080
PROXY_URL= # (Optional) Your local proxy IP address, usually 192.168.x.x:7890, required when accessing OpenAI API directly is not available
OPENAI_API_KEY= # Your openai api key
ANTHROPIC_API_KEY= # Your Anthropic api key
chmod a+x ./build.sh
./build.sh
Open the browser and visit http://localhost:8080
to see the demo.
Open the images
directory in the project, add new photos to the images
directory, and the background will automatically recognize and vectorize metadata. After that, you can use it in the demo through search and chat.
Album AI currently implements the following APIs:
get
/api/v1/file/search: Search for imagespost
/api/v1/chat: Chat with imagesThere are four ways to support this project:
Apache 2.0 License
We use Github's Issue to manage these feedbacks, you can submit one. We will often deal with them.
If you want to use it for commercial purposes, please contact us.