CrewAI is not accurate when retrieving memories

I have an application with CrewAI, everything works without errors, and we have long-term, short-term, and entity memory. The memories are being saved without any issues.

However, it is not accurate when retrieving memories.

For example, in a conversation with the agent (note that the problem occurs in question 5 when I change the context from the first discussed topic):

Question 1: Can you explain variables in Python?
The agent’s response is coherent with the task and the question; it explains variables in Python.

Question 2: Can you give me another example of that?
The response is coherent; it knows it has to provide another Python example.

Question 3: Can you give me one more example?
Again, the response is coherent; it understands it needs to give another Python example.

Question 4: Can you explain abstract classes in Python?
It responds coherently about abstract classes.

Question 5: Can you give me one more example of that?
At this point, the agent does not understand that question 5 refers to my last message about abstract classes. Instead, it goes back to discussing the first topic we talked about—variables in Python.

We overwrite the RAGStorage class to visualize the query results in the collection within the search method, and the documents it retrieves are indeed related to the first topic of the conversation. The scores are also higher for the first topic, and in no test did it bring anything relevant to the last topic discussed—it always retrieves the first one.

Would this be a bug, or is this how CrewAI is designed to work?

Is there a way for it to remember and reference my last question in relation to the last topic discussed?