Files
akmon/plan.md
2026-01-20 08:04:15 +08:00

123 lines
4.7 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 运动训练监测与AI评估平台技术方案
## 一、平台目标
基于 Supabase后端数据服务、RAGFlowAI检索增强生成、多种数据采集手段蓝牙手环、指环、视频监控等构建一个集运动训练监测、AI评估、训练计划统筹于一体的智能平台。
## 二、核心功能模块
1. **用户与设备管理**
- 用户注册、登录、权限管理Supabase Auth
- 设备绑定与管理(蓝牙手环、指环、摄像头等)。
2. **数据采集与同步**
- 蓝牙设备数据采集(心率、步数、睡眠、血氧等)。
- 视频监控采集(动作捕捉、姿态分析)。
- 数据实时上传至 Supabase 数据库。
3. **AI 评估与分析**
- 基于 RAGFlow 的训练数据分析与个性化建议生成。
- 运动表现评估(如动作标准性、训练负荷、恢复状态等)。
- 训练风险预警(异常检测、疲劳分析)。
4. **训练计划统筹**
- 训练计划智能生成与调整(结合 AI 分析结果)。
- 计划执行跟踪与反馈。
- 训练日志与进度可视化。
5. **多端支持**
- 移动端App/小程序):数据采集、训练反馈、计划查看。
- Web 端数据分析、计划管理、AI 评估报告。
## 三、技术选型建议
- **后端服务**SupabasePostgres 数据库、Auth、Storage、Realtime
- **AI 能力**RAGFlow检索增强生成支持自定义知识库与模型微调
- **数据采集**
- 蓝牙协议(如 BLE对接主流手环/指环。
- 视频流采集与边缘推理(如 MediaPipe、OpenPose
- **前端框架**UniApp多端适配、Vue3。
- **数据可视化**ECharts、D3.js。
- **消息推送/实时**Supabase Realtime。
## 四、关键技术难点与建议
1. **多源数据融合**
- 统一数据格式,设计灵活的表结构(如 user、device、training_record、video_analysis 等)。
- 设备数据与用户、训练计划关联。
2. **AI 评估与个性化**
- 结合 RAGFlow训练自有知识库支持运动健康问答、训练建议自动生成。
- 视频分析可用边缘推理+云端评估结合。
3. **隐私与安全**
- 用户数据加密存储,敏感信息脱敏。
- 设备接入与数据传输安全。
4. **可扩展性**
- 设备类型、AI模型、训练计划模板可灵活扩展。
## 五、后续迭代方向
- 增加更多设备类型支持。
- 引入更多 AI 能力(如动作评分、健康风险预测)。
- 支持团队训练、社交互动。
- 开放 API支持第三方集成。
---
如需详细表结构、API 设计、AI 流程等可进一步细化。
/*
i18n国际化系统说明
1. 核心设计:
- 通过ak_languages表定义支持的语言
- 主表存储默认语言(通常为中文)数据
- 翻译表以主表ID为外键存储其他语言的翻译
2. 翻译表结构:
- 基础翻译表ak_translations包含通用字段
- 特定内容的翻译表继承基础表并添加特定字段
- 组合索引确保每个记录的每种语言只有一个翻译
3. 用户语言偏好:
- 用户表增加preferred_language字段存储语言偏好
- get_user_language()函数获取当前用户的语言设置
4. 获取翻译的方式:
- 直接SQL查询翻译表
- 使用辅助函数如get_translation(), get_region_name()
- 通过多语言视图(如vw_regions_i18n)
5. 前端界面文本翻译:
- ak_app_translations表存储UI文本翻译
- get_ui_text()函数根据key获取对应语言的文本
*/
/*
多语言报告系统设计说明:
1. 报告翻译基本原理:
- 原始报告存储在ak_sport_reports表中带有source_language_id标识源语言
- 各语言翻译存储在ak_sport_report_translations表中
- 通过report_id和language_id的组合唯一索引确保每种语言只有一个翻译版本
2. AI翻译集成
- ak_translation_jobs表跟踪所有翻译请求及其状态
- 支持多种内容类型的翻译通过source_type区分
- 记录翻译处理时间和使用的AI模型
3. 翻译状态追踪:
- pending: 等待翻译
- processing: 正在翻译
- completed: 翻译完成
- failed: 翻译失败
4. 获取报告内容:
- 通过get_report_translation函数获取指定语言的报告
- 如果没有对应语言的翻译,返回原始内容
- 如果用户未指定语言,使用其语言偏好
5. 发起翻译请求:
- 通过request_report_translation函数请求AI翻译
- 自动创建翻译任务和初始翻译记录
- 避免重复翻译已翻译内容
6. 前端集成:
- 使用vw_sport_reports_i18n视图简化前端查询
- 可显示翻译状态和是否为机器翻译
*/