Skip to content

Swiss AI Hub v0.309.0

Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 09 Jul 09:36

Added

  • 🦾 Introduced the MemoryWriterAgent, a new dedicated system agent for asynchronously persisting user memories,
    significantly improving chat responsiveness by decoupling memory writes from the critical path.
  • ✨ Implemented a discoverable flag on the base Agent class, enabling programmatic control over which agents
    appear in the Admin UI.
  • 💬 Added new event types (MemoryStorageRequestedEvent, StoreUserMemoryRequestedEvent, MemoryStoredStopEvent)
    to orchestrate the new asynchronous memory storage workflow.
  • ⚙️ Introduced a new configuration option, enable_async_memory_storage, for RAG and ExpertRAG agents, allowing
    administrators to enable or disable asynchronous user memory persistence.

Changed

  • ⚡️ Drastically improved chat user experience by making user memory persistence asynchronous; the "thinking"
    indicator now clears immediately after an agent answers, without waiting for memory storage.
  • 🚀 Optimized user memory save performance by disabling the Neo4j graph store for user memory, reducing save latency
    by approximately 73% (from ~66s to ~17.5s) per turn. Organization memory retains graph store capabilities.
  • 🔄 Enhanced cross-agent user memory sharing by routing user memory queries through the vector store, allowing
    agents to access all user memories regardless of the originating agent.
  • 📈 Expanded Langfuse tracing to correctly attribute asynchronous MemoryWriterAgent runs to the original user
    query and context.
  • 📦 Updated deployment configurations to include the new MemoryWriterAgent service across all Docker Compose
    variants.

Refactor

  • 🧹 Redesigned AgentMemory architecture to use separate, lazily-built Mem0 services for user and organization
    memory, enabling distinct and optimized storage configurations for each.
  • 🛠️ Modernized Mem0 integration to gracefully handle disabled graph stores, preventing errors and ensuring robust
    memory operations when graph data is not present.
  • ⚙️ Introduced an enable_graph parameter to Mem0Settings.get_config for fine-grained control over graph store
    inclusion, enabling performance optimizations per memory type.