变色龙chameleon模型适配昇腾做训练开发

简介: 变色龙chameleon模型的官方仓库(https://github.com/facebookresearch/chameleon)并未开源训练的源代码,需要做训练代码的开发。

变色龙chameleon模型的官方仓库(https://github.com/facebookresearch/chameleon)并未开源训练的源代码,需要做训练代码的开发。

开发方向

昇腾modellink(已改名MindSpeed-LLM)的代码仓(https://Ascend/MindSpeed-LLM)具备llm的训练能力,但不支持多模态,不适配变色龙模型。根据变色龙的论文,变色龙模型的结构与llama2的结构类似,但在tokenizer方面有所不同,变色龙的tokenizer是支持多模态的,而llama2的tokenizer不支持。于是选择在tokenizer层面适配变色龙模型。

开发过程

  1. 变色龙、modellink仓库克隆,安装依赖,环境搭建。
  2. 跑通llama2训练验证开发环境无异常。
  3. 阅读源码
  1. 阅读变色龙源码,定位tokenizer代码以及调用方式,处理逻辑。
  2. 阅读modellink源码。确定训练执行的流程,以及tokenizer的调用时机与调用点。确定数据预处理流程,以及数据输入格式与处理方法。


  1. 迁移变色龙的tokenizer部分,为适配开发做准备。
  2. 修改脚本调用参数,修改代码使得modellink在对应条件下引入变色龙的tokenizer。
  3. 观察分析输入输出
  1. 断点调试变色龙、modellink的tokenizer,观察tokenizer的输出,以及调用点引用的对象结构。
  2. 观察变色龙、modellink的tokenizer的输入数据,比较异同,分析需要兼容的部分。
  3. 观察训练数据的处理输出与对应tokenizer的输入,分析设计数据处理方案。


  1. 对齐输入输出
  1. 构造1000+条带图片和文本的训练数据,数据格式选用modellink支持的json格式,用作调试。
  2. 根据源码分析,modellink采用handler处理输入的训练数据。自定义新的ChameleonPretrainHandler类继承基类,重写_filter()方法,对齐输入数据与tokenizer的调用点。
  3. 根据数据输入,调整tokenizer对象的调用类结构。


  1. 训练部分引用变色龙的tokenizer,替换原有tokenizer。
  2. 新建工厂函数,调整训练需要的tokenzier格式,传入对应的vocab_size和eod_id参数。
  3. 调试训练,根据训练情况以及具体报错修改代码直至跑通。
相关文章
|
应用服务中间件 nginx
树莓派安装Nginx服务结合内网穿透实现无公网IP远程访问
树莓派安装Nginx服务结合内网穿透实现无公网IP远程访问
372 4
|
7月前
|
数据采集 机器学习/深度学习 编解码
小红书 hi lab开源最强多模态大模型dots.vlm1,性能对标闭源 Gemini 2.5 Pro 和 Seed-VL1.5
小红书 hi lab开源最强多模态大模型dots.vlm1,性能对标闭源 Gemini 2.5 Pro 和 Seed-VL1.5
793 0
小红书 hi lab开源最强多模态大模型dots.vlm1,性能对标闭源 Gemini 2.5 Pro 和 Seed-VL1.5
|
5月前
|
人工智能 自然语言处理 安全
AutoGen框架入门:5个核心概念搭建智能体协作系统
AutoGen是微软开源的多智能体AI框架,支持多个AI智能体与人类协作,通过对话完成复杂任务。各智能体具备不同角色与能力,可调用工具、执行代码,并在群聊中辩论、推理、纠错,实现无需人工干预的自动化协作,适用于复杂问题求解与团队化AI应用开发。
692 13
AutoGen框架入门:5个核心概念搭建智能体协作系统
|
机器学习/深度学习 算法 PyTorch
DeepSeek 背后的技术:GRPO,基于群组采样的高效大语言模型强化学习训练方法详解
强化学习(RL)是提升大型语言模型(LLM)推理能力的重要手段,尤其在复杂推理任务中表现突出。DeepSeek团队通过群组相对策略优化(GRPO)方法,在DeepSeek-Math和DeepSeek-R1模型中取得了突破性成果,显著增强了数学推理和问题解决能力。GRPO无需价值网络,采用群组采样和相对优势估计,有效解决了传统RL应用于语言模型时的挑战,提升了训练效率和稳定性。实际应用中,DeepSeek-Math和DeepSeek-R1分别在数学推理和复杂推理任务中展现了卓越性能。未来研究将聚焦于改进优势估计、自适应超参数调整及理论分析,进一步拓展语言模型的能力边界。
2401 8
DeepSeek 背后的技术:GRPO,基于群组采样的高效大语言模型强化学习训练方法详解
|
机器学习/深度学习 自然语言处理 PyTorch
《移动端NLP模型部署指南:突破性能与资源瓶颈》
在数字化时代,自然语言处理(NLP)技术已广泛应用于智能语音助手和文本翻译软件。随着移动设备普及,移动端高效运行NLP模型的需求增长。然而,移动端资源受限,如何实现高效部署成为热点问题。解决方案包括模型压缩(如剪枝、量化、知识蒸馏)、选择适配的推理框架(如TensorFlow Lite、PyTorch Mobile、MNN、NCNN),以及利用硬件加速(如GPU、NPU)。通过结构优化和参数调整,结合这些技术手段,未来移动端将提供更流畅、智能的NLP服务,提升人机交互体验。
596 18
|
SQL 关系型数据库 MySQL
|
监控 网络协议 调度
Netty Review - 深入探讨Netty的心跳检测机制:原理、实战、IdleStateHandler源码分析
Netty Review - 深入探讨Netty的心跳检测机制:原理、实战、IdleStateHandler源码分析
888 0
|
机器学习/深度学习 存储 算法
【算法分析与设计】贪心算法(上)
【算法分析与设计】贪心算法(上)
|
机器学习/深度学习 人工智能 物联网
智慧城市科普:最近很火的概念“智慧城市 ”到底是啥?
主要介绍智慧城市的概念、应用技术、未来发展的意义
|
JSON 数据格式
ECharts加载json数据解决方案
ECharts加载json数据解决方案
351 0

热门文章

最新文章