← 返回
AI智能 Key

TencentCloud QuestionMark OCR

腾讯云试题批改Agent(SubmitQuestionMarkAgentJob/DescribeQuestionMarkAgentJob)接口调用技能。当用户需要对试卷图片或试题图片中的K12试卷或试题进行自动批改、手写答案识别、知识点分析时,应使用此技能。支持整卷图片批改和单题图片批改,提供题目切题、正误判定、...
腾讯云试题批改Agent(SubmitQuestionMarkAgentJob/DescribeQuestionMarkAgentJob)接口调用技能。当用户需要对试卷图片或试题图片中的K12试卷或试题进行自动批改、手写答案识别、知识点分析时,应使用此技能。支持整卷图片批改和单题图片批改,提供题目切题、正误判定、...
zt1314p-design
AI智能 clawhub v1.0.2 2 版本 99894.8 Key: 需要
★ 0
Stars
📥 950
下载
💾 235
安装
2
版本
#latest

概述

腾讯云试题批改Agent (SubmitQuestionMarkAgentJob / DescribeQuestionMarkAgentJob)

用途

调用腾讯云OCR试题批改Agent接口,面向K12教育场景的试题批改产品,支持整卷/单题端到端处理(试卷切题+题目批改+手写坐标回显),聚焦试题批改(含手写答案)和试题解析(不含手写答案)。精准输出题目、正误判定、答案对比、错误分析及知识点等结构化评估结果。低年级算式批改效果优于线上数学作业批改。

核心能力:

  • 异步双接口模式:Submit 提交任务获取 JobId → Describe 轮询查询结果(DONE/FAIL 时完成)
  • 整卷批改:自动切题后逐题批改,返回每道题目的批改信息
  • 单题批改:跳过切题环节,直接对单题进行批改,支持传入参考答案
  • 深度思考:可选开启深度思考模式,进行更深层次推理分析(速度更慢)
  • 知识点输出:可配置输出题目关联的知识点信息
  • 正确答案输出:可配置输出题目的正确答案
  • 手写答案坐标:可配置输出手写答案在原图中的坐标位置
  • 多格式输入:支持 PNG、JPG、JPEG、BMP、GIF、WEBP、HEIC、TIFF、HEIF 及 PDF 格式

官方文档:

  • 提交任务:https://cloud.tencent.com/document/api/866/128273
  • 查询任务:https://cloud.tencent.com/document/api/866/128274

使用时机

当用户提出以下需求时触发此技能:

  • 需要对试卷图片/PDF进行自动批改
  • 需要识别手写答案并判断正误
  • 需要对K12试题进行批改分析
  • 需要获取试题的知识点信息
  • 需要获取试题的正确答案
  • 需要对单道题目进行批改(含参考答案)
  • 涉及试卷切题、试题解析的任何场景

环境要求

  • Python 3.6+
  • 依赖:tencentcloud-sdk-python(通过 pip install tencentcloud-sdk-python 安装)
  • 环境变量:
  • TENCENTCLOUD_SECRET_ID:腾讯云API密钥ID
  • TENCENTCLOUD_SECRET_KEY:腾讯云API密钥Key

使用方式

运行 scripts/main.py 脚本完成试题批改。该接口为异步接口,脚本会自动提交任务并轮询查询结果。

请求参数

提交任务 (SubmitQuestionMarkAgentJob) 参数

参数类型必填说明
------------------------
ImageBase64str否(二选一)图片/PDF的Base64值,编码后不超过10M,分辨率建议600*800以上,支持PNG/JPG/JPEG/BMP/PDF格式
ImageUrlstr否(二选一)图片/PDF的URL地址,下载时间不超过3秒。都提供时只使用ImageUrl。建议存储于腾讯云
PdfPageNumberintPDF页码,仅支持单页识别,默认1
BoolSingleQuestionbool是否单题批改(跳过切题),默认false
EnableDeepThinkbool是否开启深度思考(更深层推理,速度更慢),默认false
QuestionConfigMapstr题目信息输出配置(JSON字符串),可选key:KnowledgePoints(输出知识点)/TrueAnswer(输出正确答案)/ReturnAnswerPosition(输出手写答案坐标)
ReferenceAnswerstr单题批改时的参考答案,仅单题时有效,多题时不生效

