IC-1414Pretrained code models Starcoder and CodeGeex2 score 0.0% on code explanation across all six languages because they generate code instead of natural language

Niklas Muennighoff, Qian Liu, Armel Randy Zebaze, Qinkai Zheng, Binyuan Hui, Terry Yue Zhuo, Swayam Singh, Xiangru Tang, Leandro Von Werra, Shayne Longpre

SourceOctoPack: Instruction Tuning Code Large Language Models

When evaluated on the HumanEvalExplain task, which requires generating a natural language description of a code function, both Starcoder and CodeGeex2 produce code output rather than natural language explanations. The authors manually inspect the first ten Python samples and disqualify a model if none of the outputs are explanations; both models are disqualified. The authors attribute this to these models being only conditioned to write code during pretraining, without exposure to natural language targets during instruction tuning.

Evidence
observational
Key metric
0.0% pass@1 on HumanEvalExplain across all 6 languages for both Starcoder and CodeGeex2
Model
Starcoder, CodeGeex2
Concepts
Failure mode
Methods
pass@k / pass n@k / pass@1 / pass@t [eval]
Related findings
IC-1413, IC-1415
Extraction
automatic-extraction