Die Messung der Kompetenz in Codierungsaufgaben mit APPS

Während das Programmieren eine der am weitesten verbreiteten Fähigkeiten in der modernen Gesellschaft ist, können moderne maschinelle Lernmodelle noch immer keine Lösungen für grundlegende Probleme programmieren. Trotz seiner Bedeutung gab es überraschend wenig Arbeiten zur Bewertung von Codegenerierung, und es kann schwierig sein, die Leistung bei der Codegenerierung präzise zu bewerten. Um dieser Herausforderung gerecht zu werden, stellen wir APPS vor, einen Benchmark für Codegenerierung. Im Gegensatz zu früheren Arbeiten in eingeschränkteren Kontexten misst unser Benchmark die Fähigkeit der Modelle, eine beliebige natürlichsprachliche Spezifikation zu einem zufriedenstellenden Python-Code zu generieren. Ähnlich wie Unternehmen Bewerber für Softwareentwickler durch Testfälle bewerten, überprüfen wir die Modelle dann durch Auswertung ihrer generierten Code auf Testfällen. Unser Benchmark umfasst 10.000 Probleme, die von einfachen Einzeiliger-Lösungen bis hin zu erheblichen algorithmischen Herausforderungen reichen. Wir feinjustieren große Sprachmodelle sowohl mit Daten aus GitHub als auch mit unserem Trainingsdatensatz und stellen fest, dass die Häufigkeit von Syntaxfehlern exponentiell abnimmt, während sich die Modelle verbessern. Neuere Modelle wie GPT-Neo können etwa 20 % der Testfälle bei Einführungsproblemen bestehen, sodass wir denken, dass maschinelle Lernmodelle nun beginnen zu lernen, wie man programmiert. Da die gesellschaftliche Bedeutung der automatischen Codegenerierung in den kommenden Jahren zunehmen wird, kann unser Benchmark ein wichtiges Maß zur Verfolgung von Fortschritten bieten.