短文本相似度接口

接口描述

本接口已于2017年6月15日升级,如果您需要查阅旧版接口文档,请查看短文本相似度接口(旧版),但建议您尽快升级到新版接口。

短文本相似度接口用来判断两个文本的相似度得分。

请求说明

请求示例

HTTP方法:POST

请求URL:https://aip.baidubce.com/rpc/2.0/nlp/v2/simnet

URL参数:

参数
access_token 通过API Key和Secret Key获取的access_token,参考“Access Token获取

Header如下:

参数
Content-Type application/json

Body请求示例:

{
    "text_1": "浙富股份", // 待比较文本1
    "text_2": "万事通自考网" // 待比较文本2
}

请求格式

POST方式调用

注意:要求使用JSON格式的结构体来描述一个请求的具体内容。

body整体文本内容可以支持GBK和UTF-8两种格式的编码。

1、GBK支持:默认按GBK进行编码,输入内容为GBK编码,输出内容为GBK编码,否则会接口报错编码错误

2、UTF-8支持:若文本需要使用UTF-8编码,请在url参数中添加charset=UTF-8 (大小写敏感)
例如 https://aip.baidubce.com/rpc/2.0/nlp/v1/lexer?charset=UTF-8&access_token=24.f9ba9c5241b67688bb4adbed8bc91dec.2592000.1485570332.282335-8574074

请求参数

参数 类型 是否必须 描述
text_1 string 待比较文本1,最大512字节
text_2 string 待比较文本2,最大512字节
model string 默认为"BOW",可选"BOW"、"CNN"与"GRNN"

关于模型选择

短文本相似度接口,可由用户自主选择合适的模型:

BOW(词包)模型

基于bag of words的BOW模型,特点是泛化性强,效率高,比较轻量级,适合任务:输入序列的 term “确切匹配”、不关心序列的词序关系,对计算效率有很高要求;

GRNN(循环神经网络)模型

基于recurrent,擅长捕捉短文本“跨片段”的序列片段关系,适合任务:对语义泛化要求很高,对输入语序比较敏感的任务;

CNN(卷积神经网络)模型

模型语义泛化能力介于 BOW/RNN 之间,对序列输入敏感,相较于 GRNN 模型的一个显著优点是计算效率会更高些。

返回格式

JSON格式

默认返回内容为GBK编码

若用户指定输入为UTF-8编码(通过指定charset参数),则返回内容为UTF-8编码

返回参数

参数 描述 取值
log_id uint64 随机数,请求唯一标识码
score float 相似度结果取值(0,1],分数越高说明相似度越高

返回示例

{
    "log_id": 12345,
    "texts":{
        "text_1":"浙富股份",
        "text_2":"万事通自考网"
    },
    "score":0.3300237655639648 //相似度结果
},