Skip to content

PowerMem v0.2.0

Choose a tag to compare

@Teingi Teingi released this 16 Dec 13:01
1a3b0f9

PowerMem 0.2.0 Release Notes

Release Date: December 16, 2025

We're excited to announce the release of PowerMem 0.2.0! This version introduces powerful new features that enhance AI applications with advanced user profile management and comprehensive multimodal support, enabling more personalized and contextually rich AI experiences.

🎉 What's New

👤 Advanced User Profile Management

PowerMem 0.2.0 introduces the UserMemory feature, providing intelligent user profile extraction and management capabilities that enable AI applications to deliver truly personalized experiences.

Key Features:

  • Automatic Profile Extraction: Automatically extracts user-related information from conversations, including:

    • Personal details (name, age, location)
    • Professional information (profession, workplace)
    • Interests and preferences
    • Behavioral patterns
  • Continuous Profile Updates: Profiles are automatically refined and updated as new conversations occur, ensuring the AI system always has the most current understanding of each user.

  • Efficient Profile Storage: User profiles are stored separately from memories, enabling fast retrieval and efficient management of user-specific information.

  • Joint Search Capability: Optionally include user profile information when searching memories, providing richer context for more accurate and personalized responses.

  • Profile Management API: Complete CRUD operations for user profiles, including:

    • profile() - Retrieve user profiles
    • delete_profile() - Remove user profiles
    • Automatic profile extraction via add() method

Use Cases:

  • Personalized Recommendations: Build AI systems that understand user preferences and deliver tailored recommendations
  • AI Companionship: Create AI companions that remember and adapt to individual users
  • Customer Service: Enable customer service bots that maintain context about each customer's history and preferences
  • Personal Assistants: Develop assistants that learn user habits and preferences over time

Example Usage:

from powermem import UserMemory, auto_config

config = auto_config()
user_memory = UserMemory(config=config)

# Add conversation - profile is automatically extracted
conversation = [
    {"role": "user", "content": "Hi, I'm Alice. I'm a 28-year-old software engineer from San Francisco."},
    {"role": "assistant", "content": "Nice to meet you, Alice!"}
]

result = user_memory.add(
    messages=conversation,
    user_id="user_001",
    agent_id="assistant_agent"
)

# Search with profile for personalized context
results = user_memory.search(
    query="user preferences",
    user_id="user_001",
    add_profile=True  # Include profile in results
)

Note: UserMemory requires OceanBase as the storage backend.

🎨 Expanded Multimodal Support

PowerMem 0.2.0 significantly expands multimodal capabilities, enabling AI applications to process and remember not just text, but also images and audio content.

Key Features:

  • Image Memory Support:

    • Process images from URLs
    • Automatic image-to-text description conversion using vision-capable LLM models
    • Support for mixed content (text + images)
    • Configurable image analysis precision (auto/low/high)
  • Audio Memory Support:

    • Process audio files from URLs
    • Automatic speech-to-text transcription
    • Support for voice messages and audio content
    • Integration with ASR (Automatic Speech Recognition) providers
  • Unified Multimodal API:

    • Standard OpenAI multimodal message format support
    • Seamless handling of text, image, and audio in a single message
    • Automatic content type detection and processing
  • Multimodal Retrieval:

    • Search across text, image descriptions, and audio transcriptions
    • Unified search interface for all content types
    • Metadata support for multimodal content

Supported Models:

  • Vision Models: gpt-4o, gpt-4-vision-preview, qwen-vl-plus, qwen-vl-max
  • Audio ASR: qwen3-asr-flash (via qwen_asr provider)
  • Compatible: Any model supporting OpenAI vision API format

Example Usage:

from powermem import Memory

# Configure with multimodal support
config = {
    "llm": {
        "provider": "openai",
        "config": {
            "model": "gpt-4o",
            "enable_vision": True,  # Enable vision processing
            "vision_details": "auto"
        }
    },
    "audio_llm": {
        "provider": "qwen_asr",
        "config": {
            "model": "qwen3-asr-flash",
            "api_key": "your-api-key"
        }
    }
}

memory = Memory(config=config)

# Add multimodal memory (text + image)
messages = [
    {
        "role": "user",
        "content": [
            {"type": "text", "text": "This is Bob's favorite workspace"},
            {
                "type": "image_url",
                "image_url": {"url": "https://example.com/workspace.jpg"}
            }
        ]
    }
]

result = memory.add(messages=messages, user_id="user123")

# Search across all content types
results = memory.search("Bob's workspace", user_id="user123")

📚 Documentation Updates

🔧 Technical Improvements

  • Enhanced memory extraction algorithms for better profile information detection
  • Improved multimodal content processing pipeline
  • Optimized profile storage and retrieval performance
  • Better error handling for multimodal content processing
  • Enhanced metadata support for multimodal memories

📦 Installation

Upgrade to PowerMem 0.2.0:

pip install --upgrade powermem

🔄 Migration Guide

For User Profile Management

If you're upgrading from 0.1.0 and want to use UserMemory:

  1. Ensure you're using OceanBase as your storage backend
  2. Import UserMemory instead of Memory:
    from powermem import UserMemory  # Instead of Memory
  3. Use UserMemory with the same configuration as Memory
  4. Profiles will be automatically extracted when you add conversations

For Multimodal Support

To enable multimodal capabilities:

  1. Configure a vision-capable LLM model in your config
  2. Set enable_vision: True in your LLM configuration
  3. For audio support, add audio_llm configuration
  4. Use OpenAI multimodal message format for adding memories

🙏 Acknowledgments

Thank you to all contributors, users, and the community for your feedback and support that made this release possible!

Full Changelog: For detailed changes, please refer to the commit history