<html><head></head><body>One line of discussion has followed the topic of possible additional restrictions beyond GPL that could be applied to the Model in order to restrict its use in production of proprietary code from copylefted inputs.<br><br>In that discussion, there was concern that those additional restrictions might violate Freedom 0. Another thing to consider is an additional licensing restriction to the input code which states something to the effect of "if you use my code to produce a Model, then anything produced by the Model must also carry my code's license." IIUC, a clause like this would clarify the legal definition of a derivative work.<br><br>The Model's license is still a relevant concern here, but I think it's interesting to consider the issue from both the perspective of the rights and wishes of author of software used as input to the Model and also that of the rights and wishes of the author of the Trainer/Model.<br><br>Joseph Turner<br><br><div class="gmail_quote">On June 29, 2022 10:43:10 AM PDT, "Bradley M. Kuhn" <bkuhn@sfconservancy.org> wrote:<blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
<pre dir="auto" class="k9mail">We make minutes from the Committee meetings public on this list.  We welcome<br>discussion from the public, and some members of the Committee are watching<br>this mailing list and will bring useful points raised in public discussion<br>back to the committee.<br><br>We ask that when you reply to the list, be mindful to keep the subject line<br>descriptive.  A long thread with “Re: Minutes of the AI Assist Committee” is<br>going to be difficult to follow the different threads of response that come<br>from the Committee's minutes.  Thus, while using threading (via<br>In-Reply-To:, References: and other RFC-5322-compliant headers) is still<br>useful, making sure that you change Subject: to match the content is much<br>appreciated for delineation of conversation.  Thanks!<br><br>BEGIN MINUTES, AI Assist Committee on Tuesday 2022-06-22, 18:00-19:00 UTC<br><br>The meeting began with a summary of the public mailing list discussion,<br>including the level of Computer Science academic interest in this particular<br>problem.<br><br>We discussed whether to invite academic Computer Science researchers focused<br>on APAS, either as full committee members or as a guest attendee.  We noted<br>that most researchers would focus on study about how the utility and<br>viability of APAS for developers, so there are few (if any) academics<br>studying the *ethics* related to that (as we are).  Nevertheless, their input<br>may be useful (at least) for complementary knowledge.<br><br>We discussed such engagement might also help to educate the academics about<br>community concerns — even if they wouldn't necessarily take us seriously.<br>Knowledge committee members on the topic did note that researchers tend to<br>always focus the technology — not whether or not the technology is ethical.<br><br>We also considered briefly the possibility that when the Committee is a bit<br>further a long, some subset of the committee should write an academic paper<br>ourselves.  We thought that such a paper might well have a impact on the<br>debate, and would potentially be of interest to the (likely minority of)<br>academics who are concerned about the ethics of technology.<br><br>ACTION ITEM: Two committee members agreed to follow up on the academic links<br>             posted to the list and follow up on these issues.<br><br>We had previously talked about plausibility of FOSS communities to reproduce<br>the results of large companies on creating APAS's.  Some committee members<br>thought it may in fact not be so expensive to train our own APAS using 100%<br>FOSS.  One committee member felt this was in the order of tens of thousands<br>of USD — which isn't hobbyist amounts — but is amounts that we could actually<br>effectively raise through donations.  The community and this committee itself<br>might well benefit from a system that's completely FOSS to better determine<br>if APAS's are an existential threat to FOSS, or if, in fact, APAS is merely<br>another key tasks that users want that we simply need to replace with FOSS<br>(i.e., perhaps APAS's *are* no different any other proprietary systems).<br><br>As a counter point, it's been reported that GPT-J is estimated to have cost<br>*hundreds* of thousands of dollars in retail compute time to train, so the<br>costs of running the software may greatly outweigh even the cost to pay<br>people to develop and maintain it.<br><br>A key additional task is curating the training set, since the model will<br>likely only be particularly useful if the training set includes actually good<br>choices of what software was fed in.  APAS (and machine learning in general)<br>are well-known to suffer from traditional “garbage in, garbage out” problems.<br><br>We discussed that there is still the threshold question of whether the<br>software itself (regardless of whether it is FOSS or proprietary) is ethical<br>at all.  A committee member compared APAS to FOSS implementations of Digital<br>Restrictions Management (DRM): while it's *possible* to write FOSS that does<br>the job of DRM, no one who writes FOSS wants to create such software, as most<br>people who support FOSS are also opposed to DRM entirely.  Should activists<br>argue that APAS's are just as dangerous to the future of computing as DRM?<br><br>However, a *FOSS* APAS (end-to-end — that spans from training, to model<br>tweaking tools, to APIs, to editor plugins — quite a bit of software) *would*<br>allow the Committee to more easily delineate the problems with these<br>systems.  It could well turn out that there is no existential threat: we<br>simply need FOSS solutions for this “new task in town”.<br><br>Furthermore, a FOSS system could be designed to annotate licensing<br>information (e.g., tagging it) in the model itself, which could then be used<br>as part of output to help users.  AI training systems are notoriously bad at<br>telling you “Why!?!?” it got a particular answer.  But licensing information<br>is generally well-marked with the code, so including the information as part<br>of the metadata may be a subset of the “Why!?!?” problem that we *can* solve.<br>This is difficult, but might not be impossible.  It *is*, however, an active<br>area of research as it's asking roughly the same scientific question as is<br>asked regarding “explainability of machine learning solutions” — so engaging<br>in this approach would require us to be involved in PhD-level CS work.<br><br>Nevertheless, if we were successful at annotating in this way, it would also<br>set the narrative and industry standard that we *do* expect licensing<br>information to be carried through AI models.  A committee member noted that<br>this approach may be more doable than we think — while researchers and others<br>are saying carrying this information along is very difficult, their<br>motivation is *not* carry this information along as annotations, and as such,<br>there has been limited scientific work in this area thus far (compared to<br>machine learning in general).  Another member noted that the motivations<br>might also be that, given that creating models is expensive, they want to<br>have *one* model, and not separate copyleft and non-copyleft models.<br><br>Multiple committee members noted that if we *do* write a FOSS system, it<br>definitely needs to be copylefted itself.  It's notable that the license of<br>the model is also in question.  Generally speaking, inputs and outputs aren't<br>impacted by most copyleft licenses of software, so the license of the model<br>probably stems from input to output (which is what many are already saying is<br>true with Copilot anyway).<br><br>We moved to a tangential discussion about how the training set license might<br>impact the output license.  It's an easy assumption to make that the entire<br>model is impacted by the license of all the data that's input.  (Microsoft<br>and GitHub obviously argue the opposite.)  However, the most conservative and<br>easiest legal analysis would obviously be that the input and output must be<br>under the same license.  Nevertheless, the attribution and patent clauses of<br>licenses are making it even more difficult to determine the licensing terms<br>of the model.  (In some sense, copyleft is easier because it requires the<br>whole work (including derivatives and works based on it) to carry the same<br>license.  IOW, ASLv2 and attribution-only FOSS licenses provide complexities<br>of metadata that copyleft doesn't.<br><br>We could make the simple conclusion as a committee that “Our Rule” is: “if<br>License A is in the training set, then License A terms apply to the model”.<br>If we build an alternative system that respects this rule, and we simply<br>conclude that APAS's that fail to do this *are* violating the licenses.  That<br>conclusion is, at least, nor more or less reasonable than the conclusions<br>that GitHub's position that “if License A is in the training set, the user of<br>the APAS can ignore license A no matter what happens”.  It's harder for make<br>that claim that “Our Rule” is correct if we don't have an APAS to offer that<br>follows “Our Rule”.  But, if we produce a working APAS follows “Our Rule”, it<br>gives us a non-hypothetical example of the conservative licensing approach.<br>As an activist matter, this turns it back to others to argue that “Our Rule”<br>is too strict.  In other words, given that these issues are entirely novel,<br>there is at least just as much chance that “Our Rule” is correct as any<br>other, and as such, we should really create an APAS that follows “Our Rule”.<br><br>The license compliance industry *now* generally encourages companies to<br>respect other people's licenses.  They are in some way unlikely allies to<br>“Our Rule” here.  While the compliance industry are often fear-mongerers,<br>they do have a valid point that tracking what the external inputs are to your<br>software development process *do* impact the licensing conclusions; copyleft<br>activists agree with the compliance industry on that point.  We should<br>frankly ask the compliance industry: “Do you really think Microsoft and<br>GitHub know some legal decision we don't?  Can you really be sure that using<br>their system will not cause an infringement problem for you?”  We expect that<br>is the key manner in which the compliance industry is an unlikely ally.<br><br>Regardless, these are hard issues to raise when there is nothing to compare<br>Copilot too, but if we build this FOSS APAS that follows “Our Rule”, it's<br>much easier to reject APAS's that *aren't* license-respecting.  Regardless,<br>open compliance is central: a proprietary APAS would never give enough<br>information about compliance because it's a black box, just as proprietary<br>scanning tools from the compliance industry are useless black boxes, too.<br><br>[In conclusion on this line of thinking: we have more power if we have built<br>the tool that does it right, and we can create a industry standard that you<br>*should* be tracking the license in your APAS's.  Ultimately, this is the<br>“hackavist” way to approach the problem.<br><br>However, are we looking to the solution of writing new FOSS because writing<br>new FOSS is a task our community knows how to do?  Is there a different<br>approach we could or should take that we're not seeing because we're enticed<br>by an (albeit difficult) problem that we already know how to solve?<br><br>A counter-argument to that worry is that, with a FOSS APAS following “Our<br>Rule”, we can poke at very specific parts of the system and examine its<br>ethics outside of the fact that that the APAS itself is proprietary.  IOW, we<br>all don't like Copilot no matter *what* its job since it is, itself, a<br>proprietary/trade-secret system from top to bottom.  Without looking at FOSS<br>system that does this task, it's hard to consider the broader ethical<br>problems that are unique to APAS's.<br><br>A committee member changed topics to ask a fundamental question: “Is it<br>morally — not legally, but morally/ethically — wrong to create new<br>proprietary software with an APAS?”<br><br>One ethical argument that's been made is that a company that makes money from<br>APAS's are profiting from the labor of others without following the wishes of<br>those who did the labor (e.g., the license terms).<br><br>Another approach is the argument that, is a standard Free Software purist<br>argument, with logic like this: since we agree any proprietary software is a<br>moral affront to users' rights, then *any* system (be it FOSS, proprietary or<br>otherwise) that assists someone to write more proprietary software<br>(particularly one that helps the user write proprietary software better,<br>faster and/or more easily) is itself, a morally wrong system.  (By<br>comparison: if you're opposed to more fossil fuel usage, you usually would<br>oppose systems any system that can pump oil faster out of the ground.)<br>However, there are very few people radical enough such that they agree with<br>the premise that “any proprietary software is a moral affront to users'<br>rights”.  We could be splitting the fragile coalition of FOSS activists if<br>our ethical arguments rely on agreement to that premise.<br><br>Meanwhile, it could be that APAS's make writing software *so* easy that it's<br>easier to write FOSS, too.  We could easily theorize a science-fiction-like<br>system that makes software so easy to write, that it would be strange to<br>write any proprietary software.  In such a world, writing new code would<br>always be easier than using someone else's proprietary software.  This<br>hypothetical points to fact that our view is always skewed by the fact that<br>proprietary software is the *norm*, while FOSS is rarity.  We should make<br>effort to at least consider how various ideas and arguments play out *if*<br>FOSS were to become the norm — even though that doesn't seem likely in the<br>future, could APAS's be the innovation that turns that tide?<br><br>On a related point, historically, we *have* written a lot of FOSS that helps<br>people write proprietary software, and they do so with those tools: Emacs,<br>GCC, Eclipse, etc.  One committee member suggested that perhaps it's just a<br>weird side-effect and/or a licensing bug that Emacs' license allows the user<br>to write proprietary software with it.  Is “input/output excluded from<br>copyleft” (i.e., that copyleft licenses went to great effort to avoid having<br>the license govern the input and output of the software) a principle, or<br>simply a historical accident?  The fact that we think it's problematic to<br>restrict “field of use” (to use the OSD framing of the same question) may be<br>more “cargo cult” than it is based on some central principle; and, it could<br>be true that our historical thinking was overly influenced by the question<br>of how copyright covers software, and the various derivative works standards<br>in different legal systems.  IOW, maybe “no field of use restriction” was<br>simply inherent in the license design because the licenses were contemplated<br>first as copyright licenses, so “field of use” including “proprietary<br>software development” was more a practicality of license design rather than<br>an ethically-founded moral principle.<br><br>The problem, however, is if we put the ethical restrictions that go too far<br>(in any direction), we have a hard time building/maintaining a broad<br>coalition of FOSS supporters.  Even We all on this very committee don't<br>necessary agree that all inputs and outputs of FOSS should be FOSS, yet we<br>all consider ourselves strong software freedom activists.<br><br>In response to point, one member attempted to narrow the question: Could we<br>all agree that, as an ethical matter (not necessary a legal matter) that:<br><br>   If the inputs to a training set for APAS is FOSS, *then* the output the<br>   users gets from the APAS should (as a moral matter) be FOSS?<br><br>If we did agree to that, purely as a moral/ethical matter, would we be losing<br>a coalition that exists elsewhere in FOSS?<br><br>Unfortunately, we realized, the fragile FOSS coalition may well be built more<br>about what the legal conclusion is rather than what activists believe is the<br>correct moral conclusion.  There may not actually be an overriding moral<br>principle that binds FOSS activism together; it may merely be that we all<br>have simply historically agreed on the legal conclusions about copyleft's<br>scope.  This issue could well be testing that coalition, since it may be the<br>first time the copyleft scope is not obvious to everyone in the broader FOSS<br>coalition.<br><br>Some also noted we'd probably need to use terms of service to keep the thing<br>FOSS if we wanted to enforce a moral requirement (as opposed to, say, having<br>the copyleft license alone “take care of it”).  Using terms of service to<br>mandate software freedom has not been used in past, and may be another type<br>of activity that would dilute coalition between more and less strident<br>activists.<br><br>As a final matter for the meeting, we discussed what one committee member<br>dubbed the “creepiness factor” of AI-assistive systems.  We've found there to<br>be creepy and systemic bias issues in, for example, AI systems that assist<br>with hiring, or those that decide what alleged criminals receive bail.  We<br>considered: do these kinds of problems exist with APAS's?<br><br>The general consensus of the committee was that *if* we are training on all<br>FOSS anyway, even comments, or other personal information, all that would<br>have been made public already.  It's unlikely to be racially/ethnically<br>biased, violent, or triggering output to the user.  The worst we could<br>imagine would be curse words and the like.  Once the data is public, it's<br>unlikely something could be rehashed in a way that would likely upset<br>developers.<br><br>There *is* a lot of personal stuff in code repositories, and that's been well<br>confirmed by others.  However, the problem here may ultimately be identical<br>to the problem of accidentally committing data to a Git repository that you<br>didn't mean to, which means similar solutions that solve the problems there<br>will need to be applied here.  The big hurdle is how to remove items from a<br>model without complete retraining.<br><br>However, if we decide the right approach to respond to APAS is to put full<br>force of support behind a copylefted, FOSS APAS (end-to-end) that follows<br>“Our Rule”, then these problems *will* be our problems.  It's admittedly much<br>easier to criticize bad actors if you are not trying to also solve the same<br>problems.<br><br>END MINUTES, AI Assist Committee on Tuesday 2022-06-22, 18:00-19:00 UTC<br><div class="k9mail-signature">-- <br>ai-assist mailing list<br>ai-assist@lists.copyleft.org<br><a href="https://lists.copyleft.org/mailman/listinfo/ai-assist">https://lists.copyleft.org/mailman/listinfo/ai-assist</a><br></div></pre></blockquote></div></body></html>