RuntimeError: probability tensor contains either `inf`, `nan` or element < 0
#5
by
YarKo69
- opened
После загрузки модели, при любом запросе вылезает ошибка (см. код ниже). Подскажите пожалуйста с чем это может быть связано и как это исправить. Остальные модели saiga работают отлично при тех же запросах.
Код запуска модели на Kaggle
RuntimeError Traceback (most recent call last)
Cell In[15], line 1
----> 1 get_message(['Привет, сколько весит человек в среднем?'])
File <timed exec>:10, in get_message(inputs)
Cell In[7], line 54, in generate(model, tokenizer, prompt, generation_config)
51 #print(data)
52 data = {k: v.to(device) for k, v in data.items()}
---> 54 output_ids = model.generate(
55 **data,
56 generation_config = generation_config
57 # remove_invalid_values = True
58 )[0]
59 output_ids = output_ids[len(data["input_ids"][0]):]
60 output = tokenizer.decode(output_ids, skip_special_tokens=True)
File /opt/conda/lib/python3.10/site-packages/peft/peft_model.py:975, in PeftModelForCausalLM.generate(self, **kwargs)
973 self.base_model.generation_config = self.generation_config
974 try:
--> 975 outputs = self.base_model.generate(**kwargs)
976 except:
977 self.base_model.prepare_inputs_for_generation = self.base_model_prepare_inputs_for_generation
File /opt/conda/lib/python3.10/site-packages/torch/utils/_contextlib.py:115, in context_decorator.<locals>.decorate_context(*args, **kwargs)
112 @functools.wraps(func)
113 def decorate_context(*args, **kwargs):
114 with ctx_factory():
--> 115 return func(*args, **kwargs)
File /opt/conda/lib/python3.10/site-packages/transformers/generation/utils.py:1719, in GenerationMixin.generate(self, inputs, generation_config, logits_processor, stopping_criteria, prefix_allowed_tokens_fn, synced_gpus, assistant_model, streamer, negative_prompt_ids, negative_prompt_attention_mask, **kwargs)
1711 input_ids, model_kwargs = self._expand_inputs_for_generation(
1712 input_ids=input_ids,
1713 expand_size=generation_config.num_return_sequences,
1714 is_encoder_decoder=self.config.is_encoder_decoder,
1715 **model_kwargs,
1716 )
1718 # 13. run sample
-> 1719 return self.sample(
1720 input_ids,
1721 logits_processor=logits_processor,
1722 logits_warper=logits_warper,
1723 stopping_criteria=stopping_criteria,
1724 pad_token_id=generation_config.pad_token_id,
1725 eos_token_id=generation_config.eos_token_id,
1726 output_scores=generation_config.output_scores,
1727 return_dict_in_generate=generation_config.return_dict_in_generate,
1728 synced_gpus=synced_gpus,
1729 streamer=streamer,
1730 **model_kwargs,
1731 )
1733 elif generation_mode == GenerationMode.BEAM_SEARCH:
1734 # 11. prepare beam search scorer
1735 beam_scorer = BeamSearchScorer(
1736 batch_size=batch_size,
1737 num_beams=generation_config.num_beams,
(...)
1742 max_length=generation_config.max_length,
1743 )
File /opt/conda/lib/python3.10/site-packages/transformers/generation/utils.py:2837, in GenerationMixin.sample(self, input_ids, logits_processor, stopping_criteria, logits_warper, max_length, pad_token_id, eos_token_id, output_attentions, output_hidden_states, output_scores, return_dict_in_generate, synced_gpus, streamer, **model_kwargs)
2835 # sample
2836 probs = nn.functional.softmax(next_token_scores, dim=-1)
-> 2837 next_tokens = torch.multinomial(probs, num_samples=1).squeeze(1)
2839 # finished sentences should have their next token be a padding token
2840 if eos_token_id is not None:
RuntimeError: probability tensor contains either `inf`, `nan` or element < 0
Между остальными моделями и этой разная токенизация. bot_token_id, например, будет разный. А по коду выглядит, что он везде один и тот же.
И torch_dtype лучше ставить bfloat16.
YarKo69
changed discussion status to
closed