FitnessLM🏃♀️🏃 是一个多模态语言模型项目,致力于打造一个支持健身训练和健康管理的对话式人工智能助手。该模型的核心功能包括:
- 器械识别与指导:识别健身器械,演示正确的使用方法,并介绍功能。
- 每周训练计划生成:根据用户的目标制定个性化的训练计划,包括推荐的动作、组数和所需器械。
- 营养管理计划制定:根据用户的健身与健康目标,提供定制化的营养计划。
目前项目处于前期准备阶段,团队正在收集并完善数据集,以确保 FitnessLM 能提供准确、实用的健身建议。
FitnessLM 的技术框架分为四个核心模块:数据收集与预处理、多模态模型微调、模型部署 和 应用层交互。以下是具体的技术框架解析:
-
数据来源:数据集来源于多样化的健身场景,包括:
- 健身视频:用于训练模型的视觉理解能力。
- 运动健身文本:提供健身动作、训练计划相关文档。
- 器械图片:帮助模型识别健身器械及其使用方法。
- 饮食营养文本:补充健康饮食和营养知识。
-
数据清洗与集成:
- 数据由书生·浦语的MinerU工具提供支持,确保数据质量和完整性。
- 数据被分为两大知识库:
- 动作GIF库:用于存储健身动作的动态图示。
- 综合知识库:整合了健身、营养和训练相关知识。
-
核心模型:
- 使用 InternVL2 作为主模型框架,支持多模态输入(文本+图像)。
- 通过 Xtuner 框架完成训练参数的适配和优化。
-
模型扩展:
- 引入适配器(Adapter)技术,提升模型在小规模数据上的训练效果和性能。
- 支持对不同类型的数据(如视频、文本)的联合学习。
-
关键技术栈:
- KV 和 W4 压缩技术:在模型部署时,通过精简参数减少推理时间,提升响应效率。
- LMDeploy:用于优化模型的在线推理性能。
-
服务接口:
- 利用 FastAPI 提供高效的后端接口服务,支持实时交互。
-
交互代理(Agent):
- 基于以下技术提供多功能支持:
- 图像检索:提供标准健身动作的实时演示。
- 检索增强生成(RAG):通过 LlamaIndex 进行专业健身建议的生成。
- 基于以下技术提供多功能支持:
-
最终应用:
- 通过 Lagant 增强用户交互体验。
- 使用Streamlit,便于展示与扩展。
项目成员 | 所属机构 | 职责 |
---|---|---|
臭布丁 | 同济大学 | 模型微调 |
CCD | 墨尔本大学 | 制作slides、构建latent |
SISYPHE | 爱丁堡大学 | 模型微调 |
Samantha | 上海外国语大学 | 模型RAG |
LaugHan | 大连理工大学 | 模型RAG |
11月10日:
- 收集数据集
- “营养管理”功能版块的数据集
- “健身计划制定”相关的数据集
- 器械使用教程
- 健身动作 gif 收集
- 框架图的制定
11月18日:
- 构建了健身器械-文本对数据集
- 使用上述数据集微调FitnessLM,模型已具备基础的健身器械识别能力
- 采用VectorStoreIndex进行向量RAG,使得模型在饮食计划生成时有较好的效果。
- 为gif图像添加了caption。
- slides的制作
目前团队专注于:
- 进一步微调 FitnessLM 的模型参数,以确保模型能够在复杂的健身房环境中有效识别健身器械。
- 采取不同的检索器探求最优的RAG效果,使得模型输出实用科学的健身、饮食计划
- 使用lagent使得模型能够有效检索出gif图片提供健身动作演示
- 搭建用户友好的应用接口,支持未来的场景扩展。
- 构建优质的多模态评测集对模型进行评测。
- 增强对实时用户数据(如体能状态、目标偏好)的个性化推荐。
- 开发完整的端到端解决方案,支持健身房和居家健身场景。