查询任务 (DescribeQuestionMarkAgentJob) 参数

参数类型必填说明
------------------------
JobIdstr任务唯一ID,由Submit接口返回,长度不超过32字符
UserAgentstr请求来源标识(可选),用于追踪调用来源,统一固定为Skills

输出格式

识别成功后返回 JSON 格式结果:

格式化输出模式(默认)

{
  "任务ID": "1410885500986064896",
  "任务状态": "DONE",
  "切题数量": "2",
  "旋转角度": 0.0,
  "批改结果": [
    {
      "题号": 1,
      "题干": "1. 小琪在做作业时发现有一道题的一部分被墨水遮住了...",
      "子题": [
        {
          "题号": "1-1",
          "题干": "(1)小琪猜测,墨水遮住的内容是"2a",请你根据小琪的猜测完成计算;",
          "答案列表": [
            {
              "手写答案": "\\frac{2}{a-1}...",
              "是否正确": false,
              "答案分析": "首先将除法转化为乘法,对分子分母因式分解后约分...",
              "正确答案": "...",
              "知识点": ["分式运算", "因式分解"],
              "答案坐标": [113, 648, 558, 648, 558, 698, 113, 698]
            }
          ]
        }
      ]
    }
  ],
  "RequestId": "xxx"
}

原始输出模式(--raw)

{
  "JobId": "1410885500986064896",
  "JobStatus": "DONE",
  "ErrorCode": "",
  "ErrorMessage": "",
  "Angle": 0.0,
  "MarkInfos": [
    {
      "MarkItemTitle": "1. 小琪在做作业时...",
      "AnswerInfos": [],
      "MarkInfos": [
        {
          "MarkItemTitle": "(1)小琪猜测...",
          "AnswerInfos": [
            {
              "HandwriteInfo": "\\frac{2}{a-1}...",
              "IsCorrect": false,
              "AnswerAnalysis": "首先将除法转化为乘法...",
              "RightAnswer": "",
              "KnowledgePoints": [],
              "HandwriteInfoPositions": [113, 648, 558, 648, 558, 698, 113, 698]
            }
          ],
          "MarkInfos": []
        }
      ]
    }
  ],
  "RequestId": "xxx"
}

响应数据结构说明

SubmitQuestionMarkAgentJob 响应

参数类型说明
------------------
JobIdstr任务唯一ID,用于查询结果
QuestionInfolist of QuestionInfo切题题目边框坐标列表(BoolSingleQuestion=true时为空)
QuestionCountstr切题数量,作为计费题目数总量
RequestIdstr唯一请求ID

DescribeQuestionMarkAgentJob 响应

参数类型说明
------------------
JobStatusstr任务状态:WAIT(等待中)/RUN(执行中)/FAIL(失败)/DONE(成功)
ErrorCodestr任务执行错误码(非FAIL时为空)
ErrorMessagestr任务执行错误信息(非FAIL时为空)
Anglefloat图片旋转角度(角度制),水平方向为0,顺时针为正
MarkInfoslist of MarkInfo试题批改信息
RequestIdstr唯一请求ID

MarkInfo 结构(嵌套递归):

字段类型说明
------------------
MarkItemTitlestr题目的题干信息
AnswerInfoslist of AnswerInfo批改答案列表(按从左到右、从上到下排列)
MarkInfoslist of MarkInfo嵌套子题信息(无子题则为空)

AnswerInfo 结构:

字段类型说明
------------------
HandwriteInfostr手写答案内容(如选择题的手写选项、填空题的手写内容)
IsCorrectbool答案是否正确
AnswerAnalysisstr答案分析结果
HandwriteInfoPositionslist of int答案区域4角点坐标(长度8数组:左上/右上/右下/左下),需配置ReturnAnswerPosition。可能返回null
RightAnswerstr正确答案内容,需配置 QuestionConfigMap 的 TrueAnswer 为 true
KnowledgePointslist of str知识点内容,需配置 QuestionConfigMap 的 KnowledgePoints 为 true。可能返回null

QuestionInfo 结构:

字段类型说明
------------------
Anglefloat旋转角度
Heightint预处理后图片高度
Widthint预处理后图片宽度
ResultListlist of ResultList文档元素(可能返回null)
OrgHeightint输入图片高度
OrgWidthint输入图片宽度
ImageBase64str预处理后的图片base64编码

