本文档定义了数学题目查重系统与录题系统对接的 API 接口。
http://<server-ip>:8888application/json录题系统在录入题目时,调用此接口判断当前输入的内容是否与库中题目重复。
/api/check_duplicatePOST| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| stem | String | 是 | 题干内容 |
| options | String/Object | 否 | 选项内容 (JSON 字符串或对象) |
| answer | String | 否 | 答案 |
| solution | String | 否 | 解析 |
响应示例 (发现重复):
{
"code": -1,
"result": {
"repeatIdList": [
{
"questionsId": 12345,
"repeatMsg": "相似度: 0.9256。相似点: 某某数学题干..."
}
]
}
}
响应示例 (经过 GPT-4o 兜底确认重复):
{
"code": -1,
"result": {
"repeatIdList": [
{
"questionsId": 12345,
"repeatMsg": "相似度: 0.7582 (经 GPT-4o 深度核验)。相似点: 某某数学题干..."
}
]
}
}
响应示例 (无重复):
{
"code": 0,
"result": "ok"
}
录题系统完成录入并分配 ID 后,调用此接口通知查重系统该题的最终状态。查重系统会根据状态决定是否将该题加入向量检索库。
/api/confirm_repeatPOST| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| questionId | Integer | 是 | 数据库中的题目 ID |
| isRepeat | Integer | 是 | 0: 确认不重复(将入库); 1: 确认重复(不入库) |
响应示例:
{
"code": 0,
"result": "ok"
}
将数据库 questions_tem 表中的存量题目同步到向量库中。
/api/sync请求方法: POST
响应示例:
{
"code": 0,
"result": "Sync completed"
}
code: 0: 操作成功或通过查重。code: -1: 操作失败、参数错误或发现重复题目。