文档分类
功能介绍
文档分类接口对用户输入的文本自动分类,给文本具体的分类。用户只要提供待处理的文本,而不用关注具体实现。主要应用场景:新闻内容分类,广告识别等。
具体Endpoint请参见终端节点。
调用华为云NLP服务会产生费用,本API支持使用基础套餐包,购买时请在自然语言处理价格计算器中查看基础套餐包和领域套餐包支持的API范围。
本API调用限制为20次/秒。
调试
您可以在API Explorer中调试该接口。
前提条件
在使用本API之前,需要您完成服务申请和认证鉴权,具体操作流程请参见申请服务和认证鉴权章节。
用户首次使用需要先申请开通。服务只需要开通一次即可,后面使用时无需再次申请。如未开通服务,调用服务时会提示ModelArts.4204报错,请在调用服务前先进入控制台开通服务,并注意开通服务区域与调用服务的区域保持一致。
URI
- URI格式
POST /v1/{project_id}/nlu/doc-classification
- 参数说明
表1 URI参数说明 名称
是否必选
说明
project_id
是
项目ID。获取方法请参见获取项目ID。
请求消息
请求参数如表2所示。
响应消息
响应参数如表3所示。
名称 |
参数类型 |
说明 |
---|---|---|
result |
Array of Result object |
调用成功时的返回标签列表。 调用失败时无此字段。 请参见表4。 |
error_code |
string |
调用失败时的错误码。具体参见错误码。 调用成功时无此字段。 |
error_msg |
string |
调用失败时的错误信息。 调用成功时无此字段。 |
参数名 |
参数类型 |
说明 |
---|---|---|
label |
String |
输入的文档标签,包括 sport(体育), anime(动漫), hospital(医院), history(历史), advertising (广告), entertainment(娱乐), religion(宗教), novel(小说), estate(地产), recruitment(招聘), education(教育), tourism(旅游), automobile(汽车), game(游戏), technology(科技), joke(笑话), health(健康), gourmet(美食), stock(股票), parenting(育儿), pornography(色情), finance(金融) |
confidence |
Float |
标签label的置信度。0到1之间的数。 |
请求示例
- 请求示例(文档分类)
POST https://nlp-ext.cn-north-4.myhuaweicloud.com/v1/{project_id}/nlu/doc-classification Request Header: Content-Type: application/json X-Auth-Token:MIINRwYJKoZIhvcNAQcCoIINODCCDTQCAQExDTALBglghkgBZQMEAgEwgguVBgkqhkiG... Request Body: { "content" : "中芯国际季报超预期,带了波芯片股节奏,不过,现在的市场风险偏好,不足以掀起普涨行情,芯片股也是如此,核心标的走慢牛,少数猛股做主升浪,大多数要死不活。前段时间,芯片的最强分支是材料,最近几天,最强分支是封测,猛股则是光刻胶龙头$容大感光(SZ300576)$与存储芯片封测龙头$深科技(SZ000021)$。原因很简单,因为它们在芯片大跌时,形态保持的最好,之前也没爆炒过,加上是新面孔。深科技创下了20年新高,与14年的深圳华强很像,可能是条潜在的大鱼,未来几个月,需要密切关注基本面的变化。封测炒一大波后,可能会转向设计,龙头韦尔随时可能新高,而猛股则可能是$紫光国微(SZ002049)$,即将历史新高主升浪。不管大盘是向上突破年线,还是向下二次探底,二季度拥抱核心科技都是最佳策略,即使大盘调整,核心科技的调整压力,也会明显低于大消费与农业。//@似水年华:回复@似水年华:大盘调整期间,走势抗跌的标的,在大盘止跌后,往往会成为大牛股。上轮芯片股大跌时,$容大感光(SZ300576)$$深科技(SZ000021)$$紫光国微(SZ002049)$跌幅最小、形态完好,在大盘见底、芯片见底后,也基本成为了最强的几只标的。形态最好的容大,率先历史新高,成为了新的材料龙头;形态次之的深科技,今天也创下了历史新高,将成为新的封测龙头;形态再次之的紫光国微,即将历史新高,可能成为新的设计龙头。查看对话", "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}/nlu/doc-classification' # endpoint和project_id需替换 token = '用户对应region的token' header = { 'Content-Type': 'application/json', 'X-Auth-Token': token } body = { 'content': '中芯国际季报超预期,带了波芯片股节奏,不过,现在的市场风险偏好,不足以掀起普涨行情,芯片股也是如此,核心标的走慢牛,少数猛股做主升浪,大多数要死不活。前段时间,芯片的最强分支是材料,最近几天,最强分支是封测,猛股则是光刻胶龙头$容大感光(SZ300576)$与存储芯片封测龙头$深科技(SZ000021)$。原因很简单,因为它们在芯片大跌时,形态保持的最好,之前也没爆炒过,加上是新面孔。深科技创下了20年新高,与14年的深圳华强很像,可能是条潜在的大鱼,未来几个月,需要密切关注基本面的变化。封测炒一大波后,可能会转向设计,龙头韦尔随时可能新高,而猛股则可能是$紫光国微(SZ002049)$,即将历史新高主升浪。不管大盘是向上突破年线,还是向下二次探底,二季度拥抱核心科技都是最佳策略,即使大盘调整,核心科技的调整压力,也会明显低于大消费与农业。//@似水年华:回复@似水年华:大盘调整期间,走势抗跌的标的,在大盘止跌后,往往会成为大牛股。上轮芯片股大跌时,$容大感光(SZ300576)$$深科技(SZ000021)$$紫光国微(SZ002049)$跌幅最小、形态完好,在大盘见底、芯片见底后,也基本成为了最强的几只标的。形态最好的容大,率先历史新高,成为了新的材料龙头;形态次之的深科技,今天也创下了历史新高,将成为新的封测龙头;形态再次之的紫光国微,即将历史新高,可能成为新的设计龙头。查看对话', '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}/nlu/doc-classification"); 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 content = "中芯国际季报超预期,带了波芯片股节奏,不过,现在的市场风险偏好,不足以掀起普涨行情,芯片股也是如此,核心标的走慢牛,少数猛股做主升浪,大多数要死不活。"; String body = "{\"content\":\"" + content + "\",\"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(); } }
响应示例
- 成功响应示例
{ "result": [ { "confidence": 1, "label": "stock" } ] }
- 失败响应示例
{ "error_code": "NLP.0101", "error_msg": "Authentication failed. Please verify the token" }
状态码
状态码请参见状态码。
错误码
错误码请参见错误码。