mirror of
https://github.com/crewAIInc/crewAI.git
synced 2026-01-27 17:18:13 +00:00
chore: add deprecation notices to UserMemory (#3201)
- Mark UserMemory and UserMemoryItem for removal in v0.156.0 or 2025-08-04 - Update all references with deprecation warnings - Users should migrate to ExternalMemory
This commit is contained in:
@@ -712,7 +712,7 @@ crew = Crew(
|
|||||||
memory_config={
|
memory_config={
|
||||||
"provider": "mem0",
|
"provider": "mem0",
|
||||||
"config": {"user_id": "john"},
|
"config": {"user_id": "john"},
|
||||||
"user_memory": {} # Required - triggers user memory initialization
|
"user_memory": {} # DEPRECATED: Will be removed in version 0.156.0 or on 2025-08-04, use external_memory instead
|
||||||
},
|
},
|
||||||
process=Process.sequential,
|
process=Process.sequential,
|
||||||
verbose=True
|
verbose=True
|
||||||
|
|||||||
@@ -161,7 +161,7 @@ class Crew(FlowTrackable, BaseModel):
|
|||||||
)
|
)
|
||||||
user_memory: Optional[InstanceOf[UserMemory]] = Field(
|
user_memory: Optional[InstanceOf[UserMemory]] = Field(
|
||||||
default=None,
|
default=None,
|
||||||
description="An instance of the UserMemory to be used by the Crew to store/fetch memories of a specific user.",
|
description="DEPRECATED: Will be removed in version 0.156.0 or on 2025-08-04, whichever comes first. Use external_memory instead.",
|
||||||
)
|
)
|
||||||
external_memory: Optional[InstanceOf[ExternalMemory]] = Field(
|
external_memory: Optional[InstanceOf[ExternalMemory]] = Field(
|
||||||
default=None,
|
default=None,
|
||||||
@@ -327,7 +327,7 @@ class Crew(FlowTrackable, BaseModel):
|
|||||||
self._short_term_memory = self.short_term_memory
|
self._short_term_memory = self.short_term_memory
|
||||||
self._entity_memory = self.entity_memory
|
self._entity_memory = self.entity_memory
|
||||||
|
|
||||||
# UserMemory is gonna to be deprecated in the future, but we have to initialize a default value for now
|
# UserMemory will be removed in version 0.156.0 or on 2025-08-04, whichever comes first
|
||||||
self._user_memory = None
|
self._user_memory = None
|
||||||
|
|
||||||
if self.memory:
|
if self.memory:
|
||||||
@@ -1255,6 +1255,7 @@ class Crew(FlowTrackable, BaseModel):
|
|||||||
if self.external_memory:
|
if self.external_memory:
|
||||||
copied_data["external_memory"] = self.external_memory.model_copy(deep=True)
|
copied_data["external_memory"] = self.external_memory.model_copy(deep=True)
|
||||||
if self.user_memory:
|
if self.user_memory:
|
||||||
|
# DEPRECATED: UserMemory will be removed in version 0.156.0 or on 2025-08-04
|
||||||
copied_data["user_memory"] = self.user_memory.model_copy(deep=True)
|
copied_data["user_memory"] = self.user_memory.model_copy(deep=True)
|
||||||
|
|
||||||
copied_data.pop("agents", None)
|
copied_data.pop("agents", None)
|
||||||
|
|||||||
@@ -108,6 +108,7 @@ class ContextualMemory:
|
|||||||
|
|
||||||
def _fetch_user_context(self, query: str) -> str:
|
def _fetch_user_context(self, query: str) -> str:
|
||||||
"""
|
"""
|
||||||
|
DEPRECATED: Will be removed in version 0.156.0 or on 2025-08-04, whichever comes first.
|
||||||
Fetches and formats relevant user information from User Memory.
|
Fetches and formats relevant user information from User Memory.
|
||||||
Args:
|
Args:
|
||||||
query (str): The search query to find relevant user memories.
|
query (str): The search query to find relevant user memories.
|
||||||
|
|||||||
@@ -14,7 +14,8 @@ class UserMemory(Memory):
|
|||||||
|
|
||||||
def __init__(self, crew=None):
|
def __init__(self, crew=None):
|
||||||
warnings.warn(
|
warnings.warn(
|
||||||
"UserMemory is deprecated and will be removed in a future version. "
|
"UserMemory is deprecated and will be removed in version 0.156.0 "
|
||||||
|
"or on 2025-08-04, whichever comes first. "
|
||||||
"Please use ExternalMemory instead.",
|
"Please use ExternalMemory instead.",
|
||||||
DeprecationWarning,
|
DeprecationWarning,
|
||||||
stacklevel=2,
|
stacklevel=2,
|
||||||
|
|||||||
@@ -1,8 +1,16 @@
|
|||||||
|
import warnings
|
||||||
from typing import Any, Dict, Optional
|
from typing import Any, Dict, Optional
|
||||||
|
|
||||||
|
|
||||||
class UserMemoryItem:
|
class UserMemoryItem:
|
||||||
def __init__(self, data: Any, user: str, metadata: Optional[Dict[str, Any]] = None):
|
def __init__(self, data: Any, user: str, metadata: Optional[Dict[str, Any]] = None):
|
||||||
|
warnings.warn(
|
||||||
|
"UserMemoryItem is deprecated and will be removed in version 0.156.0 "
|
||||||
|
"or on 2025-08-04, whichever comes first. "
|
||||||
|
"Please use ExternalMemory instead.",
|
||||||
|
DeprecationWarning,
|
||||||
|
stacklevel=2,
|
||||||
|
)
|
||||||
self.data = data
|
self.data = data
|
||||||
self.user = user
|
self.user = user
|
||||||
self.metadata = metadata if metadata is not None else {}
|
self.metadata = metadata if metadata is not None else {}
|
||||||
|
|||||||
Reference in New Issue
Block a user