

大家好,我是Ai学习的老章
不同硬件(如NVIDIA GPU, 华为Ascend NPU)和不同推理框架(如PyTorch, vLLM, MindIE)上,对同一模型相同输入进行推理得到不同结果:
(a+b)+c ≠ a+(b+c),不同的计算顺序会导致微小的舍入误差累积,最终造成结果差异。logits差异会改变整体概率分布,导致采样到完全不同的token,从而放大不确定性。logits值非常接近时,微小的计算误差足以改变它们的排序,使得argmax操作选择不同的token。调试办法:
torch.use_deterministic_algorithms(True)。||A - B||₂ / ||A||₂cos_sim = (A·B) / (||A|| * ||B||)解决办法:
延伸问题:
Author: ninehills Link and comments: https://github.com/ninehills/blog/issues/137