模型:
microsoft/reacc-py-retriever
这是用于 ReACC: A Retrieval-Augmented Code Completion Framework 的检索模型。
在这篇论文中,该模型被用于根据不完整的代码片段作为查询来检索相似代码。该模型还可用于不完整代码到代码的搜索、代码克隆检测。
py-retriever是一个类似BERT编码器的模型,由12个变压器层组成。它在Python编程语言中使用对比学习进行连续预训练。更多细节请参阅我们的论文。
请注意,输入代码的格式与原始源代码不同。我们将源代码标准化,以更好地捕捉Python中的换行和缩进信息。输入示例如下:
sum = 0<endofline>for val in numbers:<endofline><INDENT>sum = sum+val
要了解如何将源代码转换为此格式的更多信息,请参阅 ReACC GitHub repo 。