成分句法分析
功能介绍
识别句子中的成分以及成分之间的层次包含关系。
本API免费调用,调用限制为2次/秒。
调试
您可以在API Explorer中调试该接口。
前提条件
在使用本API之前,需要您完成服务申请和认证鉴权,具体操作流程请参见申请服务和认证鉴权章节。
用户首次使用需要先申请开通。服务只需要开通一次即可,后面使用时无需再次申请。如未开通服务,调用服务时会提示ModelArts.4204报错,请在调用服务前先进入控制台开通服务,并注意开通服务区域与调用服务的区域保持一致。
URI
- URI格式
POST /v1/{project_id}/nlp-fundamental/constituency-parser
- 参数说明
表1 URI参数说明 参数名
必选
说明
project_id
是
项目ID。获取方法请参见获取项目ID。
请求消息
请求参数如表 请求参数所示。
响应消息
响应参数如表 响应参数所示。
参数名 |
参数类型 |
说明 |
---|---|---|
tree |
String |
成分句法分析结果,用嵌套括号的形式表示一棵树。括号内的第一个元素为子树的标签,如果是叶子节点则用"_"代替。第二个元素为子树,如果是叶子节点则为字符串。 |
error_code |
String |
调用失败时的错误码,具体参见6.2 错误码。 调用成功时无此字段。 |
error_msg |
String |
调用失败时的错误信息。 调用成功时无此字段。 |
成分标签 |
说明 |
---|---|
ADJP |
adjective phrase(形容词短语) |
ADVP |
adverbial phrase headed by AD(副词开头的副词短语) |
CLP |
classifier phrase(量词短语) |
CP |
clause headed by complementizer(补语性嵌套句的从属连词引起的分句) |
DNP |
phrase formed by “XP+DEG”(XP+DEG结构构成的短语) |
DP |
determiner phrase(限定词短语) |
DVP |
phrase formed by“XP+DEV”(XP+DEV结构构成的短语) |
FRAG |
fragment(片段语) |
INTJ |
interjection(感叹词) |
IP |
simple clause headed by INFL (INFL为开头的简单从句) |
LCP |
phrase formed by “XP+LC”(XP+LC结构构成的短语) |
LST |
list marker(用于解释说明性的列表标记短语) |
NP |
noun phrase(名词短语) |
PP |
preposition phrase(介词短语) |
PRN |
parenthetical(插入语) |
QP |
quantifier phrase(量词短语) |
UCP |
unidentical coordination phrase(非一致性并列短语) |
VCD |
coordinated verb compound(并列动词复合词) |
VCP |
verb compounds formed by“VV+VC”(VV+VC结构构成的动词复合词) |
VNV |
verb compounds formed by“A-not-A” or “A-one-A”(A-not-A或A-one-A结构构成的动词复合词) |
VP |
verb phrase(动词短语) |
VPT |
potential form V-de-R or V-bu-R(构成V-的-R或V-不-R的动词复合词) |
VRD |
verb resultative compound(动词结果性复合词) |
VSB |
verb compounds formed by a modifier + a head(定语+核心词构成的动词复合词) |
WHPP |
wh-prepositional phrase(wh开头的介词短语) |
请求示例
- 请求示例(分析"张三买电脑"的成分句法)
POST https://{endpoint}/v1/{project_id}/nlp-fundamental/constituency-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/constituency-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/constituency-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(); } }
响应示例
- 成功响应示例
{ "tree": "(IP (NP (_ 张三))(VP (_ 买)(NP (_ 电脑))))" }
- 失败响应示例
{ "error_code": "NLP.0301", "error_message": "Missing parameters:text" }
状态码
状态码请参见状态码。
错误码
错误码请参见错误码。