InternLM / xtuner

An efficient, flexible and full-featured toolkit for fine-tuning LLM (InternLM2, Llama3, Phi3, Qwen, Mistral, ...)
https://xtuner.readthedocs.io/zh-cn/latest/
Apache License 2.0
3.71k stars 302 forks source link

如何实现多张卡共同存放单个模型 #898

Open RyanOvO opened 4 weeks ago

RyanOvO commented 4 weeks ago

背景: 模型internlm2.5-7b-chat 单机4卡A10,单卡24GB

问题:

  1. xtuner能实现模型切分么?即多个卡共用一个模型,而不是在每个卡上都单独加上一个模型再去微调训练,这样的话很容易会显存不足;能做到说模型切分到了某张卡运行,其余的卡加载数据训练吗?

  2. 按官方要求的多轮对话格式训练时,其中的单个message json就达到了几百个,且暂时不拆分数据的情况下,在显存充足的情况下,xtuner能支持到多长(100K/500K)的上下文训练?多轮对话中的单个message json大小长度,有限制么? image

  3. 如下图所示,整个微调数组中,只有一个messages 能训练吗?尽管messages内有多个键值对数据。 image

c-x-l-w commented 4 weeks ago

同问