Code-Hoster: Github vereinfacht Einstieg in Open-Source-Projekt

Github will mit Hilfe von Machine-Learning seinen Nutzern künftig einfache erste Beitragsmöglichkeiten zu Open-Source-Projekten vorschlagen und somit auch das erste Deep-Learning-Produkt von Github. 

Derzeit ist der Code-Hoster Github das größte Angebot für viele unterschiedliche Open-Source-Projekten. Das Unternehmen, das zu Microsoft gehört, möchte seinen Nutzern oder auch völligen Neulingen nun einfache Wege aufzeigen, wie diese zu eben jenen Open-Source-Projekten beitragen können. Wie es in einer Ankündigung heißt, wird die Funktion bereits unter den Namen, Github „good first issues“ bereits seit einem Jahr angeboten, dennoch hat Github dies  aber auf Basis von Machine-Learning überarbeitet. 

Github-Nutzer können nach eigenen Interessen die Plattform nach Themen (Tropics) durchsuchen. Anwender können in bestimmten Repositories künftig über den Contribute-Pfad schnell und einfache Einstiegsprobleme finden. Und Github möchte die Aktivität der Nutzer analysieren, damit der Dienst, Beiträge oder Ähnliches darauf aufbauend, um persönliche Vorschläge für Beiträge anbieten zu können. Bei jeder dieser drei Möglichkeiten werden die „good first issues“ angezeigt. 

Zuletzt basierte die Lösung auf rund 300 Labeln, mit denen Issues durch die Projektbetreuer selbst kategorisiert werden konnten. Allerdings konnte Gitgub über diese Methode nur rund 40 Prozent aller Projekte auf der Plattform selbst auch für die Vorschlagfunktion nutzen. Vor allem aber basierte die Methode immerhin auch auf der manuellen Arbeit der Paketbetreuer. 

Zusätzlich nutze Github einen Machine-Learning-Ansatz – damit sei der Anbieter in der Lage, diese Einstiegsprobleme in rund 70 Prozent aller Repositories zu empfehlen. Zu berücksichtigen ist dabei, dass das Angebot nicht mit falsch positiven Ergebnissen überschwemmt werden sollte, so Github.

Github greift für das Training nicht nur auf die manuellen, gelabelten Issues zurück, sondern nutzt auch die Informationen aus Pull Request, die von neuen beitragenden stammen oder eben nur wenige Zeilen Code umfassen. Für die Model-Entwicklung wird auf das freie Machine-Learning-Framework Tensorflow gesetzt – weitere Info darüber liefert ein Blogeintrag. Darin liest sich auch, dass das Machine-Learning-Modell und deren Funktionen künftig verbessern und weiter ausbauen möchte. Dazu soll auch gehören, dass Projektbetreuer die Vorschläge des Machine-Learning-Systems annehmen und oder auch entfernen können.