# 配置信息

例如:

APPID: xxxxxxxxxxxxxxx

TOKEN: xxxxxxxxxxxxxxx

EncodingAESKey: xxxxxxxxxxxxxxx

# 接口信息

给定文章内容,输出文章类别。类别体系分三级:

  • 一级分类:包括育儿、饮食、体育等
  • 二级分类:对一级分类进一步细化,如体育被进一步细化为乒乓球、台球、排球等
  • 三级分类:对二级分类进一步细化,如足球被进一步细化为英超、中超、西甲等

# 文章分类接口(只签名不加密):`

https://chatbot.weixin.qq.com/openapi/nlp/document_classify/TOKEN

接口类型:

POST请求

# 参数说明:

字段 类型 默认值 描述
query string 使用JWT签名后的数据

query签名说明:

字段 类型 默认值 描述
uid string 自动生成的随机标识 用户标识的唯一ID,比如:openid
data Object {title: "文章标题", content(可选,分类准确率会受到显著影响): "文章正文,纯文本,不包含HTML tag等"}

使用JSON Web TokenHS256 算法对参数进行encode, 放入到query参数中

比如参数为

{
  uid: "xjlsj33lasfaf", //能标识用户的唯一用户id,可以是openid
  data: {
    title: "东北地区今日开启升温之旅 华南西南气温将创新低",
    content: "中国天气网讯 预计今天(6日),东南一带的降水将有所收敛,但是仍有助于缓和当地的气象干旱。气温方面,东北地区今天开始将开启升温之旅,而华南、西南一带最低气温还会创新低。随后而来的周末将会是今年晴天范围最大、降水最少的周末,公众可以提前安排户外活动,迎接温暖的阳光。"
  }
}

使用 jwt 和 EncodingAESKey 对数据对象进行encode得到加密字符串

const signedData = jwths256.encode(EncodingAESKey, {
      uid: "xjlsj33lasfaf", //能标识用户的唯一用户id,可以是openid
      data: {
        title: "东北地区今日开启升温之旅 华南西南气温将创新低",
        content: "中国天气网讯 预计今天(6日),东南一带的降水将有所收敛,但是仍有助于缓和当地的气象干旱。气温方面,东北地区今天开始将开启升温之旅,而华南、西南一带最低气温还会创新低。随后而来的周末将会是今年晴天范围最大、降水最少的周末,公众可以提前安排户外活动,迎接温暖的阳光。"
      }
    }
)

# 调用开放平台语义接口

curl -XPOST -d "query=signedData" https://chatbot.weixin.qq.com/openapi/nlp/document_classify/TOKEN

https://www.jsonwebtoken.io/

Tips: 在 jsonwebtoken.io 网站上可以参考如下步骤手动生成signedData 手动生成signedData示例

# 返回结果

名称 类型 说明
preds list of dict 由二元组 (意图类别名, 对应得分) 组成的列表,按得分由大到小排序
error string 错误信息,若接口调用正常则为null,否则为错误信息

preds 字段结果说明:

名称 类型 说明
level1_cls unicode string 一级分类结果
level2_cls unicode string 二级分类结果
level3_cls unicode string 三级分类结果

# 类别体系

详见该页面

返回结果示例:

{
  "preds": {
    "level1_cls": "天气",
    "level2_cls": "其他",
    "level3_cls": "其他"
  }
}