Comment by armchairhacker
10 hours ago
AI could be deterministic, only it requires sacrificing performance and nobody cares enough. Although algorithms are more predictable, and you can follow an algorithm's steps (even a complex algorithm can be broken into large sequences of steps, which may be broken further).
Determinism is the wrong thing to worry about. As you say an LLM could theoretically be deterministic.
Chaos (prompt instability) is the problem that isn’t solvable if you want to treat an LLM like a compiler by doing something like checking in the prompts and rebuilding the code each time.
In general if you change a single line of source code, a compiler will not produce a completely different program. If you change a single word in a prompt, you will get output that likely doesn’t match a single line of the original output.
Chaos is what leads to unpredictability, and there’s no solution to this on the horizon.
I think you're correct, I'll just point out that compilers are also chaotic today and it is often accepted. A small change to source program can lead to big change in performance. It's especially apparent in high-level and declarative languages - SQL or anything with GC.
With respect to performance that’s true. But I’ve probably spent thousands of hours in my career on performance issues caused by small SQL changes.
And LLM chaos is unimaginably worse. A single white space can result in a program that has zero overlap with the original.
They can guarantee that certain small changes won't create a big change in performance (provably, verified through tests, or trivially). An LLM can't.