You can add new interactions and recall all past ones.
Examples
This example adds two interactions and prints the full memory list.
Agentic AI
memory = EpisodicMemory()
memory.add_interaction('User asked about weather')
memory.add_interaction('AI replied with forecast')
print(memory.recall())
Shows that memory starts empty before adding anything.
Agentic AI
memory = EpisodicMemory()
print(memory.recall())
Sample Model
This program creates an episodic memory, adds four interactions, and then prints them all in order.
Agentic AI
class EpisodicMemory:
def __init__(self):
self.memory = []
def add_interaction(self, interaction):
self.memory.append(interaction)
def recall(self):
return self.memory
# Create memory instance
memory = EpisodicMemory()
# Simulate interactions
memory.add_interaction('User: Hello AI')
memory.add_interaction('AI: Hello! How can I help you?')
memory.add_interaction('User: What is the time?')
memory.add_interaction('AI: It is 3 PM.')
# Recall past interactions
past = memory.recall()
for i, interaction inenumerate(past, 1):
print(f"Interaction {i}: {interaction}")
OutputSuccess
Important Notes
Episodic memory is like a diary for AI conversations.
Storing too many interactions may need cleanup or limits.
More advanced systems use summaries or embeddings for efficiency.
Summary
Episodic memory stores past interactions to improve AI responses.
It helps AI remember context and personalize conversations.
Simple implementations use lists to keep track of interactions.
Practice
(1/5)
1. What is the main purpose of episodic memory in agentic AI systems?
easy
A. To reduce the size of the AI model
B. To increase the speed of AI computations
C. To generate random responses without context
D. To store past interactions for better context and personalization
Solution
Step 1: Understand episodic memory role
Episodic memory stores past interactions to help AI remember context.
Step 2: Connect purpose to AI behavior
This memory allows AI to personalize responses based on previous conversations.
Final Answer:
To store past interactions for better context and personalization -> Option D
Quick Check:
Episodic memory = store past interactions [OK]
Hint: Episodic means remembering past events [OK]
Common Mistakes:
Confusing episodic memory with model size optimization
Thinking it speeds up computations directly
Assuming it generates random responses
2. Which Python data structure is commonly used to implement episodic memory for past interactions?
easy
A. Dictionary
B. Tuple
C. List
D. Set
Solution
Step 1: Recall common data structures for storing sequences
Lists are used to keep ordered collections of items, like past interactions.
Step 2: Match episodic memory needs
Episodic memory needs to store interactions in order, so lists fit best.
Final Answer:
List -> Option C
Quick Check:
Ordered storage = List [OK]
Hint: Use lists to keep ordered past interactions [OK]
Common Mistakes:
Choosing dictionary which is unordered by default
Using sets which do not keep order
Using tuples which are immutable
3. Given the code below, what will be the output?
memory = []
memory.append('Hello')
memory.append('How are you?')
print(memory[-1])
medium
A. 'Hello'
B. 'How are you?'
C. IndexError
D. None
Solution
Step 1: Understand list append and indexing
Appending adds items to the end; memory[-1] accesses the last item.
Step 2: Trace the code execution
First 'Hello' added, then 'How are you?'; last item is 'How are you?'.
Final Answer:
'How are you?' -> Option B
Quick Check:
Last list item = 'How are you?' [OK]
Hint: Negative index -1 gets last list element [OK]
Common Mistakes:
Thinking memory[-1] returns first element
Expecting an error from negative indexing
Confusing append with insert
4. Identify the error in this episodic memory code snippet:
memory = []
memory.add('Hi')
memory.append('Bye')
medium
A. Using add() on a list causes an error
B. append() is not a valid list method
C. memory should be a dictionary
D. No error, code runs fine
Solution
Step 1: Check list methods
Lists use append() to add items, not add().
Step 2: Identify method error
Calling add() on a list raises AttributeError.
Final Answer:
Using add() on a list causes an error -> Option A
Quick Check:
List method add() = Error [OK]
Hint: Lists use append(), sets use add() [OK]
Common Mistakes:
Thinking append() is invalid
Assuming add() works on lists
Confusing list with set methods
5. You want to improve an AI agent's episodic memory by limiting stored interactions to the last 3 only. Which code snippet correctly implements this?
hard
A. memory.append(new_interaction)
memory = memory[-3:]
B. memory = memory.append(new_interaction)[-3:]
C. memory.add(new_interaction)
memory = memory[-3:]
D. memory.append(new_interaction)
memory = memory[:3]
Solution
Step 1: Add new interaction correctly
Use append() to add new_interaction to the list.
Step 2: Keep only last 3 interactions
Slice memory with memory[-3:] to keep last 3 items.
Step 3: Check other options
The snippet assigning the result of append() fails because append() returns None; using add() is invalid for lists; slicing [:3] keeps first 3, not last 3.
Final Answer:
memory.append(new_interaction)
memory = memory[-3:] -> Option A
Quick Check:
Append then slice last 3 = memory.append(new_interaction)
memory = memory[-3:] [OK]
Hint: Append then slice last 3 with [-3:] [OK]
Common Mistakes:
Using add() instead of append()
Slicing first 3 instead of last 3
Assigning append() result to memory
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.