技术博客
中文文本相似度检测接口:5 分钟从注册到第一条相似度结果

中文文本相似度检测接口:5 分钟从注册到第一条相似度结果

作者: 万维易源
2026-09-01
文本相似度快速接入Python示例免费接口
# 中文文本相似度检测接口:5 分钟从注册到第一条相似度结果 > 元信息:接口/接入点 中文文本相似度检测接口(294/1)· 免费 · 请求方式 POST/GET · 返回格式 JSON · 适用人群 新注册用户、初级开发者 · 阅读时间 约 5 分钟 ## 核心要点 - 本接口基于余弦相似度,返回 **0~1 的 `like` 值**,越接近 1 两文本越相似。 - 仅需两个必填参数 `t1`、`t2`(单个最大 2M 字节),POST 到 `route.showapi.com/294-1`。 - 注册即免费调用;**仅支持中文**,不支持英文与数字检测。 ## Why:这跟我有什么关系 如果你在做评论过滤、文章去重、内容推荐或抄袭检测,第一步往往就是"这两段文字像不像"。本接口把"计算文本向量夹角"这件专业事封装成一个 HTTP 调用:你只管传两段文字,它回你一个 0~1 的相似度分数。5 分钟内你就能在自己的项目里跑出第一条结果。 ## What:前置条件与接口速览 | 项 | 说明 | |----|------| | 接口地址 | `https://route.showapi.com/294-1?appKey={your_appKey}` | | 接入点 | 文本相似度检测接口(294/1) | | 请求方式 | POST / GET | | 返回格式 | JSON | | 鉴权 | URL 上的 `appKey`(在控制台获取) | | 必填参数 | `t1`(第 1 个文本)、`t2`(第 2 个文本),均最大 2M 字节 | | 计费 | 免费(平台 L0~L4 档位限流) | | 集成能力 | MCP 服务、OpenAPI 3.0 文档 | > 注意:接入点说明明确写明"本接口的文本相似度检测功能**不适用于英文和数字**的检测"。 ## How:三步跑通第一次调用 ### 步骤 1:获取 AppKey 登录 ShowAPI 控制台 → 我的应用 → 创建应用 → 拿到 `appKey`(https://www.showapi.com/console#/myApp)。 ### 步骤 2:发起第一次调用 下面三段代码功能完全相同,挑你顺手的运行。**替换 `YOUR_APPKEY` 即可运行。** **Python(requests)** ```python import requests url = "https://route.showapi.com/294-1" params = {"appKey": "YOUR_APPKEY"} data = { "t1": "今天天气真好,想去公园散步", "t2": "天气不错,我打算去公园走走", } try: r = requests.post(url, params=params, data=data, timeout=10) r.raise_for_status() res = r.json() body = res["showapi_res_body"] if body.get("ret_code") == 0: print("相似度 like =", body["like"]) else: print("调用失败 ret_code =", body.get("ret_code"), res.get("showapi_res_error")) except requests.RequestException as e: print("请求异常:", e) ``` **cURL** ```bash curl -X POST "https://route.showapi.com/294-1?appKey=YOUR_APPKEY" \ -H "content-type: application/x-www-form-urlencoded" \ -d "t1=%E4%BB%8A%E5%A4%A9%E6%B0%94%E7%9C%9F%E5%A5%BD&t2=%E5%A4%A9%E6%B0%94%E4%B8%8D%E9%94%99" ``` **Node.js(fetch)** ```javascript const url = "https://route.showapi.com/294-1?appKey=YOUR_APPKEY"; const body = new URLSearchParams({ t1: "今天天气真好,想去公园散步", t2: "天气不错,我打算去公园走走", }); fetch(url, { method: "POST", headers: { "content-type": "application/x-www-form-urlencoded" }, body, signal: AbortSignal.timeout(10000), }) .then((r) => r.json()) .then((res) => { const b = res.showapi_res_body; if (b.ret_code === 0) console.log("相似度 like =", b.like); else console.error("调用失败", b.ret_code, res.showapi_res_error); }) .catch((e) => console.error("请求异常", e)); ``` ### 步骤 3:解析返回 关注 `showapi_res_body.like`: - `ret_code == 0` → 成功,读取 `like`。 - `ret_code != 0` → 失败,原因看系统级 `showapi_res_error`。 ## 返回示例与解析 ```json { "showapi_res_error": "", "showapi_fee_num": 1, "showapi_res_code": 0, "showapi_res_id": "67aaea24fb638c23e1d6fc6b", "showapi_res_body": { "ret_code": 0, "like": 0.8164965809277261 } } ``` | 字段 | 类型 | 含义 | |------|------|------| | `showapi_res_code` | Number | 系统级状态码,0 为成功 | | `showapi_res_error` | String | 系统级错误信息,成功时为空 | | `showapi_res_body.ret_code` | Number | 业务状态码,0 为成功,其他失败 | | `showapi_res_body.like` | Number | 两文本相似度,0~1,越接近 1 越像 | > 字段完整定义见[《中文文本相似度检测接口返回字段全解》](https://www.showapi.com/guides/text-similarity-response-fields-294)。 ## 进阶 / 边界 - **免费但有限流**:默认 L0 基础版 100 次/天、1 QPS。量上来后可用平台积分升级 L1~L4 档位。 - **语言边界**:英文、数字文本不参与相似度计算,传入会得到无意义或异常结果——这是文档明确限制,不是接口缺陷。 - **长度上限**:单个文本最大 2M 字节,超长需先分段。 ## FAQ **Q1:返回的 like 范围是多少?代表什么?** like 是 0~1 的小数,越接近 1 两文本越相似;等于 1 通常表示完全一致。 **Q2:接口免费吗?有调用限制吗?** 免费接口,注册即默认可调用。平台设 L0~L4 档位,L0 基础版 100 次/天、1 QPS,可用积分升级更高档位。 **Q3:英文或数字文本能检测吗?** 不能。两个接入点均明确不支持英文和数字的检测,仅适用于中文文本。 **Q4:t1、t2 有长度限制吗?** 有,单个文本最大 2M 字节。 ## 下一步阅读 - [中文文本相似度检测接口返回字段全解:like / likeValue / mostLike / ret_code 一文读懂](https://www.showapi.com/guides/text-similarity-response-fields-294) - [中文文本相似度检测接口批量匹配:单文本 vs 候选库如何定位最相似项](https://www.showapi.com/guides/text-similarity-batch-294) - [相似度阈值怎么定?用中文文本相似度检测接口做判重的工程实践](https://www.showapi.com/guides/text-similarity-threshold-294) - **本系列共 12 篇**:查看[中文文本相似度检测接口指南总目录](https://www.showapi.com/guides/text-similarity-guides-294)