面向 3–16 岁儿童青少年 的 AI 体态管理与运动康复平台,围绕含胸驼背、头前伸、高低肩、骨盆姿态、膝内扣、足弓与运动协调等常见问题,提供 AI 筛查、结构化报告、训练计划、打卡复测与机构 SaaS 运营闭环。
flowchart TB
subgraph CLIENT["客户端层"]
MP["微信小程序 / H5 家长端"]
TR["儿童训练端"]
AD["Web 管理后台"]
end
subgraph GATEWAY["网关层"]
GW["鉴权 JWT · 限流 · 审计 · requestId"]
end
subgraph BIZ["业务服务层"]
AUTH["Auth / User"]
CHILD["Child Profile"]
VIDEO["Video / Analysis"]
TRAIN["Training"]
COMM["Commerce"]
OPS["Admin / Ops"]
end
subgraph AI["AI 服务层(异步)"]
VW["Video Worker"]
POSE["Pose 服务"]
SCORE["评分服务"]
AGENT["Agent 解释"]
end
subgraph DATA["数据设施层"]
MYSQL[("MySQL 8.x")]
REDIS[("Redis")]
OSS[("对象存储 OSS")]
LOG["日志 / 监控"]
end
CLIENT --> GATEWAY --> BIZ
BIZ --> AI
BIZ --> DATA
AI --> DATA
① 业务与 AI 解耦
长任务异步化,HTTP 不阻塞,前端轮询/WebSocket 查状态。
② 全链路可追溯
保留关键点、指标、模型版本、Agent 提示词版本。
③ 多租户隔离
机构数据按 tenant_id 隔离,教练仅访问授权儿童。
④ 接口契约优先
以 openapi.yaml 为单一事实来源,向后兼容扩展。
⑤ 幂等与审计
写接口 Idempotency-Key;复核/退款/权限变更全量审计。
| 模块 | 职责 | 核心数据 |
|---|---|---|
| Auth/User | 手机/微信登录、角色、租户 | users, tenants |
| Child Profile | 儿童档案、成长指标、授权 | children, child_measurements |
| Video/Analysis | 直传签名、任务、报告 | videos, analysis_tasks, reports |
| Training | 动作库、计划、打卡、复测 | exercises, training_plans |
| Commerce | 套餐、订单、会员权益 | products, orders |
| Admin/Ops | 线索、看板、审计 | operation_leads, audit_logs |
| 组件 | 技术 |
|---|---|
| Video Worker | FFmpeg + 队列 |
| Pose 服务 | MediaPipe Pose(33 关键点) |
| 评分服务 | 规则引擎 + 加权算法 |
| Agent 服务 | LLM + 模板约束 |
| Agent | 输出 |
|---|---|
| Assessment | 风险摘要、复核建议 |
| Coach | 周期计划、每日动作 |
| Parent | 家长可读报告文案 |
| Operation | 线索分层、触达话术 |
flowchart LR
A["授权登录"] --> B["创建档案"]
B --> C["拍摄上传"]
C --> D["创建分析任务"]
D --> E["AI 异步处理"]
E --> F["生成报告"]
F --> G["查看建议"]
G --> H["训练打卡"]
H --> I["复测对比"]
sequenceDiagram
participant P as 家长端
participant API as 后端 API
participant Q as 消息队列
participant W as AI Worker
participant A as Agent
P->>API: POST /api/analysis/tasks
API->>Q: 入队 QUEUED
API-->>P: 返回 taskId
W->>Q: 拉取任务
W->>W: 抽帧 + Pose + 指标计算
alt 置信度不足
W->>API: FAILED + 建议重拍
else 置信度合格
W->>A: 生成报告文案
A->>API: 写入 report
API-->>P: 推送/轮询 SUCCEEDED
end
| 层级 | 推荐方案 | 说明 |
|---|---|---|
| 后端 API | Python FastAPI / Node.js NestJS | 与 OpenAPI 契约对齐 |
| 任务队列 | Redis + Celery / BullMQ | 分析任务削峰、重试 |
| 数据库 | MySQL 8.x | 已有完整 schema |
| 对象存储 | 阿里云 OSS / MinIO | 视频直传、生命周期归档 |
| AI 推理 | MediaPipe Pose + Python Worker | 一期快速落地 |
| Agent | 大模型 API + Prompt 模板 | 输出受控、版本化 |
| 家长端 | 微信小程序(Taro/uni-app) | 覆盖微信生态 |
| 管理后台 | Vue 3 + Element Plus | 高密度信息布局 |
| 环境 | 用途 | 要求 |
|---|---|---|
| dev | 日常开发联调 | 模拟支付、测试 OSS |
| test | 测试验收回归 | 数据可重置 |
| staging | 预发布/客户演示 | 与生产同拓扑 |
| prod | 正式服务 | 备份、监控、告警 |
范围、架构、数据、合规边界对齐。交付:PRD 签字、架构文档、接口/DB 契约、Git 工程初始化。
家长端 + 视频分析 + 报告 + 基础后台。交付:可演示版本、测试报告、staging 部署。
接入 1–3 家机构,跑通筛查→课程闭环。交付:试点数据、运营 SOP、教练培训。
支付、权限、模型评估、生产运维。交付:商业版 V1.0、监控告警、备份演练。
| 周次 | 模块 | 交付标准 | 优先级 |
|---|---|---|---|
| W1 | 工程初始化 + Auth + 儿童档案 | 登录、建档 CRUD、DB 迁移 | Must |
| W2 | 视频上传链路 | OSS 直传、视频登记、拍摄引导 UI | Must |
| W3 | AI Worker 骨架 | 抽帧 + MediaPipe + 基础指标 | Must |
| W4 | 报告生成 + Agent | 结构化 report + 家长文案 | Must |
| W5 | 家长端小程序 | 建档→上传→看报告完整流程 | Must |
| W6 | 基础管理后台 + 联调 | 报告列表、任务监控、冒烟测试 | Should |
| 角色 | 人数 | 核心职责 |
|---|---|---|
| 产品负责人 | 1 | 需求拆解、验收标准、试点反馈闭环 |
| 前端工程师 | 1 | 小程序/H5、儿童训练页、Web 后台 |
| 后端工程师 | 1 | API、任务队列、权限、数据模型 |
| 算法工程师 | 1 | 关键点、评分规则、质量检测、Agent 约束 |
| 测试/交付 | 0.5–1 | 场景测试、部署验证、SOP 落地 |
| 等级 | 类型 | 策略 |
|---|---|---|
| L1 敏感 | 手机号、姓名、视频 | 加密/哈希、脱敏 |
| L2 业务 | 报告、训练、订单 | MySQL + 租户隔离 |
| L3 衍生 | 关键点、指标 JSON | 绑定任务、保留版本 |
| L4 运营 | 线索、看板聚合 | 脱敏聚合 |
| 风险 | 影响 | 应对策略 |
|---|---|---|
| AI 置信度不足 | 报告不可用、信任低 | 拍摄质量前置检测 + 降级文案 |
| 医疗合规边界模糊 | 法律风险 | PRD 约束 + Agent 过滤 + 人工复核 |
| MVP 范围膨胀 | 延期交付 | 严格 MoSCoW,支付/运营后置 |
| 机构数据隔离 | 合作受阻 | 一期引入 tenant_id |
| 儿童个体差异大 | 误报/漏报 | 保留教练复核,不做全自动闭环 |
happy-up/ ├── contracts/ openapi + database.sql ├── apps/api/ FastAPI Starter ├── doc/ 商业交付文档包 ├── docker-compose.yml └── Makefile
make up 启动 MySQL/Redis · make api-dev 启动 API · Swagger /docs
| 序号 | 任务 | 交付标准 |
|---|---|---|
| 1 | Alembic 迁移 | 对接 database.sql 核心表 |
| 2 | Auth JWT | 登录签发 + 鉴权中间件 |
| 3 | 儿童档案 CRUD | 落库 + 单元测试 |
| 4 | 分析任务队列 | Redis 入队 + Worker 骨架 |