mirror of
https://github.com/crewAIInc/crewAI.git
synced 2026-01-27 00:58:13 +00:00
feat: Enhance memory system with isolated memory configuration (#2597)
* feat: support defining any memory in an isolated way This change makes it easier to use a specific memory type without unintentionally enabling all others. Previously, setting memory=True would implicitly configure all available memories (like LTM and STM), which might not be ideal in all cases. For example, when building a chatbot that only needs an external memory, users were forced to also configure LTM and STM — which rely on default OpenAPI embeddings — even if they weren’t needed. With this update, users can now define a single memory in isolation, making the configuration process simpler and more flexible. * feat: add tests to ensure we are able to use contextual memory by set individual memories * docs: enhance memory documentation * feat: warn when long-term memory is defined but entity memory is not
This commit is contained in:
@@ -72,7 +72,6 @@ class CrewAgentExecutorMixin:
|
||||
"""Create and save long-term and entity memory items based on evaluation."""
|
||||
if (
|
||||
self.crew
|
||||
and self.crew.memory
|
||||
and self.crew._long_term_memory
|
||||
and self.crew._entity_memory
|
||||
and self.task
|
||||
@@ -114,6 +113,15 @@ class CrewAgentExecutorMixin:
|
||||
except Exception as e:
|
||||
print(f"Failed to add to long term memory: {e}")
|
||||
pass
|
||||
elif (
|
||||
self.crew
|
||||
and self.crew._long_term_memory
|
||||
and self.crew._entity_memory is None
|
||||
):
|
||||
self._printer.print(
|
||||
content="Long term memory is enabled, but entity memory is not enabled. Please configure entity memory or set memory=True to automatically enable it.",
|
||||
color="bold_yellow",
|
||||
)
|
||||
|
||||
def _ask_human_input(self, final_answer: str) -> str:
|
||||
"""Prompt human input with mode-appropriate messaging."""
|
||||
|
||||
Reference in New Issue
Block a user