I’ve been working with ChatGPT on a paid account for a while. I have, however, quickly discovered that leaving ChatGPT to create memories doesn’t work that well if you really want to take advantage of the capabilities it has to offer. The user has to take an active approach in memory management for it to become usefull.
An example is the following. Having a memory, “I can’t believe it happened.”, is completely meaningless without context. We don’t know what “it” refers to, who is involved, or why it’s significant. The memory is vague and leaves too many unanswered questions. A more usefull memory would be, “I applied for a position as the lead C++ programmer at company-abc. I can’t believe I got the job offer after my first interview! It was such a surprise!” Even though this memory could benefit from additional context, there is already enough information to draw meaningful conclusions. Given a small amount of additional context during a general conversation with ChatGPT will empower ChatGPT to give meaningfull responses.
After realizing this problem i decided to create a memory management protocol for ChatGPT to follow. As part of the protocol i have created the following template to store memories:
Memory Metadata
- Creation Date:
- Last Modified Date:
- Review Date:
- Memory ID: 1
Memory: (A reference number for identification)
To test my template i cleared my memory, and then asked ChatGPT to commit,
Memory Metadata
- Creation Date: November 28, 2024
- Last Modified Date: November 28, 2024
- Review Date: November 28, 2024
- Memory ID: 1
Memory: Initial memory
to my memory. It came back displaying the familiar ‘Memory updated’ message and a message informing me that my memory has been successfully committed. When i hover my mouse on ‘Memory updated’ tooltip it displays the entire ‘memory’ that i asked ChatGPT to commit. When i check through the menu system, as expected the memory is there. screenshot attached. See screenshot at the bottom.
I followed that up with another example, and asked ChatGPT to commit,
Memory Metadata
- Creation Date: November 28, 2024
- Last Modified Date: November 28, 2024
- Review Date: November 28, 2024
- Memory ID: 2
Memory: If i ask ChatGPT to create a memory, ChatGPT should check that i adhere to my Memory Management Protocols. If ChatGPT is aware of any details that i can add to the memory being created, ChatGPT should provide it. i can override ChatGPT.
‘’’
to my memory. It came back displaying the familiar ‘Memory updated’ message and a message informing me that my memory has been successfully committed. When i hover my mouse on ‘Memory updated’ tooltip it displays the entire ‘memory’ that i just asked ChatGPT to commit.
However, when i check through the menu system, unexpectedly, even though the memory is there, the [my] ‘metadata’ is not stored with the memory. Despite me trying this over and over, from different browsers and vm’s, using different GPT models, to no avail, the system refuses to commit any subsequent memories with the ‘metadata’. It only saves the “Memory”. See screenshot at the bottom.
I am aware that this is not the actual ‘metadata’ of the memory, it is just additional information that i want to add to memories to use it more efficiently. I am just calling it ‘metadata’ because to me it makes sense, but i could have called it nothing, and just said i added the following text. As far as my understanding goes whatever you commit to memory is just treated as plain text, nothing more. I cannot influence or have any control over the ChatGPT system with my memories
Which leaves me rather perplexed. Clearly i can have my ‘metadata’ there, the ‘Initial’ memory that i created is the proof. It cannot be the ‘Memory’ itself, because that gets committed in the 2nd instant without my ‘metadata’.
I have also tried to commit just the ‘Metadata’ portion as a memory, which in reality could be the memory that i want to commit, it doesn’t actually commit, despite ChatGPT informing me that it has been committed.
Why on earth is the system behaving like that? Why is it refusing to commit any new memories subsequent to the ‘Initial’ memory with my ‘Metadata’ text?