7 ms·
I've seen estimations that verbatim copies of training code constitute around 0.1% of the code produced by the Copilot. It would be relatively straight-forward
by eterevsky 4y ago
I've seen estimations that verbatim copies of training code constitute around 0.1% of the code produced by the Copilot. It would be relatively straight-forward to implement a verification step that would remove this code. I would be surprised if it hasn't been done already.
With verbatim code copies out of the way, I don't see any basis to consider code produced by Copilot copyrighted. So unless you have some problem with the fact that portions of your code will be public domain, I don't see any reason not to use it.
And one more thought. The author gives an example of using Copilot to list prime numbers. That's not a good use for it. Copilot and similar systems are primarily useful for writing boring boilerplate code, saving your time for more involved parts.
- withinboredom 4y agoI vaguely remember that generated code can't be copyrighted either. So you end up with code that you can't even own and some you can? How does that work?
- _gabe_ 4y agoThis doesn't sound like it would be possible. Depending on how strict your definition of generated code is, it would be impossible to copyright any compiled code. If you have a looser definition, I don't see why you wouldn't be able to copyright code that you generated by using Unreal Engine's blueprint to C++ utility, or any other tool that assists in transpiling code. 99% of the web consists of transpiled JS these days.
- withinboredom 4y agoThere's a difference between "generated" and "processed/transformed through a process". The fact that the chemical composition of paint changes as it dries does not change the art.
- _gabe_ 4y agoAccording to Websters, to generate is: > : to define or originate (something, such as a mathematical or linguistic set or structure) by the application of one or more rules or operations[0] Creating something from the application of rules or operations sounds just like what a compiler does. Whereas to process something is: > : treated or made by a special process especially when involving synthesis or artificial modification So if anything it sounds like you're asking if processed code is copyrightable. But this is just quibbling over pedantry. My original point stands. AI is just following a predefined set of rules to transform your request into code. It's a program, just like a compiler is a program. So it would be really hard to say that AI generated code is non copyrightable, but compiler/transpiler/fuzzy generated code is copyrightable. [0]: https://www.merriam-webster.com/dictionary/generate https://www.merriam-webster.com/dictionary/generate [1]: https://www.merriam-webster.com/dictionary/process https://www.merriam-webster.com/dictionary/process
- withinboredom 4y agoI think we can all agree that copilot “generates” code. In that the code did not exist until copilot suggests it. I also think we can agree that a compiler turns existing code into new code that does the exact same thing the code describes. If we can’t agree on that, we have some pretty fundamental definitions to figure out in the courts.
- eterevsky 4y agoYou'd own the copyright for the whole program, but not for implementations of some functions.
- keithnz 4y agoI agree, it needs to ensure no verbatim code. I also noticed that there is also an option not to use public code. But I actually like the idea of using open source code. In one breath we (software devs) have recommended reading open source software to learn coding, then when someone try's to automate that using AI so that it try's to contextually help you write code, some people seem upset that we can automate extracting code knowledge / patterns because we didn't do it with our wetware? I think it should be highly encouraged for people to extract knowledge from open code, even if at the moment it is far from perfect. The boiler plate stuff at the moment is great, and from time to time it writes some good contextually aware stuff as well. So, in summary, if humans are allowed to learn from open code, then I think AI should be allowed to learn from open code too.
- axg11 4y agoI believe this is already a feature that you can activate for Github Copilot.
- ShamelessC 4y agoIt is. One thing you'll notice about all the copilot detractors - they frequently haven't actually tried it themselves.
- iostream24 4y agoI can’t think of a use case for it. By the time I have decided upon an approach, I likely have the constituent bits already somewhat composed, CoPilot would only get in the way. Assuming a use case, why in earth would I trust such a Trojan Horse from Microsoft, seeing as how it’s likely serving its master in intended ways I can only guess at? It’s not a useful tool, imo, but then I don’t use IDEs or autocomplete. Maybe I’m not the target developer. It’s a duck problem. Quacks like trouble, smells like trouble, looks like trouble, comes from an arch-enemy of FOSS that bought a major FOSS hub and is now seeking to do something with its purchase, which I’ll wager isn’t a good upright wholesome thing.
- eterevsky 4y agoYour comment sounds like "I hate it, but I can't find any concrete problems that I can criticize".
- iostream24 4y agoOr you can read my actual comment that states that I don’t have a use case for it, and that I de-facto don’t trust it’s corporate owner, whose slogan was literally “embrace, extend, extinguish” a few years after the birth of the web. Why invent things when I was perfectly clear?
- eterevsky 4y ago
- overthetop2 4y ago> The author gives an example of using Copilot to list prime numbers. That's not a good use for it. That is literally the first kind of usage promoted on the main landing page for Copilot. It shows Copilot filling in the body of function definitions in three different languages.