免费中文分词(文本处理):文本推荐接入点怎么用?用 @@@ 批量输入做相似文本推荐
免费中文分词文本处理中文NLPAPI教程ShowAPI # 免费中文分词(文本处理):文本推荐接入点怎么用?用 @@@ 批量输入做相似文本推荐
> 接口:文本推荐(2663-9)|是否免费:是(含档位限制)|返回格式:JSON|适用人群:做内容推荐/相似匹配的开发者|阅读时间:约 6 分钟
## 核心要点
- 文本推荐(2663-9)用 `text_list`(多条文本,以 `@@@` 分隔)+ `keyword`(关键词)+ 可选 `num`(推荐条数,默认 2)做相似文本推荐。
- 返回 `list`:与关键词最相关的文本(已按 `text_list` 顺序编号)。
- 它是「单次请求批量输入」模式,不是异步订阅推送。
## Why
「从一堆候选里挑出跟某个关键词最相关的几条」是推荐、去重、相似聚合的高频需求。文本推荐接入点让你把候选文本一次性用 `@@@` 拼进 `text_list`,再给一个 `keyword`,就能拿到最匹配的若干条,省去自己算文本相似度。
## What
**接口速览**
| 项 | 值 |
|------|------|
| 接口地址 | `https://route.showapi.com/2663-9` |
| 必填参数 | `text_list`(多条文本,`@@@` 分隔)、`keyword`(关键词) |
| 可选参数 | `num`(推荐数量,默认 2) |
| 返回 | `list`: [String] |
## How
从候选库里挑出与「自然语言处理」最相关的 2 条:
```python
import requests
candidates = [
"中文分词是自然语言处理的基础任务",
"今天天气真好适合出游",
"深度学习推动了自然语言处理的进步",
"红烧肉的做法很简单",
]
text_list = "@@@".join(candidates)
resp = requests.post(
"https://route.showapi.com/2663-9",
params={"appKey": "YOUR_APPKEY"},
data={"text_list": text_list, "keyword": "自然语言处理", "num": 2},
timeout=10,
).json()
body = resp["showapi_res_body"]
if body.get("ret_code") != 0:
raise RuntimeError(body.get("remark"))
print("推荐结果:", body.get("list"))
```
**cURL**
```bash
curl -X POST "https://route.showapi.com/2663-9?appKey=YOUR_APPKEY" \
-H "content-type: application/x-www-form-urlencoded" \
--data-urlencode "text_list=中文分词是自然语言处理的基础任务@@@今天天气真好适合出游@@@深度学习推动了自然语言处理的进步" \
--data-urlencode "keyword=自然语言处理" \
--data-urlencode "num=2"
```
## 返回示例与解析
```json
{
"showapi_res_body": {
"ret_code": 0,
"remark": "成功",
"list": [
"中文分词是自然语言处理的基础任务",
"深度学习推动了自然语言处理的进步"
]
}
}
```
- `list` 是与 `keyword` 最相关的文本,顺序由后端排序。
- `num` 控制返回条数,不传默认 2;实际条数可能少于请求值。
## 进阶 / 边界
- **`@@@` 是分隔符**:`text_list` 内每条文本之间必须用 `@@@` 连接,文本本身请勿包含该字符。
- **不是异步订阅**:这是单次请求-响应,文本随请求一起传,没有「批量订阅 + 回调」模型。
- **免费档限制**:默认档位下 `list` 可能为空,见 [免费档位与调用策略](https://www.showapi.com/guides/cnseg-free-tier-2663)。
## FAQ
**Q1:text_list 用哪个符号分隔?**
用 `@@@`(三个 @)分隔多条文本。
**Q2:num 不传返回几条?**
默认 2 条,实际可能少于 2 条。
**Q3:这是批量订阅/回调吗?**
不是,是单次请求传入批量文本、同步返回推荐结果。
**Q4:keyword 一定要出现在 text_list 里吗?**
不一定,它是用于匹配的关键词,后端按语义/相关度挑出最相关的文本。
**Q5:免费档返回空 list 是失败吗?**
多为档位限制,先核对额度。
## 相关能力 / 下一步阅读
- [免费中文分词(文本处理):自动提取文章关键词与摘要](https://www.showapi.com/guides/cnseg-keywords-summary-2663)
- [免费中文分词(文本处理):语义距离接入点边界——distance 取极大值是什么意思?](https://www.showapi.com/guides/cnseg-distance-2663)
- [免费中文分词(文本处理):返回结构与公共字段全解](https://www.showapi.com/guides/cnseg-response-2663)
> 本系列共 14 篇:查看[免费中文分词(文本处理)API 指南总目录](https://www.showapi.com/guides/cnseg-guides-2663)