一种基于代码提交的软件知识图谱增量更新方法

    公开(公告)号:CN115543402A

    公开(公告)日:2022-12-30

    申请号:CN202211453262.4

    申请日:2022-11-21

    Applicant: 北京大学

    Abstract: 本发明公开了一种基于代码提交的软件知识图谱增量更新方法,其步骤包括:1)根据目标软件项目现有的知识图谱,为该目标软件项目创建代码演化知识图谱元模型,包含代码提交实体、代码实体以及它们之间的关系;代码实体包括代码文件、变量、函数、结构体及域成员;关系包括增加、删除、修改关系,代码文件对变量、函数、结构体的定义关系、引用关系、调用关系、所属关系;2)对该目标软件项目的每一次Commit数据进行解析,得到该项目更新前后两版本的代码语法树;然后遍历每一语法树,抽取出待更新的代码元素集;3)根据待更新的代码元素集和所述演化知识图谱元模型,对该目标软件项目当前的知识图谱进行更新,得到更新后的软件知识图谱。

    面向低代码模板推荐的软件知识图谱构建方法及系统

    公开(公告)号:CN119740649A

    公开(公告)日:2025-04-01

    申请号:CN202510241665.X

    申请日:2025-03-03

    Applicant: 北京大学

    Abstract: 本发明公开一种面向低代码模板推荐的软件知识图谱构建方法及系统,属于计算机软件技术领域。所述方法包括:设计面向低代码模板推荐的知识图谱本体模型;其中,该知识图谱本体模型包含的实体包括:代码级实体和与特定功能相绑定的模板级实体;对于给定的待复用的软件系统项目,基于所述知识图谱本体模型进行实体抽取,以生成原始知识图谱;基于模板级实体的关键词信息对所述原始知识图谱中模板级实体的属性信息进行补充,得到该软件系统项目的知识图谱。本发明可以加强用户需求与模板资源之间的语义匹配,从而更好实现低代码模板的推荐任务。

    面向系统级代码生成的软件知识图谱搜索方法及系统

    公开(公告)号:CN119886291A

    公开(公告)日:2025-04-25

    申请号:CN202510372420.0

    申请日:2025-03-27

    Applicant: 北京大学

    Abstract: 本发明公开一种面向系统级代码生成的软件知识图谱搜索方法及系统,属于计算机软件技术领域。所述方法包括:获取软件知识图谱的元模型,并对图谱上节点的描述信息构建向量索引;针对用户的系统级开发需求,定位知识图谱的初始节点集合,使用大模型从中筛选种子节点集合;进而设定扩展规则,在软件知识图谱上推理,在大模型的辅助下筛选并扩展节点,并最终以子图的形式展示搜索结果,实现用户交互与提示生成。本发明可以帮助大模型更好地生成软件系统的代码。

    一种基于代码提交的软件知识图谱增量更新方法

    公开(公告)号:CN115543402B

    公开(公告)日:2023-03-24

    申请号:CN202211453262.4

    申请日:2022-11-21

    Applicant: 北京大学

    Abstract: 本发明公开了一种基于代码提交的软件知识图谱增量更新方法,其步骤包括:1)根据目标软件项目现有的知识图谱,为该目标软件项目创建代码演化知识图谱元模型,包含代码提交实体、代码实体以及它们之间的关系;代码实体包括代码文件、变量、函数、结构体及域成员;关系包括增加、删除、修改关系,代码文件对变量、函数、结构体的定义关系、引用关系、调用关系、所属关系;2)对该目标软件项目的每一次Commit数据进行解析,得到该项目更新前后两版本的代码语法树;然后遍历每一语法树,抽取出待更新的代码元素集;3)根据待更新的代码元素集和所述演化知识图谱元模型,对该目标软件项目当前的知识图谱进行更新,得到更新后的软件知识图谱。

Patent Agency Ranking