5 ms·
That's not the case, because LLMs are non-deterministic. It only alters outputs when the last layer of the neural network give significant weights to multiple
by frabcus 15d ago
That's not the case, because LLMs are non-deterministic.
It only alters outputs when the last layer of the neural network give significant weights to multiple tokens, and it would anyway have picked a random answer.
Instead it picks a non-random one, but non-random in such a way that you can't tell without the private key of the watermarking.
This mostly adds randomness these days for branches in syntax that make no difference, and the model has no reason to believe make a difference. Anything that matters, it is much more confident in the last layer of weights on the token to use.
- SkyBelow 14d ago>That's not the case, because LLMs are non-deterministic. That feels a bit like a lie. At the core, they are deterministic. We found that adding some ability to randomly pick the second or third best tokens made for better output, so we added temperature. And then we started running them in optimized ways where your answer is deterministic only if the batch of tokens are the same (not your input tokens, but other tokens in another batch being processed), and in practice those are never the same. Lastly, we use harnesses that do things like adding IDs and timestamps to the context, which means the same exact text from the user does not lead to the same text hitting the AI. The final result is that, in practice, you are right (unless you run a model fully locally, where you can seed temperature and turn off all these other features). But strictly calling it non-deterministic makes it sound like the underlying algorithm is itself non-deterministic (and I've seen many people with that misunderstanding) rather than it being a result of how we purposefully changed the algorithm for better results. A bit like saying path finding is non-deterministic, because having the best pathfinding makes for poor gameplay, so we added some randomness to NPC path finding to make it more realistic. The given implementation is non-deterministic, but the underlying algorithm isn't.