Strands Plugin: Memory
FloTorch Strands Memory services enable persistent memory capabilities for your agents, allowing them to store and retrieve information across sessions. The memory system integrates seamlessly with Strands’ tool framework and provides long-term persistent storage through a memory tool interface.
Important: Memory services require prior setup in the FloTorch Console. Memory capabilities are not built-in and must be explicitly configured.
Prerequisites
Section titled “Prerequisites”Before using FloTorch Strands Memory services, ensure you have completed the general prerequisites outlined in the Strands Plugin Overview, including installation and environment configuration.
Quick Setup
Section titled “Quick Setup”Memory Tool Service
Section titled “Memory Tool Service”from flotorch.strands.memory import FlotorchMemoryTool
# Initialize memory tool (requires prior registration in FloTorch Console)memory = FlotorchMemoryTool( provider_name="your-memory-provider", api_key="your_api_key", base_url="https://gateway.flotorch.cloud", user_id="user_123", app_id="app_123")Configuration
Section titled “Configuration”Parameters
Section titled “Parameters”Configure your memory tool with the following parameters:
FlotorchMemoryTool( provider_name: str, # Memory provider name (from FloTorch Console) - required api_key: str, # FloTorch API key for authentication (required) base_url: str, # FloTorch Gateway URL (required) user_id: str, # User identifier for memory isolation (required) app_id: str # Application identifier for memory isolation (required))Parameter Details:
provider_name- The name of the memory provider configured in FloTorch Consoleapi_key- Authentication key for accessing FloTorch Gateway (can be set via environment variable)base_url- FloTorch Gateway endpoint URL (can be set via environment variable)user_id- User identifier for isolating memory per userapp_id- Application identifier for isolating memory per application
Features
Section titled “Features”Tool Interface
Section titled “Tool Interface”Fully implements Strands’ tool interface:
- Tool Operations - Provides memory operations through tool interface
- Memory Storage - Stores and retrieves information across sessions
- Strands Compatibility - Works seamlessly with Strands’ tool framework
Automatic Content Management
Section titled “Automatic Content Management”Memory tool provides automatic content management:
- Content Extraction - Automatically extracts content from agent interactions
- Memory Persistence - Persists memory to FloTorch Memory
- Metadata Storage - Stores conversations with associated metadata
- Tool Integration - Integrates as a tool in agent’s tool list
Search Capabilities
Section titled “Search Capabilities”Provides comprehensive memory search:
- Keyword-Based Search - Performs traditional text-based searches
- User/App Filtering - Filters results by user ID and application name
- Metadata Filtering - Supports custom metadata filtering
- Date Range Queries - Allows filtering by time ranges
Usage Example
Section titled “Usage Example”Basic Memory Setup
Section titled “Basic Memory Setup”from flotorch.strands.agent import FlotorchStrandsAgentfrom flotorch.strands.memory import FlotorchMemoryTool
# Initialize memory toolmemory = FlotorchMemoryTool( provider_name="your-memory-provider", api_key="your_api_key", base_url="https://gateway.flotorch.cloud", user_id="user_123", app_id="app_123")
# Use with agent (add to tools)agent_manager = FlotorchStrandsAgent( agent_name="customer-support", custom_tools=[memory], # Add memory tool base_url="https://gateway.flotorch.cloud", api_key="your_api_key")
agent = agent_manager.get_agent()Memory Tool Operations
Section titled “Memory Tool Operations”from flotorch.strands.memory import FlotorchMemoryTool
# Initialize memory toolmemory = FlotorchMemoryTool( provider_name="your-memory-provider", api_key="your_api_key", base_url="https://gateway.flotorch.cloud", user_id="user_123", app_id="app_123")
# Memory tool can be used by the agent through tool calls# The agent will automatically use the memory tool when neededBest Practices
Section titled “Best Practices”- Memory Provider Setup - Always configure memory providers in FloTorch Console before using them in code
- User/App Isolation - Use appropriate
user_idandapp_idvalues to isolate memory per user and application - Tool Integration - Add memory tool to agent’s tool list for automatic memory access
- Error Handling - Implement proper error handling for memory operations in production environments
- Memory Cleanup - Consider implementing memory cleanup strategies for long-running applications
Next Steps
Section titled “Next Steps”- Agent Configuration - Learn how to configure agents with memory capabilities
- Session Management - Implement session persistence alongside memory
- LLM Configuration - Configure language models for your memory-enabled agents