Skip to content

Latest commit

 

History

History
61 lines (39 loc) · 6.26 KB

File metadata and controls

61 lines (39 loc) · 6.26 KB

两小时课堂运行

完成正式页标定并在私有配置中启用目标 profile 后,在项目目录执行:

.\start-class.cmd

等价于 .\.venv\Scripts\python.exe -u -m autoykt session。默认连续监测 120 分钟;session 明确启动真实操作,会在本次进程内启用答题和点击,不改写 YAML 中的演练开关。使用 --dry-run 才只预览。模型、页面、坐标和密钥全部来自私有配置。

也可在本项目对话中说“开始两小时正式测试”。启动前先执行下面的检查;检查通过后启动项目进程并检查状态。运行使用本项目的截图与鼠标后端,持续检测不依赖对话中的 Edge 插件。

启动前

.\start-class.cmd --check

该检查只读取配置、本地模板及配置的标注截图,不采集桌面、不点击、不请求模型。截图不符合预期题型、选项或状态时会阻止正式启动;配置与截图核验结果都会显示。必须有已启用的正式页面、窗口客户区标定、页面身份模板、字母按钮和选中颜色、明确的提交方式及成功反馈。被选中但尚未启用的 profile 也会列出缺项。--check 成功表示配置完整,仍需第一道真实新题检验实际页面。

首次安装与配置参见部署与标定。聊天中经过缩放的截图只能用于回放;不能直接把坐标当成真实窗口坐标。需要点击提交的页面必须配置 submit_target,保留 submit_on_select: false。圆形单选、方形多选分别使用现场确认的模板;多选按完整选项集合投票。

保持课堂答题标签页可见,客户区尺寸和缩放与标定一致。默认失焦即暂停;配置 target_window.background_monitoring: true 后可监测完整可见的后台窗口,输入前激活并重新识别。遮挡、最小化或尺寸变化仍会暂停。程序不会自动切换浏览器标签页;紫色新题提示可配置在 page_flow.before_question 中,识别其正文位置并点击进入,计时从首次发现提示开始。新题入口消失但未进入题目时,会清理失效计时,避免影响后续题目。需要人工确认的状态不会被当作可自动恢复的暂停。

Windows 默认读取 %LOCALAPPDATA%\AutoYKT\config.yaml,也支持 AUTOYKT_CONFIG 或 --config。启动输出会明确列出实际配置路径、模型和时长,避免误用旧环境。

查看和停止

.\start-class.cmd --status
.\start-class.cmd --stop

状态包含每个页面的状态、暂停原因、各类结果次数、最近操作报告和心跳时间。心跳超过 15 秒标记为过期;它不是仍在检测的证明。每个页面的 monitoring 另外记录实际页面检查和题型扫描次数、最近扫描时间、最近题型,以及暂停次数、累计秒数和最近原因。等待题目时,detection_scans 应持续增长;模型作答期间暂时不增长属正常。停止命令向当前会话发送请求,通常在下一次心跳检查时中断;再用 --status 确认 status: ended。前台进程也可按 Ctrl+C。已经发出的鼠标动作不能撤回,未确认输入的检查点会保留,避免重新启动后重复提交。

停止请求只针对当前会话 ID,不会影响下一轮。Windows 同一桌面会话只允许一个 AutoYKT 控制进程;run 和 session 共用保护。人工 recover --skip-current 也要求运行已停止。异常退出后操作系统释放进程锁,已有题目检查点继续生效。

其他用法:

.\start-class.cmd --minutes 120 --profile formal_live
.\start-class.cmd --minutes 5 --dry-run
.\start-class.cmd --config '<私有配置路径>' --check

计时、记录和退出

  • 先加载 OCR,再开始 120 分钟计时。初始化失败会结束并记录原因。
  • 到期后停止接收新题,允许已开始的题目在其原有预算内收尾;额外等待上限为活动页面最大单题预算加 5 秒。主动停止会取消当前任务。
  • 每道题仍受自身时间预算限制。建议一分钟题目保留总预算 50 秒、上下文 5 秒、模型 35 秒。Flash 使用可配置的非思考模式,初始 3 次、最多 5 次采样;平票或无有效多数票会留证据并等待下一题。
  • Windows 运行期间请求系统与显示器保持唤醒,退出时恢复之前的请求,不修改全局电源设置。手动锁屏、合盖或切换用户仍可能中断可见桌面操作。
  • 私有 <storage.data_dir>/sessions/latest.json 每秒更新;各会话子目录保留 report.json 和逐行 events.jsonl。题图与操作证据沿用私有 runs 目录。应用日志每个日期文件最多 5 MiB,保留 3 个轮转备份。
  • duration_reached 表示计时结束;manual_required 表示需要接管;error / startup_error / shutdown_timeout 表示运行异常。assessment: no_verified_questions 表示没有验证成功的题目,不能把单纯等到结束当成能力测试通过。review_required 表示有拒答、失败、过期不可答、运行错误或监测暂停需要检查,即使其他题目已成功也不会掩盖这些问题。正常识别下课、答完后等待老师换题不计为监测故障;关闭时排队事件中的错误也会计入最终评估。

关闭终端会影响前台进程。需要由助手后台启动时,使用隐藏进程并通过 --status / --stop 控制;不要让新的终端遮挡课堂窗口。首次启动依赖缺失时,按 README 安装项目到 .venv,启动器不会临时联网升级环境。

验证边界

自动化测试使用加速到 7200 秒的课程时间轴,真实调用调度器、图像识别、按钮选中、模拟提交、成功反馈检查和重新等待流程。覆盖长时间无题、连续不同布局、短暂失焦与恢复、模型无答案及结束时的清理。它验证状态机和计时,不等于已经在真实 Edge/课堂服务器上连续运行了两小时。

正式测试需要记录至少两道新题的“选择 → 提交 → 平台完成反馈 → 下一题”,并独立核对课程标准答案。历史图片中的蓝色选项只是当时的选择,不是答案正确性的依据。完成后的报告用于统计成功、拒答、失败、重复输入及暂停情况;模型得票率不能当作正确率。