this post was submitted on 14 Jan 2024
264 points (95.5% liked)
Technology
60080 readers
3326 users here now
This is a most excellent place for technology news and articles.
Our Rules
- Follow the lemmy.world rules.
- Only tech related content.
- Be excellent to each another!
- Mod approved content bots can post up to 10 articles per day.
- Threads asking for personal tech support may be deleted.
- Politics threads may be removed.
- No memes allowed as posts, OK to post as comments.
- Only approved bots from the list below, to ask if your bot can be added please contact us.
- Check for duplicates before posting, duplicates may be removed
Approved Bots
founded 2 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
I agree that it has limits but there are things we could do to make it reasonably good. ChatGPT knows how to execute actions (such as calling an API or doing a web search). It could probably be made to store and look up information in a vector database, essentially giving it a long-term memory.
Given some smaller breakthroughs in performance and model size we could conceivably retrain the network on new input continuously, in order to incorporate new knowledge.
That's the thing, I don't think a database can work as a long term memory here. How would it work? Let's say you tell your AI girlfriend that Interstellar movie was so bad it made you vomit. What would it store in the DB? When would it look that info up? It would be even worse with specific events. Should it remember the exact date of each event perfectly like DB does? It would be unnatural. To actually simulate memory it should alter the model somehow and the scale of the change should be proportional to the emotional charge of the message. I think this is on a completely different level than current models.
Vector databases are relatively good at this kind of thing, because they can find records based on queries that are semantically close instead of just a lexical search. It would probably still make sense to split the information up in fragments such as e.g., "Interstellar movie," "watched on February 2nd, 2021," "made me vomit", and then connect those records to each other. GPTs are good at that kind of preprocessing. The idea would not be to store exact data such as timestamps and that's not how vector databases work, so recall would be more associative just like for humans (I can't ask you what movie you watched on Feburary 2nd, 2021 and expect an accurate reply either).
But you would have to do something like multiple steps of preprocessing with expanding search depth on each step and do it both ways: when recollecting and changing memories. Like if I say:
So you process the first input, find the relevant info in the 'memory' but then for the second one you have to recognize that this is regarding the same memory, understand the memory and alter it/append to it. It would get complicated really fast. We would need some AI memory management system to manage the memory for the AI. I'm sure it's technically possible but I think it will take another breakthrough and we won't see it soon.
Again, you will certainly hit limitations if you push it, but the example you give would work fine if you just append the added information to the database. A query for Interstellar would return both your original statements and the fact that you later said you lied about it, and all of these records are inserted into the GPT's context (short-term memory) when discussing that subject.