CodeWisdom
软件开发知识图谱服务平台接口V1.0
发布啦!
通过挖掘并积累大量软件开发知识,本团队构建了多种知识类型的知识图谱,并在此基础上开发了Cerebro问答机器人,支持API查询、代码推荐、Stack Overflow帖子搜索、软件知识概念解释、问答推荐、三方库查询等功能。
本次发布包括8个知识服务接口与5个软件开发知识图谱访问接口,覆盖了API、样例代码、问答讨论、软件开发概念等不同方面知识。下面将详细介绍每个接口的功能并给出使用示例。
知识服务接口汇总
1 | /cerebro/api/query |
2 | /cerebro/code/query |
3 | /cerebro/so/query |
4 | /cerebro/concept/query |
5 | /cerebro/tutorial/query |
6 | /cerebro/answer/query |
7 | /cerebro/issue/query |
8 | /cerebro/library/query |
1
接口名称:/cerebro/api/query
功能介绍:
API推荐接⼝,根据功能描述推荐来⾃ JDK Android SDK以及AOSP(Android Open Source Project)的相关API。
使用示例:
Request Body
Response Body
2
接口名称:/cerebro/code/query
功能介绍:
样例代码推荐接⼝,根据功能描述或任务场景推荐样例代码。⽬前⽀持Java、Android、Python以及JavaScript四种编程语⾔。样例代码主要来自于Stack Overflow平台及AOSP项⽬源码。
使用示例:
Request Body
Response Body
3
接口名称:/cerebro/so/query
功能介绍:
SO帖子推荐接口,根据问题描述推荐Stack Overflow平台上相关的问答帖⼦。目前支持的语言有Java、Android、Python、Javascript、C#。
使用示例:
Request Body
Response Body
4
接口名称:/cerebro/concept/query
功能介绍:
软件知识概念解释接口,根据描述推荐描述中提及的软件知识概念,并给出概念的详细描述。
使用示例:
Request Body
Response Body
5
接口名称:/cerebro/tutorial/query
功能介绍:
教程推荐接⼝,根据问题描述推荐相关教程或问答论坛帖⼦,⽀持中⽂及英⽂教程的推荐。⽬ 前已采集的数据源包括简书、菜鸟教程、W3School以及Android Developers (developer.android.com)。数据已涵盖200万条,各数据源仍在持续采集中。
使用示例:
Request Body
Response Body
6
接口名称:/cerebro/answer/query
功能介绍:
QA推荐接⼝,是教程推荐接⼝更细粒度的推荐,针对给定的问题,返回从教程等知识源中检索出的答案。相关数据源同上。
使用示例:
Request Body
Response Body
7
接口名称:/cerebro/issue/query
功能介绍:
问题单(issue)推荐接口,根据问题描述推荐来⾃Issue Tracker(issuetracker.google.com)的Issue问题及其对应的回答内容。针对给的的问题,返回从教程等知识源中摘取的答案。
使用示例:
Request Body
Response Body
8
接口名称:/cerebro/library/query
功能介绍:
三⽅库推荐接口,根据功能描述或任务场景推荐相应的三⽅库,⽀持Java、Android、Python、JavaScript四种编程语⾔,涵盖了Maven、PyPI、NPM、Homebrew等热⻔的包管理平台。数据源来⾃于Libraries.io及Awensom List。
使用示例:
Request Body
Response Body
知识图谱访问接口汇总
1. /apikg
2. /codekg
3. /sokg
4. /libkg
5. /sckg
1
KG接口名称:/apikg
功能介绍:
API知识图谱,数据源来⾃于JDK、Android SDK以及AOSP。⽬前我们已经开放根据ID查询API信息及根据API全限定名查询关系及声明的相关接⼝。详细接口如下图所示。
使用示例:
GET请求
POST请求
2
KG接口名称:/codekg
功能介绍:
样例代码知识图谱,数据源来⾃于Stack Overflow及AOSP项⽬源码。⽬前我们已经开放各编程语⾔根据ID查询样例代码的接⼝,包括Python、Java、JavaScript等。详细接口如下图所示。
使用示例:
GET请求
3
KG接口名称:/sokg
功能介绍:
Stack Overflow知识图谱,数据源来自于Stack Overflow上的帖子。⽬前我们已经提供了根据ID查询问题帖⼦,答案帖⼦,问答对帖⼦等接⼝。详细接口如下图所示。
使用示例:
GET请求
4
KG接口名称:/libkg
功能介绍:
三⽅库知识图谱,数据源来⾃于Libraries.io及Awesome List。⽬前我们已经开放对相关实体及实体间关系的查询等。详细接口如下图所示。
使用示例:
GET请求
5
KG接口名称:/sckg
功能介绍:
软件知识概念知识图谱。⽬前我们已经开放对相关实体及实体间关系的查询等。详细接口如下图所示。
使用示例:
GET请求