Skip to main content
Configure agents to learn from interactions, capturing patterns, preferences, and insights to improve future responses.

Quick Start

1

Simple Enable

Enable learning with default settings:
from praisonaiagents import Agent
from praisonaiagents.config import MemoryConfig

agent = Agent(
    name="Learning Agent",
    instructions="You are a helpful assistant",
    memory=MemoryConfig(learn=True)
)
2

With Configuration

Enable specific learning capabilities:
from praisonaiagents import Agent
from praisonaiagents.config import MemoryConfig, LearnConfig

agent = Agent(
    name="Learning Agent",
    instructions="You are a helpful assistant",
    memory=MemoryConfig(
        learn=LearnConfig(
            persona=True,      # User preferences
            insights=True,     # Observations
            patterns=True,     # Reusable knowledge
            scope="private"
        )
    )
)

Configuration Options

from praisonaiagents.config import LearnConfig, LearnScope

config = LearnConfig(
    # Learning capabilities
    persona=True,           # User preferences and profile
    insights=True,          # Observations and learnings
    thread=True,            # Session/conversation context
    patterns=False,         # Reusable knowledge patterns
    decisions=False,        # Decision logging
    feedback=False,         # Outcome signals
    improvements=False,     # Self-improvement proposals
    
    # Scope configuration
    scope=LearnScope.PRIVATE,
    
    # Storage configuration
    store_path=None,        # Custom storage path
    
    # Maintenance settings
    auto_consolidate=True,  # Auto-consolidate learnings
    retention_days=None     # Days to retain (None = forever)
)
ParameterTypeDefaultDescription
personaboolTrueLearn user preferences and profile
insightsboolTrueCapture observations and learnings
threadboolTrueMaintain session/conversation context
patternsboolFalseStore reusable knowledge patterns
decisionsboolFalseLog decision-making process
feedbackboolFalseCapture outcome signals
improvementsboolFalseStore self-improvement proposals
scopestr | LearnScope"private"Visibility scope (private, shared)
store_pathstr | NoneNoneCustom path for learning storage
auto_consolidateboolTrueAutomatically consolidate learnings
retention_daysint | NoneNoneDays to retain learnings (None = forever)

Common Patterns

Pattern 1: Full Learning Profile

from praisonaiagents import Agent
from praisonaiagents.config import MemoryConfig, LearnConfig

agent = Agent(
    name="Full Learning Agent",
    instructions="You are a personalized assistant",
    memory=MemoryConfig(
        learn=LearnConfig(
            persona=True,
            insights=True,
            thread=True,
            patterns=True,
            decisions=True,
            feedback=True,
            improvements=True
        )
    )
)

Pattern 2: Shared Team Learning

from praisonaiagents import Agent
from praisonaiagents.config import MemoryConfig, LearnConfig, LearnScope

agent = Agent(
    name="Team Agent",
    instructions="Share learnings with team",
    memory=MemoryConfig(
        learn=LearnConfig(
            patterns=True,
            insights=True,
            scope=LearnScope.SHARED
        )
    )
)

Best Practices

The defaults (persona, insights, thread) cover most use cases. Only enable additional capabilities when needed.
Keep learnings private unless you explicitly need shared team knowledge. This protects user data.
For compliance requirements, set retention_days to automatically purge old learnings.