Al

Albert, an AI companion with a persistent memory

Hacker News

Albert, an AI companion with a persistent memory

Hi HN! I'm Ted. I've been lurking for ~10 years while working long hours at corporate jobs, and finally decided to strike out on my own. Today I'm launching my side project: Albert AI. Albert is an attempt to offer a persistent conversation with an AI, similar to ChatGPT but with a single session; the experience should feel the same as texting with a friend. For now I'm using gpt-3.5-turbo with a carefully-constructed prompt, a long-term memory, and some postprocessing to remove the rough edges. Soon I hope to integrate gpt-4, but an important point is that a user shouldn't be concerned with the implementation. I could swap out OpenAI for LLaMA-7b; from the user's perspective, the value is derived from their history with Albert. Here are some technical details: - Long-term memory: every hour, users with "expired" memories are identified (at least 24 hours since memories were generated). Then all recent messages are loaded and summarized by gpt-3.5-turbo, and merged with the user's existing memories. I'm *not* using a vector database yet; Albert's memory is expected to be lossy, like a human's. I'll add embeddings if I start to see some traction :) - Context is tricky. I need to include the rules, Albert's memories from conversing with the user, and the most recent messages. I use the js-tiktoken library extensively to make sure I'm packing as much as I can into the input tokens, while leaving enough room for output tokens. This usually means truncating older messages. - gpt-3.5-turbo can be wordy, overly polite, and apologetic. I try to reduce this with postprocessing: - I search responses for specific strings that are often used: /feel free|help|assist|need anything|do for you/ - Then I feed the response back into gpt-3.5-turbo with a prompt telling it to rewrite it by removing any offers to assist. - Similarly, I detect if the model is wishing the user to have a good day - very freaking annoying. Those are removed as well. - I *do not* yet remove "As an AI" from responses. Coming soon. - I also have some built-in responses for when Albert gets rate-limited by OpenAI. This was definitely over-engineering and I regret the time I spent on it :) - For the rules, I can confirm that the model is way better at being told what to do, rather than what not to do. So for example, it doesn't work to tell it *not* to be overly polite or offer more assistance when the user says thank you. Instead, I tell it to *always* say "You're welcome" when the user says thank you, and then I detect "You're welcome" at the start of a response and replace it with something more conversational. - From my own experience, sometimes I just want to play with an LLM but I don't have the creativity to make it interesting. For that, I implemented a "Magic Button" with a list of 2,000+ built-in activities and use cases. It's been a big hit with my kids :) - The rest is just tech stack decisions, which I'm happy to dive into. Azure Functions, Cosmos DB, Azure Static Web Apps, Terraform, etc. I recognize that there is a large intersection between Albert and many other services. At this point I'm keeping an eye out for more specific markets that I could pivot towards, and hoping to connect with others working in the space. Thanks for reading!

Share card

Actual performance

3points
2comments
Did not reach leaderboard

Launch Intel predictions

Analyze your own launch →
Product HuntOn track for Day 1 leaderboard · Strong signals: model, apps, user · Missing: mac, agents, macos
95%95% predicted probability of success on Product Hunt, based on ML models trained on real launch data.
best fitHighest predicted score across all platforms for this description.
Indie HackersFits the IH revenue-focused audience · Missing: supports, reddit linkedin, podcasting
95%95% predicted probability of success on Indie Hackers, based on ML models trained on real launch data.
TrustMRRFits verified-revenue profile · Strong signals: apps, users, way · Missing: mobile apps, ios, personal
53%53% predicted probability of success on TrustMRR, based on ML models trained on real launch data.
Hacker NewsStrong engagement from HN community · Strong signals: exist, existing, llama · Missing: https docs, excited, just released
52%52% predicted probability of success on Hacker News, based on ML models trained on real launch data.
nativeThis product was originally launched on this platform.
AppSumoMay struggle as an AppSumo deal · Strong signals: soon, users · Missing: plus, platform, intuitive
46%46% predicted probability of success on AppSumo, based on ML models trained on real launch data.
Acquire.comPre-revenue stage for this audience · Missing: arr, mrr, revenue
13%13% predicted probability of success on Acquire.com, based on ML models trained on real launch data.
BetaListMay not resonate with beta-testers · Strong signals: chat · Missing: web3, crypto, cryptocurrency
0%0% predicted probability of success on BetaList, based on ML models trained on real launch data.

Incorrect prediction on native model

Similar products

Ba
Bae – AI companion built around persistent memory architecture39%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

Bae – AI companion built around persistent memory architecture

Hacker News2
Atale AI
Atale AI35%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

Atale AI: Persistent Memory Chatbot

Indie Hackers
Truvem
Truvem25%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

Persistent memory infrastructure for AI agents

Indie Hackers1ai
Fi
Fixing Claude Code's amnesia with persistent memory41%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

Fixing Claude Code's amnesia with persistent memory

Hacker News1
Databaset
Databaset57%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

Persistent memory for AI applications

Indie Hackers1$29/moai
Dusk AI
Dusk AI40%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

AI companions with persistent memory — built for women who w

Indie Hackerscommitment-full-time
Pe
Persistent memory for Claude Code using Mem038%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

Persistent memory for Claude Code using Mem0

Hacker News1
Gr
Graft – local-first persistent memory for coding agents33%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

Graft – local-first persistent memory for coding agents

Hacker News1
Gl
GloriaMundo – Multi-LLM chatbot with persistent memory38%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

GloriaMundo – Multi-LLM chatbot with persistent memory

Hacker News1
Databaset
Databaset40%Launch Intel prediction score: how likely this product is to succeed on its source platform, based on its name, tagline, and description.

Persistent memory for AI apps

Indie Hackers