They don’t really transfer solutions to new problems
Lets say there is a binary format some old game uses (Doom), and in it some of its lumps it can store indexed images, each pixel is an index of color in palette which is stored in another lump, there’s also a programming language called Rust, and a little known/used library that can look into binary data of that format, there’s also a GUI library in Rust that not many people used either. Would you consider it an “ability to transfer solutions to new problems” that it was able to implement extracting image data from that binary format using the library, extracting palette data from that binary format, converting that indexed image using extracted palette into regular rgba image data, and then render that as window background using that GUI library, the only reference for which is a file with names and type signatures of functions. There’s no similar Rust code in the wild at all for any of those scenarios. Most of this it was able to do from a few little prompts, maybe even from the first one. There sure were few little issues along the way that required repromting and figuring things together with it. Stuff like this with AI can take like half an hour while doing the whole thing fully manually could easily take multiple days just for the sake of figuring out APIs of libraries involved and intricacies of recoding indexed image to rgba. For me this is overpowered enough even right now, and it’s likely going to improve even more in future.
That’s applying existing solutions to a different programming language or domain, but ultimately every single technique used already exists. It only applied what it knew, it did not come up with something new. The problem as stated is also not really “new” either, image extraction, conversion and rendering isn’t exactly a “new problem”.
I’m not disputing that LLMs can speed up some work, I know it occasionally does so for me as well. But what you have to understand is that the LLM only remembered similar problems and their solutions, it did not at any point invent something truly new. I understand the distinction is difficult to make.
I understand what you’re having in mind, I’ve had similar intuitions about AI in early 2000s.
What exactly is “truly new” is an interesting topic ofc, but it’s a separate topic.
Nowadays I’m trying to look at things more empyrically, without projecting my internal intuitions on everything.
In practice it does generalize knowledge, use many forms of abstract reasoning and transfer knowledge across different domains.
And it can do coding way beyond the level of complexity of what average software developer does at everyday work.
Lets say there is a binary format some old game uses (Doom), and in it some of its lumps it can store indexed images, each pixel is an index of color in palette which is stored in another lump, there’s also a programming language called Rust, and a little known/used library that can look into binary data of that format, there’s also a GUI library in Rust that not many people used either. Would you consider it an “ability to transfer solutions to new problems” that it was able to implement extracting image data from that binary format using the library, extracting palette data from that binary format, converting that indexed image using extracted palette into regular rgba image data, and then render that as window background using that GUI library, the only reference for which is a file with names and type signatures of functions. There’s no similar Rust code in the wild at all for any of those scenarios. Most of this it was able to do from a few little prompts, maybe even from the first one. There sure were few little issues along the way that required repromting and figuring things together with it. Stuff like this with AI can take like half an hour while doing the whole thing fully manually could easily take multiple days just for the sake of figuring out APIs of libraries involved and intricacies of recoding indexed image to rgba. For me this is overpowered enough even right now, and it’s likely going to improve even more in future.
That’s applying existing solutions to a different programming language or domain, but ultimately every single technique used already exists. It only applied what it knew, it did not come up with something new. The problem as stated is also not really “new” either, image extraction, conversion and rendering isn’t exactly a “new problem”.
I’m not disputing that LLMs can speed up some work, I know it occasionally does so for me as well. But what you have to understand is that the LLM only remembered similar problems and their solutions, it did not at any point invent something truly new. I understand the distinction is difficult to make.
I understand what you’re having in mind, I’ve had similar intuitions about AI in early 2000s. What exactly is “truly new” is an interesting topic ofc, but it’s a separate topic. Nowadays I’m trying to look at things more empyrically, without projecting my internal intuitions on everything. In practice it does generalize knowledge, use many forms of abstract reasoning and transfer knowledge across different domains. And it can do coding way beyond the level of complexity of what average software developer does at everyday work.