Problemas com Repetições Indefinidas Após Fine Tuning do Modelo de Linguagem

#2
by joaopaulopresa - opened

Problemas com Repetições Indefinidas após Fine Tuning do Modelo de Linguagem

Olá,

Recentemente, venho enfrentando um desafio com meu modelo de linguagem que persiste em repetir respostas indefinidamente após o processo de fine tuning. Ao analisar a configuração do modelo, notei que o pad_token_id está definido como 0, que é o mesmo valor atribuído ao <unk>. Não tenho certeza se isso está afetando o desempenho.

Além disso, tentei incluir o eos_token (</s>) no prompt de treino, mas parece que o modelo não reconhece esse token como um sinal para cessar a geração de resposta. Verifiquei também o arquivo special_tokens_map.json e observei que não contém o pad_token. Igualmente, no tokenizer_config.json, o parâmetro legacy não está presente, não da pra saber se usar como false ou true.

Gostaria de solicitar conselhos sobre como realizar o fine tuning de forma eficaz, especialmente no que diz respeito ao uso correto do pad_token. Também agradeceria orientações sobre como carregar o tokenizer apropriadamente para treino e elaborar prompts eficientes para evitar essas repetições indesejadas nas respostas.

Qualquer ajuda para resolver este problema seria extremamente valiosa. Obrigado.

Olá João,

Isso parece ser um bug to AutoTokenizer. Por favor tente usar use_fast=False?

tokenizer_sabia = AutoTokenizer.from_pretrained('maritaca-ai/sabia-7b', use_fast=False)
tokenizer_sabia.tokenize('hello</s>')
>>> ['▁hello', '</s>']
Maritaca AI org

Parece que vai ser consertado nessa PR: https://github.com/huggingface/transformers/pull/26678
Enquanto isso, tem que usar o use_fast=False

Maritaca AI org

Quanto ao pad_token para finetuning, basta atribuir tokenizer.pad_token_id=0 e deveria funcionar normalmente.

Maritaca AI org

Fechando esta discussão, mas sinta-se a vontade para reabri-la caso tenha mais perguntas.

rodrigo-nogueira changed discussion status to closed

Sign up or log in to comment