在modeling_qwen.py的612-616行中
if past_key_values is None:
past_length = 0
past_key_values = tuple([None] * len(self.h))
else:
past_length = past_key_values[0][0].size(-2)
按我理解,past_length指的是此前生成的token数量,而past_key_values[0][0].shape = [1, num_token, num_head, dim],若past_length = past_key_values[0][0].size(-2),则past_length = num_head。这应该不合理吧?