Skip to content

Latest commit

 

History

History
99 lines (73 loc) · 4.45 KB

README.md

File metadata and controls

99 lines (73 loc) · 4.45 KB

FitnessLM 🏋️🏋️‍♀️

项目简介📖

FitnessLM🏃‍♀️🏃 是一个多模态语言模型项目,致力于打造一个支持健身训练和健康管理的对话式人工智能助手。该模型的核心功能包括:

  1. 器械识别与指导:识别健身器械,演示正确的使用方法,并介绍功能。
  2. 每周训练计划生成:根据用户的目标制定个性化的训练计划,包括推荐的动作、组数和所需器械。
  3. 营养管理计划制定:根据用户的健身与健康目标,提供定制化的营养计划。

目前项目处于前期准备阶段,团队正在收集并完善数据集,以确保 FitnessLM 能提供准确、实用的健身建议。

项目框架🖼️

1891731247062_ pic

FitnessLM 的技术框架分为四个核心模块:数据收集与预处理多模态模型微调模型部署应用层交互。以下是具体的技术框架解析:

1. 数据收集与预处理

  • 数据来源:数据集来源于多样化的健身场景,包括:

    • 健身视频:用于训练模型的视觉理解能力。
    • 运动健身文本:提供健身动作、训练计划相关文档。
    • 器械图片:帮助模型识别健身器械及其使用方法。
    • 饮食营养文本:补充健康饮食和营养知识。
  • 数据清洗与集成

    • 数据由书生·浦语MinerU工具提供支持,确保数据质量和完整性。
    • 数据被分为两大知识库:
      1. 动作GIF库:用于存储健身动作的动态图示。
      2. 综合知识库:整合了健身、营养和训练相关知识。

2. 多模态模型微调

  • 核心模型

    • 使用 InternVL2 作为主模型框架,支持多模态输入(文本+图像)。
    • 通过 Xtuner 框架完成训练参数的适配和优化。
  • 模型扩展

    • 引入适配器(Adapter)技术,提升模型在小规模数据上的训练效果和性能。
    • 支持对不同类型的数据(如视频、文本)的联合学习。

3. 模型部署

  • 关键技术栈

    • KV 和 W4 压缩技术:在模型部署时,通过精简参数减少推理时间,提升响应效率。
    • LMDeploy:用于优化模型的在线推理性能。
  • 服务接口

    • 利用 FastAPI 提供高效的后端接口服务,支持实时交互。

4. 应用层交互

  • 交互代理(Agent)

    • 基于以下技术提供多功能支持:
      1. 图像检索:提供标准健身动作的实时演示。
      2. 检索增强生成(RAG):通过 LlamaIndex 进行专业健身建议的生成。
  • 最终应用

    • 通过 Lagant 增强用户交互体验。
    • 使用Streamlit,便于展示与扩展。

项目成员👩‍⚕️🙎

项目成员 所属机构 职责
臭布丁 同济大学 模型微调
CCD 墨尔本大学 制作slides、构建latent
SISYPHE 爱丁堡大学 模型微调
Samantha 上海外国语大学 模型RAG
LaugHan 大连理工大学 模型RAG

当前进展 🚀

11月10日:

  1. 收集数据集
  • “营养管理”功能版块的数据集
  • “健身计划制定”相关的数据集
  • 器械使用教程
  • 健身动作 gif 收集
  1. 框架图的制定

11月18日:

  1. 构建了健身器械-文本对数据集
  2. 使用上述数据集微调FitnessLM,模型已具备基础的健身器械识别能力
  3. 采用VectorStoreIndex进行向量RAG,使得模型在饮食计划生成时有较好的效果。
  4. 为gif图像添加了caption。
  5. slides的制作

目前团队专注于:

  1. 进一步微调 FitnessLM 的模型参数,以确保模型能够在复杂的健身房环境中有效识别健身器械。
  2. 采取不同的检索器探求最优的RAG效果,使得模型输出实用科学的健身、饮食计划
  3. 使用lagent使得模型能够有效检索出gif图片提供健身动作演示
  4. 搭建用户友好的应用接口,支持未来的场景扩展。

未来计划 🌟

  • 构建优质的多模态评测集对模型进行评测。
  • 增强对实时用户数据(如体能状态、目标偏好)的个性化推荐。
  • 开发完整的端到端解决方案,支持健身房和居家健身场景。