错误码说明

错误码含义
--------------
FailedOperation.DownLoadError文件下载失败
FailedOperation.ImageDecodeFailed图片解码失败
FailedOperation.ImageSizeTooLarge图片尺寸过大,请确保编码后不超过10M
FailedOperation.OcrFailedOCR识别失败
FailedOperation.PDFParseFailedPDF解析失败
FailedOperation.UnKnowError未知错误
FailedOperation.UnKnowFileTypeError未知的文件类型
FailedOperation.UnOpenError服务未开通,请先在腾讯云控制台开通试题批改Agent服务
InvalidParameterValue.InvalidParameterValueLimit参数值错误
LimitExceeded.TooLargeFileError文件内容太大
ResourceUnavailable.InArrears账号已欠费
ResourceUnavailable.ResourcePackageRunOut账号资源包耗尽
ResourcesSoldOut.ChargeStatusException计费状态异常

重要业务逻辑

  1. 异步双接口模式:Submit 提交任务 → Describe 轮询,JobStatus 为 DONE/FAIL 时完成
  2. Submit 计费,Describe 不计费
  3. ImageBase64 和 ImageUrl 必须提供其一,都提供时只使用 ImageUrl
  4. 支持格式:PNG/JPG/JPEG/BMP/GIF/WEBP/HEIC/TIFF/HEIF 及 PDF
  5. PdfPageNumber 必须为正整数,仅支持单页识别
  6. BoolSingleQuestion=true 时跳过切题,直接单题批改
  7. QuestionConfigMap 示例:{"KnowledgePoints":true,"TrueAnswer":true,"ReturnAnswerPosition":false}
  8. ReferenceAnswer 仅单题时有效,多题时不生效
  9. JobId 长度不超过32字符
  10. 默认接口请求并发限制:10题/分钟
  11. 建议图片存储于腾讯云COS以获得更高的下载速度和稳定性
  12. MarkInfo 为递归嵌套结构,可能存在多层子题

调用示例

# 通过URL进行整卷批改(输出知识点和正确答案)
python scripts/main.py --image-url "https://example.com/exam_paper.jpg" \
  --question-config '{"KnowledgePoints":true,"TrueAnswer":true}'

# 通过URL进行单题批改(带参考答案)
python scripts/main.py --image-url "https://example.com/single_question.jpg" \
  --single-question --reference-answer "x=2"

# 开启深度思考模式
python scripts/main.py --image-url "https://example.com/exam.jpg" --enable-deep-think

# 通过文件路径进行批改(自动Base64编码)
python scripts/main.py --image-base64 ./exam_paper.png

# 批改PDF试卷(指定页码)
python scripts/main.py --image-base64 ./exam.pdf --pdf-page-number 2

# 输出原始JSON响应
python scripts/main.py --image-url "https://example.com/exam.jpg" --raw

# 指定地域和自定义轮询参数
python scripts/main.py --image-url "https://example.com/exam.jpg" \
  --region ap-beijing --poll-interval 3 --poll-timeout 300```

版本历史

共 2 个版本

  • v1.0.2 当前
    2026-03-30 09:16 安全 安全
  • v1.0.1
    2026-03-11 10:58

安全检测

腾讯云安全 (Keen)

安全,无风险
查看报告

腾讯云安全 (Sanbu)

安全,无风险
查看报告

🔗 相关推荐

ai-intelligence

Self-Improving + Proactive Agent

ivangdavila
自我反思+自我批评+自我学习+自组织记忆。智能体评估自身工作、发现错误并持续改进。
★ 1,350 📥 317,710
productivity

TencentCloud General OCR

zt1314p-design
腾讯云广告文字识别(AdvertiseOCR)接口调用技能。当用户需要从图片中识别文字内容时,应使用此技能。支持中英文、横排、竖排及倾斜场景的图片文字识别,支持90度、180度、270度翻转场景的图片识别,返回文本框位置与文字内容。支持图片
★ 0 📥 2,742
ai-intelligence

self-improving agent

pskoett
捕获经验教训、错误和纠正,以实现持续改进。使用时机:(1)命令或操作意外失败;(2)用户纠正……
★ 4,056 📥 796,077