Import exported chat history and build a searchable local database of someone's messages.
Generate replies styled after a specific person's real conversation history.
Redact personal information like phone numbers and bank cards before anything is stored.
Connect a third-party app to the assistant through an OpenAI-compatible API.
| kldhsh123/afterglow | autolearnmem/automem | billy-ellis/exr-imageio-poc | |
|---|---|---|---|
| Stars | 32 | 32 | 32 |
| Language | Python | Python | Python |
| Setup difficulty | hard | hard | moderate |
| Complexity | 4/5 | 5/5 | 3/5 |
| Audience | developer | researcher | researcher |
Figures from each repo's GitHub metadata at analysis time.
Requires exporting real chat history plus configuring at least one OpenAI-compatible model API.
Afterglow is a locally-running AI companion system written in Python. It imports chat history exported from QQ or WeChat, processes it into a searchable vector database, and uses a large language model to generate replies that match the writing style of the person whose conversation history was imported. The project's stated purpose is letting someone continue a conversation with a familiar voice. The core pipeline imports exported chat JSON files, cleans and splits the messages into chunks, runs them through an embedding model to store them in a local LanceDB vector database, and optionally tags each chunk with mood, topic, and importance labels using a small secondary model. At conversation time, a hybrid retrieval system searches across three types of stored data: question-and-answer pairs matching a user message to the friend's reply, individual friend messages, and multi-turn conversation windows. Results from all three are fused using a ranking algorithm before being assembled into a prompt. The system stores human original messages, AI-generated replies, and live conversational messages in separate layers. Only human original messages are used for style analysis and persona generation, keeping the AI's own outputs from distorting the imitation over time. A life state component tracks a simulated daily routine for the AI persona, letting it respond to questions about what it is currently doing based on the time of day. All data stays on your local machine by default. Personally identifiable information such as phone numbers, email addresses, ID numbers, and bank card numbers is automatically redacted before storage. External model calls go to whichever OpenAI-compatible API service you configure yourself, the project does not include any built-in API keys. Optional web search and URL reading can be enabled if needed. The backend exposes an OpenAI-compatible API so third-party applications can connect to it. A frontend is included for local testing and debugging but is described as secondary to the backend API for integration work.
A locally-run AI companion that learns a person's chat style from imported QQ or WeChat history and replies in their voice.
Mainly Python. The stack also includes Python, LanceDB, FastAPI.
Setup difficulty is rated hard, with roughly 1h+ to a first successful run.
Mainly developer.
This repo across BitVibe Labs
Verify against the repo before relying on details.