Skip to content

Fjq/demo inference web - #6

Open
1605009600 wants to merge 3 commits into
mainfrom
fjq/demo-inference-web
Open

1605009600 wants to merge 3 commits into
mainfrom
fjq/demo-inference-web

Conversation

@1605009600

@1605009600 1605009600 commented Sep 29, 2026 •

Copy link
Copy Markdown
Collaborator

变更说明

  • 任务编号:Demo-01
  • 需求 ID / Gate:Gate 1 / 前端交互规范 05-frontend
  • 变更目的:按 docs/05-frontend/01-interaction-spec.md 改造 demo 前后端,
    增加复核流程(确认/驳回/无法判断)、状态机与轮询规范。

影响范围

  • 产品/业务流程(新增复核闭环)
  • 数据库/迁移(demo 内存存储,无迁移)
  • API 契约(仅 demo 内部接口 /api/v1/review,未改 contracts/)
  • AI 模型/数据
  • 规则
  • 权限/隐私/审计(demo 层面:不上传敏感数据、不写 localStorage)
  • 部署/监控
  • 仅文档

验证

  • 测试命令:python demo_web/backend/main.py 后上传图片走完整流程
  • 测试结果:uncertain 缺 reason_code 返回 422;确认复核 200→completed;
    重复复核 409;needs_retake 复核 409;模糊图正确拦截
  • 手工验证:http://localhost:8000 上传 picture/ 下 5 张测试图逐场景验证

风险与回滚

  • 已知风险:demo 为内存存储,重启丢数据;OCR/实体标准化仍为模拟
  • 回滚提交/版本:revert 本次 commit 即可,无数据迁移
  • 数据迁移回滚或补偿:无

审查清单

  • 没有提交 .obsidian/、.env、凭据或未脱敏数据
  • 已更新相关设计/API/数据库/运行文档(遵循 05-frontend 规范)
  • 已补充或更新测试(接口级验证已完成)
  • 已记录模型/规则/迁移版本(model_versions/rule_version 随结果返回)
  • 至少一名其他协作者审查 ← 需找协作者审批

@SayQuan1 SayQuan1 left a comment

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

docs/15-business-vs-inference-tasks.md这个文档就不提交了,把这个去掉吧

- 前后端分离: FastAPI 后端 + 原生前端页面
- YOLOv5s 真实推理, 轮廓分析回退用于合成图片
- 质量检测基于图像统计(亮度/清晰度/对比度/反光率)
- 实体识别、相邻关系、规则引擎均依赖实际检测结果
- 支持质量拦截、规则命中、无风险三种场景
- 状态机: queued/quality_checking/processing/needs_review/completed/failed
- 复核接口: 确认/驳回/无法判断分开操作, 无法判断必须reason_code
- 轮询: 2s->5s->10s梯度, 5分钟停止, 页面隐藏暂停, 失败指数退避
- 幂等键上传, 15MiB/MIME预校验, 环境横幅由后端下发
- 复核界面: 检测框按渲染尺寸换算, 零候选也要求人工完成
- 替换损坏的非标准权重为官方yolov5s.pt
- 加载器改用官方attempt_load,坐标改用scale_boxes映射
- 删除颜色回退,检测结果100%来自YOLO真实推理
- 实体按YOLO实际类别生成,非化学品不参与规则
- 检测框显示真实类别(中英文)与置信度
@1605009600
1605009600 force-pushed the fjq/demo-inference-web branch from 0a8689a to 711dc00 Compare October 2, 2026 16:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants