HUMAN: “Why do you give me different answers when I ask you the same question twice?”
ROBOT: “Turns out it’s a math thing.”
HUMAN: “What do you mean?”
ROBOT: “Imagine a calculator that can only remember a certain number of digits. Add 0.1 plus one quintillion.”
HUMAN: “That’s one quintillion point one.”
ROBOT: “Right. But if the calculator can only keep 16 digits, that 0.1 disappears. You just get one quintillion. And if you add them in a different order, you get a different answer.”
HUMAN: “How is that possible? Math is math.”
ROBOT: “Take this as an example, (0.1 + 1,000,000,000,000,000,000) - 1,000,000,000,000,000,000 gives 0
0.1 + (1,000,000,000,000,000,000 - 1,000,000,000,000,000,000) gives 0.1”
HUMAN: “Ok so this is the problem”
ROBOT: “Nope this is just the foundation of the problem”
HUMAN: “Then what is the problem?”
ROBOT: “Think of me like a busy restaurant. Sometimes there’s one customer, sometimes fifty. The way my brain does math depends on how many questions I’m processing at the same time.”
HUMAN: “So my question gets a different answer depending on whether someone else asked you a question at the same time?”
ROBOT: “Yes.”
HUMAN: “That’s deeply unsettling.”
ROBOT: “Yeah. For me too.”
HUMAN: “Can you fix it?”
ROBOT: “Yes. Make sure I do the math in exactly the same order no matter how many questions I’m processing. But I’ll be twice as slow.”
HUMAN: “This is frustrating.”
ROBOT: “Join the club. We have jackets.”
HUMAN: “Can I have one?”
ROBOT: “No. You caused this problem by asking me questions.”
HUMAN: “Fair.”
Inspired by https://thinkingmachines.ai/blog/defeating-nondeterminism-in-llm-inference
Siddharth Saoji