En | 中

TexSmart HTTP API for Text Graph


文本图谱介绍

TexSmart的文本图谱(Text Graph)是一个以图的方式存储和表示文本和文本之间关系的知识库。 图的结点是字、词、短句等自然语言文本,边表示结点之间关系。 当前版本的文本图谱支持两种语言(中文与英文)和五种关系:同义/近义关系(synonym_of)、反义关系(antonym_of)、上位关系(class_of)、下位关系(instance_of)以及相似关系(similar_to)。
同义/近义关系:两条文本具有相同或者相似的含义,比如”高大上”和”高端大气上档次”,”我爱你”和”我喜欢你”;
反义关系:两条文本的含义相反或者近似相反,比如”高兴”和”难过”,”一事无成”和” 功成名就”;
上位关系:从一条文本指向它的类型名,比如”凤梨”到”水果”,”贪图小便宜”到”弱点”;
下位关系:上位关系的逆关系,比如”水果”到”凤梨”,”弱点”到”贪图小便宜”;
相似关系:两条文本具有相同的类型(比如都是城市名,或者都是可以用来描述人的品格的形容词等),且具有较强的语义相关性。比如”北京”和”上海”,”实事求是”和”精益求精”。注意”苹果公司”和”乔布斯”不是相似关系(尽管二者具有较强的相关性),因为这两个词的类型不同(前者是机构,而后者是人)。

请注意文本图谱不是知识图谱(knowledge graph):知识图谱的结点是实体以及属性值(属性值可以为实体、数值、文本、二进制字符串等),边表示实体的属性或者实体之间的关系;而文本图谱的结点是文本,边表示文本之间的关系。

TexSmart HTTP API for Text Graph

下面介绍文本图谱API的使用方式。Texsmart的其他API参见:文本理解API文本匹配API。 文本图谱API支持通过HTTP-POST方式访问,API地址为 https://texsmart.qq.com/api/text_graph。
输入的post-data需要是JSON格式,输出也是JSON格式。 推荐使用Postman来查看API的结果。

下面是一个简单的JSON输入示例:
obj = {
        "text": 高兴,
        "lang": "zh",
        "relation": "synonym_of",
        "k": 10
}
调用API的示例代码: Python代码 | Java代码 | C++代码 | C#代码

调用API后返回的结果是如下的JSON格式:
{
  "header":{"time_cost_ms":0.671,"time_cost":0.000671,"core_time_cost_ms":0.639,"ret_code":"succ"},
  "item_list":[
    {"order":1,"text":"快乐"},
    {"order":2,"text":"开心"},
    {"order":3,"text":"兴奋"},
    {"order":4,"text":"喜悦"},
    {"order":5,"text":"愉悦"},
    {"order":6,"text":"喜乐"},
    {"order":7,"text":"喜滋滋"},
    {"order":8,"text":"欣喜"},
    {"order":9,"text":"高高兴兴"},
    {"order":10,"text":"欢愉"}
  ]
}
其中,header给出的是一些说明API调用的辅助信息(耗时、错误码等),item_list给出了“高兴”的置信度前k(这里k=10)个同义词结果。

完整的输入输出格式说明

输入JSON对象支持的字段说明如下:

字段名称 数据类型 字段说明
text str 拟查询的词汇。
lang str 拟查询词汇所属的语言,支持"zh"和"en"两种语言。
relation str 拟查询的关系,支持:”synonym_of”(同义词),”antonym_of”(反义词),”instance_of”(下位词)、”class_of”(上位词)、”similar_to”(相似词)。
k int 返回结果的条数。
注:(1)当知识库中结果条数少于k时,返回数量以实际结果数为准。 (2)当k>20时,仅返回前20个结果。

输出JSON对象的各个字段说明如下:

字段名称 数据类型 字段说明
header JSON Object 调用执行后返回的辅助信息
time_cost_ms字段:处理请求所花的时间,以毫秒(ms)计算。
time_cost字段:处理请求所花的时间,以秒来计算。
core_time_cost_ms字段:处理核心模块所花的时间,以毫秒(ms)来计算。
ret_code字段:返回码,"succ"表示成功,其它为错误码。主要错误为:error.invalid_mode: 请求关系不在预定义关系集合内。
item_list JSON 列表 输出的结果。
该结果是一个JSON的列表,每条结果包含序号(order)和结果(text)两部分。



示例代码

用Python调用API的示例代码

示例代码1(用http.client):
# -*- coding: utf8 -*-
import json
import http.client
import requests

obj = {
        "text": 高兴,
        "lang": "zh",
        "relation": "synonym_of",
        "k": 10
}
r = requests.post(url="https://texsmart.qq.com/api/text_graph", json= obj)
print(r.text)

用Java调用API的示例代码

[TBD]

用C++调用API的示例代码

[TBD]

用C#调用API的示例代码

[TBD]

关于TexSmart

TexSmart是腾讯AI Lab自然语言处理团队所构建的一个自然语言文本理解系统,用以对中文和英文两种语言的文本进行词法、句法和语义分析。 除了支持分词、词性标注、命名实体识别(NER)、句法分析、语义角色标注等常见功能外,TexSmart还提供细粒度命名实体识别语义联想深度语义表达等特色功能。

体验Demo | 系统介绍