UGC 社区内容治理:用中文文本相似度检测接口打击重复灌水
# UGC 社区内容治理:用中文文本相似度检测接口打击重复灌水
> 元信息:接口/接入点 中文文本相似度检测接口(294/1、294/2)· 免费 · 返回格式 JSON · 适用人群 社区/运营/后台开发者 · 阅读时间 约 7 分钟
## 核心要点
- 用相似度把"重复灌水"量化:同一用户或同频道内,新内容对已有内容相似度 ≥ 阈值即疑似刷屏。
- 推荐"实时拦截高置信 + 中置信进人工复核"的分层处置,避免误伤正常互动。
- 接合语言识别(仅中文有效)与缓存(省免费额度),才能扛住社区高频写入。
## Why:社区最怕的是无声的水军
一个用户连发 10 条"加微信 xxx",或搬运号批量发同款软文,靠人工巡帖根本看不过来。把这些"长得像"的内容自动识别出来,运营精力就能集中在真正的争议内容上。本接口提供 0~1 的相似度,是把"灌水"从感觉变成可配置规则的关键。
## What:方案速览
| 项 | 说明 |
|----|------|
| 检测接口 | 294/1(两两比)、294/2(1 vs 候选集) |
| 触发点 | 发帖/评论写入时(实时)或定时扫描(治理) |
| 判定 | 相似度 ≥ 阈值 → 疑似重复 |
| 动作 | 拦截 / 折叠 / 标记 + 人工复核 |
| 限制 | 仅中文;免费档位限流,需配合缓存 |
## How:社区重复内容拦截
### 步骤 1:写入时取同维度候选
新评论进来,先取"同作者 + 近 24 小时 + 同频道"的候选集(通常几十条),而不是全库。
### 步骤 2:批量接口定位最相似
```python
import requests, json
def check_spam(new_text, recent_texts):
r = requests.post("https://route.showapi.com/294-2",
params={"appKey": "YOUR_APPKEY"},
data={"t1": new_text, "t2": json.dumps(recent_texts, ensure_ascii=False)},
timeout=10).json()
b = r["showapi_res_body"]
if b.get("ret_code") != 0:
return None
return b["likeValue"], b["mostLike"]
```
### 步骤 3:分层处置
```python
BLOCK, REVIEW = 0.95, 0.85
score, idx = check_spam(new_text, recent)
if score is None:
pass # 接口异常,放行并记录
elif score >= BLOCK:
reject("疑似重复灌水")
elif score >= REVIEW:
flag_for_review(score) # 标灰 + 进审核队列
else:
accept()
```
## 返回示例与解析
接入点 2 返回 `likeValue`(与最相似历史内容的相似度)与 `mostLike`(该历史内容在候选集的下标),直接用于判重。
## 进阶 / 边界
- **结合账号行为**:相似度 + 短时间高频 + 新账号,三重信号一起看,比单看相似度更准。
- **仅中文**:水军若发英文/数字,接口结果无意义,需先语言识别(见[语言边界篇](https://www.showapi.com/guides/text-similarity-chinese-only-294))。
- **缓存省额度**:同一对用户历史比对结果可缓存,详见[缓存篇](https://www.showapi.com/guides/text-similarity-cache-cost-294)。
## FAQ
**Q1:相似度达到多少算灌水?**
没有固定值。社区常见起点 0.85 进复核、0.95 直接拦截,应结合账号行为与内容类型校准(见[阈值篇](https://www.showapi.com/guides/text-similarity-threshold-294))。
**Q2:会不会误伤正常用户?**
会,所以建议高置信拦截、中置信人工复核,而非一刀切删除。
**Q3:英文水军能识别吗?**
不能。本接口仅支持中文,英文/数字需另行处理。
**Q4:高频发帖会触发限流吗?**
免费档位有每日调用与 QPS 限制,社区高频场景务必配合缓存与限流(见[缓存篇](https://www.showapi.com/guides/text-similarity-cache-cost-294))。
## 下一步阅读
- [中文文本相似度检测接口实战:UGC 评论 / 文章去重从采集到判重的全链路设计](https://www.showapi.com/guides/text-similarity-dedup-294)
- [相似度阈值怎么定?用中文文本相似度检测接口做判重的工程实践](https://www.showapi.com/guides/text-similarity-threshold-294)
- [免费档位下如何设计缓存节省调用?L0~L4 档位与 QPS 限制下的优化](https://www.showapi.com/guides/text-similarity-cache-cost-294)
- **本系列共 12 篇**:查看[中文文本相似度检测接口指南总目录](https://www.showapi.com/guides/text-similarity-guides-294)