本文介绍如何通过 REST API 重试审核任务。当审核任务执行失败或需要重新审核时,可以重试整个审核任务,或者只重试审核任务中的某条规则。
审核任务支持两种重试方式:
- 重试整个审核任务:重新执行整个审核任务的所有规则
- 重试某条规则:只重新执行审核任务中的某条特定规则
重试整个审核任务
重新执行整个审核任务,会对任务中的所有规则重新进行审核:
curl -X POST \
-H "Content-Type: application/json" \
-H "x-ti-app-id: <your-app-id>" \
-H "x-ti-secret-code: <your-secret-code>" \
-d '{
"workspace_id": "<your-workspace-id>",
"task_id": "31415926"
}' \
"https://docflow.textin.com/api/app-api/sip/platform/v2/review/task/retry"
请求参数:
workspace_id (必填): 工作空间ID
task_id (必填): 审核任务ID
响应示例:
{
"code": 200,
"msg": "success"
}
重试审核任务中的某条规则
只重新执行审核任务中的某条特定规则,适用于只需要重新审核某个规则的情况:
curl -X POST \
-H "Content-Type: application/json" \
-H "x-ti-app-id: <your-app-id>" \
-H "x-ti-secret-code: <your-secret-code>" \
-d '{
"workspace_id": "<your-workspace-id>",
"task_id": "31415926",
"rule_id": "31415926"
}' \
"https://docflow.textin.com/api/app-api/sip/platform/v2/review/task/rule/retry"
请求参数:
workspace_id (必填): 工作空间ID
task_id (必填): 审核任务ID
rule_id (必填): 审核规则ID
响应示例:
{
"code": 200,
"msg": "success"
}
参数说明
审核任务ID (task_id)
审核任务ID是已创建的审核任务的标识。可以通过以下方式获取:
审核规则ID (rule_id)
审核规则ID是审核任务中某条规则的标识。可以通过以下方式获取:
- 通过获取审核结果接口查询任务结果,从
groups[].review_tasks[].rule_id 字段获取
- 通过规则库管理接口获取规则库中的规则ID
示例:从审核结果中获取规则ID
import requests
ti_app_id = "<your-app-id>"
ti_secret_code = "<your-secret-code>"
workspace_id = "<your-workspace-id>"
task_id = "31415926"
host = "https://docflow.textin.com"
url = "/api/app-api/sip/platform/v2/review/task/result"
# 获取审核结果
payload = {
"workspace_id": workspace_id,
"task_id": task_id
}
resp = requests.post(
url=f"{host}{url}",
json=payload,
headers={
"x-ti-app-id": ti_app_id,
"x-ti-secret-code": ti_secret_code,
},
timeout=60,
)
result = resp.json()
if result.get("code") == 200:
review_result = result.get("result", {})
groups = review_result.get("groups", [])
# 遍历所有规则,获取规则ID
rule_ids = []
for group in groups:
review_tasks = group.get("review_tasks", [])
for review_task in review_tasks:
rule_id = review_task.get("rule_id")
rule_name = review_task.get("rule_name")
if rule_id:
rule_ids.append({
"rule_id": rule_id,
"rule_name": rule_name
})
print(f"找到 {len(rule_ids)} 条规则:")
for rule in rule_ids:
print(f" 规则ID: {rule['rule_id']}, 规则名称: {rule['rule_name']}")
使用场景
重试整个审核任务
适用于以下场景:
- 审核任务执行失败:当审核任务整体执行失败时,可以重试整个任务
- 规则库更新后:当规则库中的规则被更新后,可以重试整个审核任务以应用新规则
- 抽取结果更新后:当关联的抽取任务结果被更新后,可以重试审核任务以基于新的抽取结果重新审核
重试某条规则
适用于以下场景:
- 单条规则执行失败:当某条规则执行失败时,可以只重试该规则,而不影响其他规则
- 规则配置调整后:当某条规则的配置被调整后,可以只重试该规则
- 提高效率:当只需要重新审核某个特定规则时,重试单条规则比重试整个任务更高效
注意事项
- 异步执行:重试操作是异步执行的,重试后需要通过获取审核结果接口查询审核状态
- 任务状态:确保审核任务存在且可以重试,已删除的任务无法重试
- 规则状态:重试规则时,确保规则ID正确且属于指定的审核任务
- 重试频率:建议控制重试频率,避免频繁重试导致系统负载过高
- 结果覆盖:重试会重新生成审核结果,原有的审核结果会被覆盖
相关页面