SkillAgentSearch skills...

Telemem

TeleMem is a high-performance drop-in replacement for Mem0, featuring semantic deduplication, long-term dialogue memory, and multimodal video reasoning.

Install / Use

/learn @TeleAI-UAGI/Telemem
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

<p align="center"> <a href="https://github.com/TeleAI-UAGI/telemem"> <img src="./assets/TeleMem.png" width="40%" /> </a> </p> <h1 align="center"> TeleMem: Building Long-Term and Multimodal Memory for Agentic AI </h1> <p align="center"> <a href="https://arxiv.org/abs/2601.06037"> <img src="https://img.shields.io/badge/arXiv-Paper-red" alt="arXiv"> </a> <a href="https://github.com/TeleAI-UAGI/telemem"> <img src="https://img.shields.io/github/stars/TeleAI-UAGI/TeleMem?style=social" alt="GitHub Stars"> </a> <a href="https://github.com/TeleAI-UAGI/TeleMem/blob/main/LICENSE"> <img src="https://img.shields.io/badge/license-Apache%20License%202.0-blue" alt="License: Apache 2.0"> </a> <img src="https://img.shields.io/github/last-commit/TeleAI-UAGI/TeleMem?color=blue" alt="Last Commit"> <img src="https://img.shields.io/badge/PRs-Welcome-red" alt="PRs Welcome"> </p> <div align="center">

If you find this project helpful, please give us a ⭐️ on GitHub for the latest update.

🤝 Contributions welcome! Feel free to open an issue or submit a pull request.

</div>
<div align="center"> <p> <a href="README.md">English</a> | <a href="README-ZH.md">简体中文</a> </p> <p> <a href="https://github.com/TeleAI-UAGI/Awesome-Agent-Memory"> <strong>📄 Awesome-Agent-Memory →</strong></a> </p> </div>

TeleMem is an agent memory management layer that can be used as <mark>a high-performance drop-in replacement for Mem0 with one line of code (import telemem as mem0)</mark>, deeply optimized for complex scenarios involving multi-turn dialogues, character modeling, long-term information storage, and semantic retrieval.

Through its unique context-aware enhancement mechanism, TeleMem provides conversational AI with core infrastructure offering higher accuracy, faster performance, and stronger character memory capabilities.

Building upon this foundation, TeleMem implements video understanding, multimodal reasoning, and visual question answering capabilities. Through a complete pipeline of video frame extraction, caption generation, and vector database construction, AI Agents can effortlessly store, retrieve, and reason over video content just like handling text memories.

The ultimate goal of the TeleMem project is to use an agent's hindsight to improve its foresignt.

TeleMem, where memory lives on and intelligence grows strong.


📢 Latest Updates

  • [2026-01-28] 🎉 TeleMem v1.3.0 has been released!
  • [2026-01-22] 🎉 TeleMem Tech Report has been updated to its 4th version!
  • [2026-01-13] 🎉 TeleMem Tech Report has been released on arXiv!
  • [2026-01-09] 🎉 TeleMem v1.2.0 has been released!
  • [2025-12-31] 🎉 TeleMem v1.1.0 has been released!
  • [2025-12-05] 🎉 TeleMem v1.0.0 has been released!

🔥 Research Highlights

  • Significantly improved memory accuracy: Achieved 86.33% accuracy on the ZH-4O Chinese multi-character long-dialogue benchmark, 19% higher than Mem0.
  • Doubled speed performance: Millisecond-level semantic retrieval enabled by efficient buffering and batch writing.
  • Greatly reduced token cost: Optimized token usage delivers the same performance with significantly lower LLM overhead.
  • Precise character memory preservation: Automatically builds independent memory profiles for each character, eliminating confusion.
  • Automated Video Processing Pipeline: From raw video → frame extraction → caption generation → vector database, fully automated
  • ReAct-Style Video QA: Multi-step reasoning + tool calling for precise video content understanding

📌 Table of Contents


Project Introduction

TeleMem enables conversational AI to maintain stable, natural, and continuous worldviews and character settings during long-term interactions through a deeply optimized pipeline of character-aware summarization → semantic clustering deduplication → efficient storage → precise retrieval.

