3 ms·
The inference response to the prompt is not deterministic. So? Nobody cares. Is the output of your C compiler the same every time you run it? How about your
by CamperBob2 11mo ago
The inference response to the prompt is not deterministic.
So? Nobody cares.
Is the output of your C compiler the same every time you run it? How about your FPGA synthesis tool? Is that deterministic? Are you sure?
What difference does it make, as long as the code works?
- josephg 11mo agoThe C compiler will still make working programs every time, so long as your code isn’t broken. But sometimes the code chatgpt produces won’t work. Or it'll kinda work but you’ll get weird, different bugs each time you generate it. No thanks.
- CamperBob2 11mo agoNothing matters but d/dt. It's so much better than it was a year ago, it's not even funny. How weird would it be if something like this worked perfectly out of the box, with no need for further improvement and refinement?
- antiloper 11mo ago> Is the output of your C compiler the same every time you run it? Yes? Because of actual engineering mind you and not rolling the dice until the lucky number comes up. https://reproducibility.nixos.social/evaluations/2/2d293cbfa5a7 https://reproducibility.nixos.social/evaluations/2/2d293cbfa...
- CamperBob2 11mo agoIt's not true for a place-and-route engine, so why does it have to be true for a C compiler? Nobody else cares. If you do, that's great, I guess... but you'll be outcompeted by people who don't.
- antiloper 11mo agoI'm glad you asked! https://reproducible-builds.org/ https://reproducible-builds.org/
- CamperBob2 11mo agoThat's an advertisement, not an answer.
- antiloper 11mo agoDid you really read and understand this page in the 1 minute between my post and your reply or did you write a dismissive answer immediately?
- CamperBob2 11mo agoEh, I'll get an LLM to give me a summary later. In the meantime: no, deterministic code generation isn't necessary, and anyone who says it is is wrong.
- Capricorn2481 11mo ago> So? Nobody cares Yeah the business surely won't care when we rerun the prompt and the server works completely differently. > Is the output of your C compiler the same every time you run it I've never, in my life, had a compiler generate instructions that do something completely different from what my code specifies. That you would suggest we will reach a level where an English language prompt will give us deterministic output is just evidence you've drank the kool-aid. It's just not possible. We have code because we need to be that specific, so the business can actually be reliable. If we could be less specific, we would have done that before AI. We have tried this with no code tools. Adding randomness is not going to help.
- CamperBob2 11mo agoI've never, in my life, had a compiler generate instructions that do something completely different from what my code specifies. Nobody is saying it should. Determinism is not a requirement for this. There are an infinite number of ways to write a program that behaves according to a given spec. This is equally true whether you are writing the source code, an LLM is writing the source code, or a compiler is generating the object code. All that matters is that the program's requirements are met without undesired side effects. Again, this condition does not require deterministic behavior on the author's part or the compiler's. To the extent it does require determinism, the program was poorly- or incompletely-specified. That you would suggest we will reach a level where an English language prompt will give us deterministic output is just evidence you've drank the kool-aid. No, it's evidence that you're arguing with a point that wasn't made at all, or that was made by somebody else.
- Capricorn2481 11mo agoYou're on the wrong axis. You have to be deterministic about following the spec, or it's a BUG in the compiler. Whether or not you actually have the exact same instructions, a compiler will always do what the code says or it's bugged. LLMs do not and cannot follow the spec of English reliably, because English is open to interpretation, and that's a feature. It makes LLMs good at some tasks, but terrible for what you're suggesting. And it's weird because you have to ignore the good things about LLMs to believe what you wrote. > There are an infinite number of ways to write a program that behaves according to a given spec You're arguing for more abstractions on top of an already leaky abstraction. English is not an appropriate spec. You can write 50 pages of what an app should do and somebody will get it wrong. It's good for ballparking what an app should do, and LLMs can make that part faster, but it's not good for reliably plugging into your business. We don't write vars, loops, and ifs for no reason. We do it because, at the end of the day, an English spec is meaningless until someone actually encodes it into rules. The idea that this will be AI, and we will enjoy the same reliability we get with compilers, is absurd. It's also not even a conversation worth having when LLMs hallucinate basic linux commands.