科大讯飞语音云使用说明Word文档下载推荐.docx
《科大讯飞语音云使用说明Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《科大讯飞语音云使用说明Word文档下载推荐.docx(16页珍藏版)》请在冰点文库上搜索。
Date:
Fri,03Jan201404:
24:
32GMT
Content-Type:
text/plain
Transfer-Encoding:
chunked
Connection:
keep-alive
Vary:
Accept-Encoding
是_1
-1
HED
中国_2
人_3ATT
人_3
是_1VOB
POST请求及返回结果示例:
$curl-i-d
api_key=YourApiKey&
text=我是中国人。
&
pattern=dp&
format=plain"
"
Fri,03Jan201405:
58:
55GMT
我_0
是_1SBV
使用Python语言以GET方式调用RESTAPI代码示例如下:
1.
#-*-coding:
utf8-*-
2.importurllib2
3.if__name__==
'
__main__'
:
4.
url_get_base=
5.
api_key=
6.
text=
7.
format=
8.
pattern=
9.
result=urllib2.urlopen(
%sapi_key=%s&
text=%s&
format=%s&
pattern=%s"
%(url_get_base,api_key,text,format,pattern))
10.
content=result.read().strip()
11.
printcontent
更多使用其他编程语言以GET和POST方式调用RESTAPI代码示例以及注意事项请参考API编程调用示例。
JavaScript调用REST
语言云支持用户使用JavaScript以JSON-P回调的方式调用API,用户需要以GET方式进行调用并且只支持json的返回格式。
在此方式中,需要用户在uri中添加callback参数并且在js中指定相同名称的回调函数进行结果的捕捉,这通常用于跨域访问使得结果嵌入到Web页面中。
Fri,03Jan201408:
08:
56GMT
application/javascript
foo(
//jsondata
)
在JavaScript中捕捉调用结果代码示例如下:
varfoo=function(data){
2.
json_str=JSON.stringify(data);
3.
document.getElementsByTagName(
body"
)[0].innerHTML+=json_str;
4.};
5.window.onload=function(){
varbase=
varapi_key=
;
vartext=
varpattern=
varformat=
json"
varcallback=
foo"
12.
varurl=base+
api_key="
+api_key+
text="
+text+
pattern="
+pattern+
format="
+format+
callback="
+callback;
13.
varscript=document.createElement(
script'
);
14.
script.setAttribute(
src'
url);
15.
head'
)[0].appendChild(script);
16.}
语言云也提供了使用Jquery调用API的示例,请参考JavaScript调用API示例。
****************************************************************
∙结果表示
∙PLAIN
∙分词
∙对文本进行分词的调用示例如下:
∙GET
∙返回结果为:
∙1.
我
是
中国
人
。
∙在plain格式的分词结果中,每句话占一行。
词与词之间用空格分割,句与句之间用换行分割。
段落与段落之间用两个换行分割。
∙词性标注
∙对文本进行词性标注的调用示例如下:
我_r
是_v
中国_ns
人_n
_wp
∙在plain格式的词性标注结果中,每句话占一行。
词和词的标注信息之间用下划线连接,项与项之间用空格分割,句与句之间用换行分割。
∙命名实体识别
∙对文本进行命名实体识别的调用示例如下:
[中国]Ns
∙在plain格式的命名实体识别结果中,每句话占一行。
如果本句话含有实体,将会被[]包围,并且在之后添加实体类型标识。
段落与段落之间有两个换行符分割。
∙如果您只想获得文本中的所有的命名实体列表,请用参数only_ner=true来指定。
∙其调用示例如下:
Ns
∙在plain格式的命名实体识别列表形式的返回结果中,每个实体信息占一行。
每一行有两列,第一列为实体本身,第二列为实体类型。
∙依存句法分析
∙对文本进行依存句法分析的调用示例如下:
SBV
HED
ATT
VOB
_4
WP
∙在plain格式的依存句法分析返回结果中,文本中的每个词的句法信息占一行。
每一行独占三列。
第一列为依存句法分析的孩子结点信息,由结点名+下划线+词id组成;
第二列为依存句法分析的父亲节点信息,由结点名+下划线+词id组成,如果没有父亲结点,则由-1表示;
第三列为具体的依存句法分析关系。
文本句子级别的信息之间用两个换行分割,文本段落级别的信息之间用三个换行分割。
∙语义角色标注
∙对文本进行语义角色标注的调用示例如下:
[我]A0
[是]v
[中国
人]A1
∙XML
∙对文本进行全部任务的分析示例如下:
<
?
xmlversion=
1.0"
encoding=
utf-8"
>
xml4nlp>
note
sent="
y"
word="
pos="
ne="
parser="
wsd="
srl="
/>
doc>
para
id="
0"
sent
cont="
我们都是中国人"
word
我们"
r"
O"
parent="
2"
relate="
SBV"
1"
都"
d"
ADV"
是"
v"
-1"
HED"
arg
type="
A0"
beg="
end="
AM-ADV"
/word>
3"
中国"
ns"
S-Ns"
4"
ATT"
人"
n"
VOB"
/sent>
16.
/para>
17.
/doc>
18.
/xml4nlp>
∙XML标准结果如下:
结点标签分别为
xml4nlp,
note,
doc,
para,
sent,
word,
共七种结点标签:
xml4nlp
为根结点,无任何属性值;
∙2.
为标记结点,具有的属性分别为:
pos,
ne,
parser,
srl;
分别代表分句,分词,词性标注,命名实体识别,依存句法分析,词义消歧,语义角色标注;
值为"
,表明未做,值为"
则表示完成,如pos="
,表示已经完成了词性标注;
∙3.
doc
为篇章结点,以段落为单位包含文本内容;
无任何属性值;
∙4.
为段落结点,需含id属性,其值从0开始;
∙5.
为句子结点,需含属性为id,cont;
id为段落中句子序号,其值从0开始;
cont为句子内容;
∙6.
为分词结点,需含属性为id,cont;
id为句子中的词的序号,其值从0开始,cont为分词内容;
可选属性为
parent,
relate;
pos的内容为词性标注内容;
ne
为命名实体内容;
parent
与
relate
成对出现,parent
为依存句法分析的父亲结点id号,relate
为相对应的关系;
∙7.
为语义角色信息结点,任何一个谓词都会带有若干个该结点;
其属性为id,
type,
beg,end;
id
为序号,从0开始;
type
代表角色名称;
beg
为开始的词序号,end
为结束的序号;
∙各结点及属性的逻辑关系说明如下:
∙1.各结点层次关系可以从图中清楚获得,凡带有id属性的结点是可以包含多个;
∙2.如果sent="
即未完成分句,则不应包含sent及其下结点;
∙3.如果sent="
word="
即完成分句,未完成分词,则不应包含word及其下结点;
∙4.其它情况均是在sent="
的情况下:
∙
(1)如果
则分词结点中必须包含pos属性;
∙
(2)如果
则分词结点中必须包含ne属性;
∙(3)如果
则分词结点中必须包含parent及relate属性;
∙(4)如果
则凡是谓词(predicate)的分词会包含若干个arg结点;
∙在XML格式的分析中,用户可以通过指定参数pattern=ws|pos|ner|dp|srl|all来指名分析任务并获取对应的XML结果。
∙注意!
依存句法分析结果中并不具有ne信息。
∙JSON
∙[
[
[
{
"
id"
0,
cont"
我"
pos"
ne"
parent"
1,
relate"
arg"
[]
},
1,
-1,
[
{
"
0,
type"
beg"
end"
0
},
A1"
2,
3
}
]
2,
3,
3,
]
]
]
∙JSON(JavaScriptObjectNotation)是一种常见的,与语言无关的数据格式,提供任意数据结构的简单表示。
∙在json格式的返回结果中,采用段落级、句子级、单词级的递进层次关系,且段落与句子并没有进行键值名标识,因而须采用数组下标方式获取信息。
∙比如说,p代表json结果,获取第一段第二句第三个单词的词性信息,获取方式类似于p[0][1][2]["
]。
∙json格式是语言云重点推荐给用户的语言分析结果格式,有关更多使用方法,请参考语言云提供的JSON格式的重要说明。
∙在json格式的单词对象{}中,需含键值名为id,cont;
可选键值名为pos,ne,parent,relate;
pos的内容为词性标注内容;
ne为命名实体内容;
parent与relate成对出现,parent为依存句法分析的父亲结点id号,relate为相对应的关系;
∙如果用户做了srl级别的分析,json结果中还会有键值名arg所标识的数组。
数组中的每个对象是一项语义角色,任何一个谓词都会带有若干个该对象;
其键值名为id,type,beg,end;
id为序号,从0开始;
type代表角色名称;
beg为开始的词序号,end为结束的序号;
如果单词没有语义角色信息,arg所标识的数组为空。
∙用户也可以通过指定参数has_key=false来去掉键值名,示例如下:
∙[[[[0,
1,
[]],[1,
-1,
[[0,
0,0],[1,
2,3]]],[2,
3,
[]],[3,
[]]]]]
∙在json格式的无键值名的返回结果中,数组信息排序与有键值名的情况相同。
即按照:
"
的顺序。
∙arg中信息的顺序为"
∙CONLL
0
_
r
O
1
(A0*)
v
(v*)
2
ns
S-Ns
3
(A1*
n
*)
∙conll是一种表示语言分析结果的通用格式。
在语言云的conll格式中,分析结果的每一行代表句子中每个词的信息,词标号从0开始。
分析结果的基础列有10列,之后的每一列代表文本中的语义信息,每列之间用Tab分割。
此列值为空用"
_"
占位。
conll每列的含义请见下表:
列号
1
单词在句子中的标号,从0开始
2
单词本身
3
空
4
5
单词词性标注信息
6
依存句法关系中的父亲节点标号
7
依存句法关系类型
8
9
10
如果单词是语义角色标注中的谓词,则为单词本身,否则为空
11及以后
每个谓词占一列,每一列为该谓词的语义角色标注信息
*************************************************************
∙错误响应
∙正常情况下,用户将得到正确的结果,此时HTTP状态为200OK
∙$curl-i
...
∙但如果用户调用API的方式不当,服务器将会返回对应的错误,错误信息如下表所示:
HTTP状态码
错误信息
400BadRequest
URIPARAMETERERROR
API参数错误。
请