依存句法分析
功能介绍
识别句子中词汇与词汇之间的相互依存关系。
本API免费调用,调用限制为2次/秒。
调试
您可以在API Explorer中调试该接口。
前提条件
在使用本API之前,需要您完成服务申请和认证鉴权,具体操作流程请参见申请服务和认证鉴权章节。
用户首次使用需要先申请开通。服务只需要开通一次即可,后面使用时无需再次申请。如未开通服务,调用服务时会提示ModelArts.4204报错,请在调用服务前先进入控制台开通服务,并注意开通服务区域与调用服务的区域保持一致。
URI
- URI格式
POST /v1/{project_id}/nlp-fundamental/dependency-parser
- 参数说明
表1 URI参数说明 参数名
必选
说明
project_id
是
项目ID。获取方法请参见获取项目ID。
请求消息
请求参数如表 请求参数所示。
响应消息
响应参数如表 响应参数所示。
参数名 |
参数类型 |
说明 |
---|---|---|
words |
Array of words objects |
依存句法分析结果。 请参见表 words数据结构说明。 |
error_code |
String |
调用失败时的错误码,具体参见6.2 错误码。 调用成功时无此字段。 |
error_msg |
String |
调用失败时的错误信息。 调用成功时无此字段。 |
参数名 |
参数类型 |
说明 |
---|---|---|
id |
Integer |
词汇id,从1开始计数。 |
word |
String |
词汇内容。 |
pos |
String |
词性,请参见表6。 |
head_word_id |
Integer |
头节点id。如果是根节点,默认为0。 |
dependency_label |
String |
词与头节点的依存关系,使用汉语开放依存句法树库(CODT)依存关系标签集合。 详细说明请参见表 (CODT)关系类型说明。 |
关系标签 |
说明 |
例句 |
标注结果 |
---|---|---|---|
root |
sentence root(根节点) |
我 爱 妈妈 |
( Root –>爱),其中Root为虚拟词 |
sasubj-obj |
same subject and object(同主语同宾语) |
我 一直 在 研究 和 思考 这个 问题。 |
(研究–>思考) |
sasubj |
same subject (同主语) |
我 走进 操场 打 篮球。 |
(走进–>打) |
dfsubj |
different subject(不同主语) |
这书太贵了,我打算买另一本 |
(贵–>打算) |
subj |
subject (主语) |
我 爱 妈妈 |
(我<–爱) |
subj-in |
subject inside a subject-predicate predicate (主谓谓语中的内部主语) |
他 确实 头 疼 |
(头<–疼) |
obj |
object(宾语) |
我 爱 妈妈 |
(爱–>妈妈) |
pred |
predicate (谓语) |
命令 他 扫地 |
(他–>扫地) |
att |
attribute modifier(定语) |
国家 主席 |
(国家<–主席) |
adv |
adverbial modifier(状语) |
非常 喜欢 |
(非常<–喜欢) |
cmp |
complement modifier(补语) |
洗 干净 手 |
(洗–>干净) |
coo |
coordination construction(并列结构) |
鲜花 和 掌声 |
(鲜花–>掌声) |
pobj |
preposition object(介宾) |
在 家 看书 |
(在–>家) |
iobj |
indirect-object(间宾) |
给 他 书 |
(给–>他) |
de |
de-construction(“的”字结构) |
这 是 他 的 |
(他<–的) |
adjct |
adjunct(附加成分) |
我 走 了 |
(走–>了) |
app |
appellation(称呼) |
老师 , 你 好 |
(老师<–好) |
exp |
explanation(进一步解释) |
王刚(红星小学校长) |
(王刚–>校长) |
punc |
punctuation(标点) |
我 爱 妈妈 。 |
(爱–>。) |
frag |
fragment(片段) |
你, 我, 中国。 |
(你–>我–>中国) |
repet |
repetition(重复) |
你 吃 , 吃 饭 了 吗 ? |
(吃–>吃) |
- 请求示例(分析"张三买电脑"的句法依存关系,支持的语言类型为中文)
POST https://{endpoint}/v1/{project_id}/nlp-fundamental/dependency-parser Request Header: Content-Type: application/json X-Auth-Token: MIIFbwYJKoZIhvcNAQcCoIIFYDCCBVwCAQExDTALBglghkgBZQMEAgEwggNBgkqhkiG9... Request Body: { "text":"张三买电脑", "lang":"zh" }
- Python3语言请求代码示例(分析"张三买电脑"的句法依存关系,支持的语言类型为中文)
# -*- coding: utf-8 -*- # 此demo仅供测试使用,建议使用sdk。需提前安装requests,执行pip install requests import requests import json def nlp_demo(): url = 'https://{endpoint}/v1/{project_id}/nlp-fundamental/dependency-parser' # endpoint和project_id需替换 token = '用户对应region的token' header = { 'Content-Type': 'application/json', 'X-Auth-Token': token } body = { 'text': '张三买电脑', 'lang': 'zh' } resp = requests.post(url, data=json.dumps(body), headers=header) print(resp.json()) if __name__ == '__main__': nlp_demo()
- Java语言请求代码示例(分析"订单记录怎么删除"的句法依存关系,支持的语言类型为中文)
import java.io.BufferedReader; import java.io.InputStream; import java.io.InputStreamReader; import java.io.OutputStreamWriter; import java.net.HttpURLConnection; import java.net.URL; /** * 此demo仅供测试使用,建议使用sdk */ public class NLPDemo { public void nlpDemo() { try { //endpoint和projectId需要替换成实际信息。 URL url = new URL("https://{endpoint}/v1/{project_id}/nlp-fundamental/dependency-parser"); String token = "对应region的token"; HttpURLConnection connection = (HttpURLConnection) url.openConnection(); connection.setRequestMethod("POST"); connection.setDoInput(true); connection.setDoOutput(true); connection.addRequestProperty("Content-Type", "application/json"); connection.addRequestProperty("X-Auth-Token", token); //输入参数 String text = "订单记录怎么删除"; String body = "{\"text\":\"" + text + "\",\"lang\":\"zh\"}"; OutputStreamWriter osw = new OutputStreamWriter(connection.getOutputStream(), "UTF-8"); osw.append(body); osw.flush(); InputStream is = connection.getInputStream(); BufferedReader br = new BufferedReader(new InputStreamReader(is, "UTF-8")); while (br.ready()) { System.out.println(br.readLine()); } } catch (Exception e) { e.printStackTrace(); } } public static void main(String[] args) { NLPDemo nlpDemo = new NLPDemo(); nlpDemo.nlpDemo(); } }
响应示例
- 成功响应示例
{ "words": [ { "id": 1, "word": "张三", "pos": "NR", "head_word_id": 2, "dependency_label": "subj" }, { "id": 2, "word": "买", "pos": "VV", "head_word_id": 0, "dependency_label": "root" }, { "id": 3, "word": "电脑", "pos": "NN", "head_word_id": 2, "dependency_label": "obj" } ] }
- 失败响应示例
{ "error_code": "NLP.0301", "error_message": "Missing parameters:text" }
状态码
状态码请参见状态码。
错误码
错误码请参见错误码。