# 高级用法

**适用场景**: 掌握基础查重后，学习关键词过滤、进程优化、格式转换等高级功能

---

## 一、关键词过滤功能

### 为什么需要关键词过滤?

某些关键词会影响重复率：
- 学校名称、机构名称
- 常见专业术语
- 固定格式用语

### 使用关键词过滤

**AI执行说明**: AI将指导关键词过滤设置

```
操作步骤：
1. 找到"关键词过滤"功能
2. 添加关键词（如：北京大学、清华大学）
3. 查重时会自动删除这些关键词
4. 避免关键词影响重复率
```

### 添加关键词

```
关键词类型：
- 学校名：北京大学、清华大学等
- 机构名：中国科学院、某某公司
- 常见术语：参考文献、摘要等
```

### 注意事项

```
关键词过滤规则：
- 添加的关键词在查重前会被删除
- 仅删除精确匹配的关键词
- 不影响其他文本内容
```

---

## 二、查重进程数优化

### 默认设置

```
默认进程数：CPU逻辑核心数 - 2
原因：保留2个核心给系统和其他任务
```

### 手动调整

**AI执行说明**: AI将根据机器配置推荐进程数

```powershell
# 查看CPU核心数
systeminfo | findstr /C:"处理器"

# 推荐设置：
# 4核CPU：设置2进程
# 8核CPU：设置6进程
# 16核CPU：设置14进程

# 调整原则：
# - 进程数过多：内存不足，反而变慢
# - 进程数过少：查重速度慢
# - 推荐：核心数-2 或 核心数-1
```

### 性能测试

```
测试方法：
1. 设置不同进程数（2、4、6）
2. 查重相同文件批次
3. 记录查重时间
4. 选择最优进程数
```

---

## 三、格式转换线程数优化

### 默认设置

```
默认线程数：CPU逻辑核心数 - 2
作用：文件格式转换速度
```

### 格式转换说明

```
支持的格式：
- PDF文件：使用PDFBox转换
- Word文件：使用Spire Word转换
- 文本文件：直接处理

转换过程：
PDF/Word → 纯文本 → 查重
```

### 优化建议

```
调整原则：
- 线程数过多：内存占用大
- 线程数过少：转换慢
- 推荐：与查重进程数相同
```

---

## 四、文本预处理机制

### 自动预处理

系统自动处理以下内容：

```
预处理内容：
- 删除摘要部分
- 删除目录部分
- 删除参考文献部分
- 删除非中文字符
```

### 为什么预处理?

```
原因：
- 摘要、目录、参考文献是固定格式
- 不计入重复率
- 提高查重准确性
```

### 预处理效果

```
效果：
- 减少无关内容干扰
- 提高查重速度
- 重复率更准确
```

---

## 五、查重算法原理

### 连续字符串比对

```
算法原理：
1. 两篇文件比对连续相同字符串
2. 超过阈值（如10字）判定为抄袭
3. 计算重复字数和重复率
```

### 查重规则

**AI执行说明**: AI将解释查重规则

```
查重规则：
1. 单篇文本重复率<0.25%：不计入重复
2. 重复字数<30字：不计入重复
3. 同一句话多次复制：只计一次重复
4. 查重阈值：1-99可调
```

### 为什么不是100%?

```
原因：
- 文本预处理删除部分内容
- 小段重复不计入
- 多次复制只计一次
```

---

## 六、大规模查重优化

### 比对库管理

```
大规模比对库建议：
- 分批添加：避免一次性添加过多文件
- 定期清理：删除过时文件
- 分类管理：按主题分类比对库
```

### 查重速度优化

```
优化方法：
1. 增加查重进程数
2. 增加格式转换线程数
3. 使用高性能机器
4. 分批查重：避免单次过多文件
```

### 内存管理

```
内存建议：
- 可用内存≥1.5GB
- 大规模查重≥4GB
- 监控内存使用率
```

---

## 七、批量查重策略

### 分批查重

```
策略：
- 每批50-100文件
- 分多次查重
- 合并统计报告
```

### 并行查重

```
多机器查重：
- 多台机器同时查重
- 分配不同文件批次
- 合并查重报告
```

---

## 八、查重报告定制

### 报告内容

```
开源版报告：
- rtf格式查重报告
- 重复率统计
- 重复段落标注
```

### 商用版报告

```
商用版报告（更丰富）：
- 更详细的重复分析
- 多种报告格式
- 可定制内容
```

---

## 九、Java SDK集成

### 适用场景

- 需深度集成到私有项目
- 开发自己的查重系统

### SDK信息

```
Java SDK地址：
https://github.com/tianlian0/duplicate-check-sample

特点：
- Java版本查重SDK
- 可集成到私有项目
- 已有多个商用系统基于此SDK
```

---

## 十、商用版功能

### 开源版 vs 商用版

```
开源版：
- 基础查重功能
- 简单查重报告
- 免费使用

商用版：
- 更丰富的报告
- 技术支持
- 定制开发
- Web版系统
```

### 商用版获取

```
试用链接：
https://xincheck.com/?id=20

标书查重：
https://xincheck.com/?id=16
```

---

## 完成确认

### 检查清单
- [ ] 学会使用关键词过滤
- [ ] 理解进程数和线程数优化
- [ ] 了解文本预处理机制
- [ ] 掌握大规模查重策略
- [ ] 知道Java SDK集成方式

### 下一步
如遇到问题，查看 [常见问题](../troubleshooting.md)