3 ms·
Well yes, if you’re asked to memorize someone’s code, you’ll get surprisingly far too. The fact that models can do this isn’t evidence of anything. It’s a capab
by sillysaurusx 4y ago
Well yes, if you’re asked to memorize someone’s code, you’ll get surprisingly far too. The fact that models can do this isn’t evidence of anything. It’s a capability (or “tendency” if you overfit too much).
I think it’s pretty obvious that if you train a model to reproduce existing work in its entirety, it fails the “sufficiently transformative” test and thus loses legal protection.
But there’s nothing stopping you from re-coding existing implementations of GPL’ed code. I used to do it. And your new code has your own chosen license, even if your ideas came from someone else. Are you sure the same logic shouldn’t apply to models?
- visarga 4y agoAre you sure you can do that? Because it is trivial to paraphrase code and text.
- sillysaurusx 4y agoSure. I’ve done it for Bel. (def no (x) (id x nil)) (def atom (x) (no (id (type x) ‘pair))) (def some (x f) (if (no x) nil (f (car x)) x (some (cdr x)))) (def all (x) (if (no x) t (f (car x)) (all (cdr x)) nil))) I don’t even have to pull up bel.bel to know that those are almost perfect replicas. I typed it on my iPad. EDIT: as far as I can tell, the only diff is that all comes before some. https://sep.yimg.com/ty/cdn/paulgraham/bel.bel?t=1595850613& https://sep.yimg.com/ty/cdn/paulgraham/bel.bel?t=1595850613& I could have kept going through most of the implementation.
- falcolas 4y agoI'd wager that most folks would consider the code for some basic list operations to be a little different from outputting a complete specific implementation of a fast square root function with its exact constants, including the comments.
- sillysaurusx 4y agoWhy? They’re both basic functions. I’d argue that if pg had left comments and constants, I’d have replicated those too. Perhaps my example isn’t as impressive as the model’s capability, but operationally it’s the same.
- falcolas 4y ago> But there’s nothing stopping you from re-coding existing implementations of GPL’ed code. There is if you've read the code. You can still violate copyright if you're hand-copying an implementation of a feature. Lawyers recommend "clean room" re-implementations when reproducing copyrighted functionality (when folks bother to ask) precisely to avoid the risk of code being copied verbatim. Functionality can be copied. Code can not.