LLM-large model training-common error: RuntimeError: esperado tipo escalar Half mas encontrado Float

RuntimeError: esperado tipo escalar Half, mas encontrado Float

causa um

A versão do Peft não é compatível, tente usar uma versão diferente do Peft

Motivo dois

1. Descrição do problema

  Ao usar a GPU  V100(32GB) para realizar o ajuste fino de lora no modelo ChatGLM, a mensagem de erro RuntimeError: esperado scalar type Half, mas encontrado Float apareceu durante o treinamento e a previsão, respectivamente, conforme mostrado na figura a seguir:

insira a descrição da imagem aqui

  Após a prática pessoal, finalmente encontrei uma solução para o problema e finalmente resumi o processo de operação passo a passo da seguinte forma. Espero que possa ajudar os alunos que encontrarem o mesmo bug.
insira a descrição da imagem aqui

2. Soluções de treinamento

  Depois de depurar e analisar o código-fonte, descobriu-se que o problema vem principalmente da biblioteca bitsandbytes. A solução mais simples é modificar load_in_8bit=False. O trecho de código modificado é o seguinte:

model = AutoModel.from_pretrained(
        "/home//model/ChatGLM/chatglm-6b", load_in_8bit=False, trust_remote_code=True, device_map="auto"
    )

Supongo que te gusta

Origin blog.csdn.net/u013250861/article/details/131374436
Recomendado
Clasificación