← 返回列表

一种融合抽象语法树结构信息的智能代码补全方法

申请号: CN202410065078.5
申请人: 合肥综合性国家科学中心人工智能研究院(安徽省人工智能实验室)
申请日期: 2024/1/17

摘要文本

本发明涉及代码大数据技术领域,公开了一种融合抽象语法树结构信息的智能代码补全方法,将上文代码输入到完成训练的代码补全模型,预测得到当前位置的代码以及代码的类型,代码补全模型的训练过程包括:使用抽象语法树拆分算法,在基于通用数据集生成的抽象语法树的特定位置,对所述抽象语法树进行拆分,得到子树;将子树输入到基于树的深度神经网络模型中,捕获子树的结构信息,输出子树每个节点的隐藏状态向量;将子树每个节点的隐藏状态向量输入到GPT‑2深度神经网络中,实现对GPT‑2深度神经网络的训练。相比仅使用源代码的代码补全方法,本发明提高了代码补全代码预测的准确率和代码类型预测的准确率。 数据由马 克 数 据整理

专利详细信息

项目 内容
专利名称 一种融合抽象语法树结构信息的智能代码补全方法
专利类型 发明申请
申请号 CN202410065078.5
申请日 2024/1/17
公告号 CN117573096A
公开日 2024/2/20
IPC主分类号 G06F8/30
权利人 合肥综合性国家科学中心人工智能研究院(安徽省人工智能实验室)
发明人 朱林波; 刘淇; 苏喻; 胡瑞; 汤进; 吕博文
地址 安徽省合肥市高新区望江西路5089号, 中国科学技术大学先进技术研究院未来中心B1205-B1208

专利主权项内容

1.一种融合抽象语法树结构信息的智能代码补全方法,将上文代码输入到完成训练的代码补全模型,预测得到当前位置的代码以及代码的类型,预测代码时仅对抽象语法树的叶子节点的代码信息进行预测,预测代码的类型时仅对抽象语法树的非叶子节点的类型信息进行预测;代码补全模型的训练过程,包括:使用抽象语法树拆分算法,在基于通用数据集生成的抽象语法树的特定位置,对所述抽象语法树进行拆分,得到子树;所述抽象语法树的叶子节点存在代码信息,非叶子节点存在类型信息;将子树输入到基于树的深度神经网络模型中,捕获子树的结构信息,输出子树每个节点的隐藏状态向量;将子树每个节点的隐藏状态向量输入到GPT-2深度神经网络中,使用增加了掩盖机制的多头自注意力机制进行代码补全,实现对GPT-2深度神经网络的训练。