What I Built
EchoVault is a privacy-conscious AI memory archive that turns voice recordings into searchable, preserved stories.
Inspired by the Ghost in the Machine theme and the idea of preserving memories across generations, I wanted to build something that gives personal stories a longer life without turning them into conversations with a fictional version of someone who is gone.
EchoVault takes an audio recording, transcribes the conversation, and uses AI to organize it into a structured memory. It can generate summaries and extract details such as people, places, dates, themes, and memorable quotations.
The resulting memories can be reviewed, edited, searched, and exported.
The goal is simple: preserve the original story, make it easier to revisit, and keep control of the archive with the person who owns it.
Code
GitHub Repository: https://github.com/ShamikDas-Dev/EchoVault
The repository will contain the source code, setup instructions, and configuration needed to run EchoVault.
How I Built It
EchoVault combines a lightweight web application with open-source speech recognition and an open-weight language model.
Technology stack:
- Python and FastAPI: Backend API and application logic.
- HTML, CSS, and JavaScript: User interface and memory archive.
- faster-whisper: Local speech transcription.
- Gemma: Open-weight language model for organizing transcripts and generating memory summaries.
- Ollama: Runs Gemma locally when local inference is selected.
- OpenRouter: Provides an alternative inference route, with configurable models and fallback handling.
- SQLite and local file storage: Store memory records, transcripts, and associated recordings.
The workflow is:
- Import an audio recording.
- Transcribe the audio using faster-whisper.
- Review and correct the transcript.
- Generate a structured memory using the selected AI provider.
- Save the memory and search or export it later.
I also worked on handling unreliable model responses. A model returning an error, empty content, or malformed structured output should not silently be treated as a successful AI operation. EchoVault validates responses and can attempt configured fallback models when appropriate.
The application supports both local Ollama inference and OpenRouter-based inference. This gives me room to experiment with different models without rebuilding the entire application around one provider.
Why Does Open Innovation Matter?
Memories are personal. The tools used to preserve them should give people meaningful control over where their data goes and how it is processed.
That is why open-weight AI matters to EchoVault.
With local transcription and local Ollama inference, the application can process recordings and generate summaries on the user's machine without sending transcript text to a hosted AI provider.
When OpenRouter is selected, transcript text is sent to the remote inference service for summarization. I want that distinction to remain explicit: local inference and hosted inference have different privacy trade-offs.
Open models also make experimentation possible. I can change the model, adjust prompts, inspect the application logic, and run the same workflow locally without being permanently tied to one commercial AI API.
For a personal archive, there is another important consideration: the application should not depend entirely on the continued existence of a particular AI service. The original recordings and stored memories should remain accessible independently of the model used to summarize them.
Open innovation does not automatically make a system more accurate or more private. Those properties still depend on the implementation. What it gives EchoVault is more flexibility, more control over inference, and a clearer path toward a user-controlled archive.
The Spirit of It
I did not want to build another chatbot that pretends to speak for someone who has passed away.
I wanted to build something that helps preserve what a real person actually said.
Imagine having an old recording of a grandparent describing a childhood home, a festival, or a family tradition. Years later, finding that one detail in a long recording can be difficult. EchoVault is designed to make those stories easier to preserve, revisit, and share.
The AI should help organize the memory, not replace the person behind it. The recording remains the source, and the generated summary remains something the user can review and correct.
For me, that is the spirit of EchoVault: not creating a ghost, but making sure a real voice does not disappear into an forgotten folder.
Prize Categories
Best Use of Gemma
EchoVault supports Gemma through local Ollama inference and configurable OpenRouter model integration.
The project is designed to let users choose between local and hosted inference while keeping the memory-management workflow independent of a single model provider.
Top comments (0)