Class MemoryStrategy
- All Implemented Interfaces:
software.amazon.jsii.JsiiSerializable
Use built-in strategies for quick setup, use built-in strategies with override to specify models and prompt templates.
Example:
// Create a custom semantic memory strategy
ManagedMemoryStrategy customSemanticStrategy = MemoryStrategy.usingSemantic(ManagedStrategyProps.builder()
.strategyName("customSemanticStrategy")
.description("Custom semantic memory strategy")
.namespaces(List.of("/custom/strategies/{memoryStrategyId}/actors/{actorId}"))
.customConsolidation(OverrideConfig.builder()
.model(FoundationModel.fromFoundationModelId(this, "ConsolidationModel", FoundationModelIdentifier.ANTHROPIC_CLAUDE_3_5_SONNET_20241022_V2_0))
.appendToPrompt("Custom consolidation prompt for semantic memory")
.build())
.customExtraction(OverrideConfig.builder()
.model(FoundationModel.fromFoundationModelId(this, "ExtractionModel", FoundationModelIdentifier.ANTHROPIC_CLAUDE_3_5_SONNET_20241022_V2_0))
.appendToPrompt("Custom extraction prompt for semantic memory")
.build())
.build());
// Create memory with custom strategy
Memory memory = Memory.Builder.create(this, "MyMemory")
.memoryName("my-custom-memory")
.description("Memory with custom strategy")
.expirationDuration(Duration.days(90))
.memoryStrategies(List.of(customSemanticStrategy))
.build();
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class software.amazon.jsii.JsiiObject
software.amazon.jsii.JsiiObject.InitializationMode -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedMemoryStrategy(software.amazon.jsii.JsiiObject.InitializationMode initializationMode) protectedMemoryStrategy(software.amazon.jsii.JsiiObjectRef objRef) -
Method Summary
Modifier and TypeMethodDescriptionstatic ManagedMemoryStrategyDefault strategies for organizing and extracting memory data, each optimized for specific use cases.static ManagedMemoryStrategyDefault strategies for organizing and extracting memory data, each optimized for specific use cases.static ManagedMemoryStrategyDefault strategies for organizing and extracting memory data, each optimized for specific use cases.static ManagedMemoryStrategyDefault strategies for organizing and extracting memory data, each optimized for specific use cases.static ManagedMemoryStrategyusingEpisodic(ManagedStrategyProps config) Creates an episodic memory strategy with custom configuration.static SelfManagedMemoryStrategyCreates a self-managed memory strategy.static ManagedMemoryStrategyusingSemantic(ManagedStrategyProps config) Creates a semantic memory strategy with custom configuration.static ManagedMemoryStrategyCreates a summarization memory strategy with custom configuration.static ManagedMemoryStrategyCreates a user preference memory strategy with custom configuration.Methods inherited from class software.amazon.jsii.JsiiObject
jsiiAsyncCall, jsiiAsyncCall, jsiiCall, jsiiCall, jsiiGet, jsiiGet, jsiiSet, jsiiStaticCall, jsiiStaticCall, jsiiStaticGet, jsiiStaticGet, jsiiStaticSet, jsiiStaticSetMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface software.amazon.jsii.JsiiSerializable
$jsii$toJson
-
Constructor Details
-
MemoryStrategy
protected MemoryStrategy(software.amazon.jsii.JsiiObjectRef objRef) -
MemoryStrategy
protected MemoryStrategy(software.amazon.jsii.JsiiObject.InitializationMode initializationMode) -
MemoryStrategy
@Stability(Stable) public MemoryStrategy()
-
-
Method Details
-
usingBuiltInEpisodic
Default strategies for organizing and extracting memory data, each optimized for specific use cases.Captures meaningful slices of user and system interactions, preserve them into compact records after summarizing. Extracted memory example: User first asked about pricing on Monday, then requested feature comparison on Tuesday, finally made purchase decision on Wednesday.
- Returns:
- A ManagedMemoryStrategy.
-
usingBuiltInSemantic
Default strategies for organizing and extracting memory data, each optimized for specific use cases.Distills general facts, concepts, and underlying meanings from raw conversational data, presenting the information in a context-independent format. Extracted memory example: In-context learning = task-solving via examples, no training needed.
- Returns:
- A ManagedMemoryStrategy.
-
usingBuiltInSummarization
Default strategies for organizing and extracting memory data, each optimized for specific use cases.This strategy compresses conversations into concise overviews, preserving essential context and key insights for quick recall. Extracted memory example: Users confused by cloud setup during onboarding.
- Returns:
- A ManagedMemoryStrategy.
-
usingBuiltInUserPreference
Default strategies for organizing and extracting memory data, each optimized for specific use cases.Captures individual preferences, interaction patterns, and personalized settings to enhance future experiences. Extracted memory example: User needs clear guidance on cloud storage account connection during onboarding.
- Returns:
- A ManagedMemoryStrategy.
-
usingEpisodic
@Stability(Stable) @NotNull public static ManagedMemoryStrategy usingEpisodic(@NotNull ManagedStrategyProps config) Creates an episodic memory strategy with custom configuration.Captures meaningful slices of user and system interactions, preserve them into compact records after summarizing. Extracted memory example: User first asked about pricing on Monday, then requested feature comparison on Tuesday, finally made purchase decision on Wednesday.
- Parameters:
config-- The configuration for the episodic memory strategy.
- Returns:
- A ManagedMemoryStrategy.
-
usingSelfManaged
@Stability(Stable) @NotNull public static SelfManagedMemoryStrategy usingSelfManaged(@NotNull SelfManagedStrategyProps config) Creates a self-managed memory strategy.A self-managed strategy gives you complete control over your memory extraction and consolidation pipelines.
- Parameters:
config-- The configuration for the self-managed memory strategy.
- Returns:
- A SelfManagedMemoryStrategy.
-
usingSemantic
@Stability(Stable) @NotNull public static ManagedMemoryStrategy usingSemantic(@NotNull ManagedStrategyProps config) Creates a semantic memory strategy with custom configuration.Distills general facts, concepts, and underlying meanings from raw conversational data, presenting the information in a context-independent format. Extracted memory example: In-context learning = task-solving via examples, no training needed.
- Parameters:
config-- The configuration for the semantic memory strategy.
- Returns:
- A ManagedMemoryStrategy.
-
usingSummarization
@Stability(Stable) @NotNull public static ManagedMemoryStrategy usingSummarization(@NotNull ManagedStrategyProps config) Creates a summarization memory strategy with custom configuration.This strategy compresses conversations into concise overviews, preserving essential context and key insights for quick recall. Extracted memory example: Users confused by cloud setup during onboarding.
- Parameters:
config-- The configuration for the summarization memory strategy.
- Returns:
- A ManagedMemoryStrategy.
-
usingUserPreference
@Stability(Stable) @NotNull public static ManagedMemoryStrategy usingUserPreference(@NotNull ManagedStrategyProps config) Creates a user preference memory strategy with custom configuration.Captures individual preferences, interaction patterns, and personalized settings to enhance future experiences. Extracted memory example: User needs clear guidance on cloud storage account connection during onboarding.
- Parameters:
config-- The configuration for the user preference memory strategy.
- Returns:
- A ManagedMemoryStrategy.
-