Features

  • Automatic memory extraction: Extracts and structures key facts from dialogues.
  • Semantic clustering & deduplication: Uses LLMs to semantically merge similar memories, reducing conflicts and improving consistency.
  • Character-profiled memory management: Builds independent memory archives for each character in a dialogue, ensuring precise isolation and personalized management.
  • Efficient asynchronous writing: Employs a buffer + batch-flush mechanism for high-performance, stable persistence.
  • Precise semantic retrieval: Combines FAISS + JSON dual storage for fast recall and human-readable auditability.

Applicable Scenarios

  • Multi-character virtual agent systems

  • Long-memory AI assistants (e.g., customer service, companionship, creative co-pilots)

  • Complex narrative/world-building in virtual environments

  • Dialogue scenarios with strong contextual dependencies

  • Video content QA and reasoning

  • Multimodal agent memory management

  • Long video understanding and information retrieval

    image


TeleMem vs Mem0: Core Advantages

TeleMem deeply refactors Mem0 to address characterization, long-term memory, and high performance. Key differences:

| Capability Dimension | Mem0 | TeleMem | | -------------------------- | --------------------------- | ------------------------------------------------------------ | | Multi-character separation | ❌ Not supported | ✅ Automatically creates independent memory profiles per character | | Summary quality | Basic summarization | ✅ Context-aware + character-focused prompts covering key entities, actions, and timestamps | | Deduplication mechanism | Vector similarity filtering | ✅ LLM-based semantic clustering: merges similar memories via LLM | | Write performance | Streaming, single writes | ✅ Batch flush + concurrency: 2–3× faster writes | | Storage format | SQLite / vector DB | ✅ FAISS + JSON metadata dual-write: fast retrieval + human-readable | | Multimodal Capability | Single image to text only | ✅ Video Multimodal Memory: Full video processing pipeline + ReAct multi-step reasoning QA |

Experimental Results

Dataset

We evaluate the ZH-4O Chinese long-character dialogue dataset constructed in the paper MOOM: Maintenance, Organization and Optimization of Memory in Ultra-Long Role-Playing Dialogues:

  • Average dialogue length: 600 turns per conversation
  • Scenarios: daily interactions, plot progression, evolving character relationships

Memory capability was assessed via QA benchmarks, e.g.:

{
"question": "What is Zhao Qi's nickname for Bai Yulan? A Xiaobai B Xiaoyu C Lanlan D Yuyu",
"answer": "A"
},
{
"question": "What is the relationship between Zhao Qi and Bai Yulan? A Classmates B Teacher and student C Enemies D Neighbors",
"answer": "B"
}

Experimental Configuration

  • LLM: Qwen3-8B (thinking mode disabled)

  • Embedding model: Qwen3-Embedding-8B

  • Metric: QA accuracy

    | Method | Overall(%) | |:--------------------------------------------------------- |:---------- | | RAG | 62.45 | | Mem0 | 70.20 | | MOOM | 72.60 | | A-mem | 73.78 | | Memobase | 76.78 | | TeleMem | 86.33 |

<!-- | Long-Context LLM (Slow and Expensive) | 84.92 | -->

Quick Start

Environment Preparation

# Create and activate virtual environment
conda create -n telemem python=3.10
conda activate telemem
# Install dependencies
pip install -e .

Example

Set your OpenAI API key:

export OPENAI_API_KEY="your-openai-api-key"
# python examples/quickstart.py
import telemem as mem0

memory = mem0.Memory()

messages = [
    {"role": "user", "content": "Jordan, did you take the subway to work again today?"},
    {"role": "assistant", "content": "Yes, James. The subway is much faster than driving. I leave at 7 o'clock and it's just not crowded."},
    {"role": "user", "content": "Jordan, I want to try taking the subway too. Can you tell me which station is closest?"},
    {"role": "assistant", "content": "Of course, James. You take Line 2 to Civic Center Station, exit from Exit A, and walk 5 minutes to the company."}
]

memory.add(messages=messages, user_id="Jordan")
results = memory.search("What transportation did Jordan use to go to work today?", user_id="Jordan")
print(results)

By default Memory() wires up:

  • OpenAI gpt-4.1-nano-2025-04-14 for
View on GitHub
GitHub Stars458
CategoryContent
Updated5d ago
Forks28

Languages

Python

Security Score

100/100

Audited on Mar 22, 2026

No findings