DEV Community

Pushpraj Patel
Pushpraj Patel

Posted on

🕯️ ECHOES — Memories Never Die | A Local AI Memory Keeper

Hacktoberfest Open-Source AI Challenge: Ghost in the Machine Submission 👻🌼

Some memories deserve more than a place in our photo gallery. They deserve to be remembered, revisited, and told again.

For the Hacktoberfest Open-Source AI Challenge: Week 4 — Ghost in the Machine, I built ECHOES, a local-first AI memory keeper powered by Gemma 4.

What I Built

ECHOES is a personal AI memory assistant that allows people to preserve meaningful memories, stories, and photographs, then ask questions about them using a locally running AI model.

The idea came from the thought that our memories are scattered across old photographs, notes, and conversations. What if we could bring them together and have an AI help us revisit those moments?

With ECHOES, users can:

🕯️ Preserve memories with a person's name, title, story, and photograph.

📖 Browse and search saved memories in a Memory Vault.

💬 Ask questions about their saved memories.

🧠 Get responses generated by Gemma 4.

🔒 Keep their memories and AI interactions local.

I interpreted Ghost in the Machine as giving memories a voice through AI — not by pretending to bring someone back, but by helping people reconnect with the stories they have preserved.

Code

GitHub Repository:

The project is built with Python and Streamlit, with SQLite for local storage.

How I Built It

I wanted to keep the architecture simple and make local AI the core of the application.

Tech stack:

Python — Application logic.

Streamlit — User interface.

SQLite — Stores memories and photographs locally.

Ollama — Runs the AI model locally.

Gemma 4 (gemma4) — Powers the conversational memory assistant.

When someone asks ECHOES a question, the application retrieves the saved memories from SQLite and passes their content to Gemma through Ollama's local API. Gemma then generates a response based on that information.

I also instructed the model not to invent memories or details when the answer isn't available in the saved information.

The entire AI workflow runs on the user's own machine without requiring a hosted AI API.

Why Does Open Innovation Matter?

For a project dealing with personal memories, privacy isn't just another feature. It's fundamental.

I didn't want someone's personal stories and photographs to depend on a third-party cloud AI service.

Using open-weight Gemma 4 and Ollama made it possible to:

Keep data local: Memories remain in the user's local SQLite database.

Improve privacy: Questions and memory context are sent to a locally running model rather than a hosted AI API.

Reduce dependency: The application doesn't depend on a paid AI API subscription.

Experiment freely: Open-weight models make it possible to explore different models and customize the experience.

Build with accessibility in mind: Once the model is downloaded, the application can run without an internet connection, provided the local services are running.

Open innovation gave me the freedom to build an AI experience around personal data without making a cloud provider the center of the project.

My Agent Session

I haven't included a DevRelay session for this project.

The Spirit of It

We take hundreds of photographs, save thousands of messages, and collect countless little moments.

But sometimes, we forget the stories behind them.

ECHOES is my small attempt to make those stories easier to revisit.

Imagine asking:

"What did my grandfather teach me when I was young?"

And getting an answer from a story you personally preserved.

It's not about recreating people or pretending AI can replace them. It's about keeping the memories they left behind accessible.

People may leave, but their stories don't have to disappear.

Prize Categories

Best Use of Gemma

Built with curiosity, Python, and open-weight AI.

devchallenge #hf26challenge #hacktoberfest #AI #Gemma #Ollama #OpenSourceAI #Python

Top comments (0)