| ▲ | jadar 9 hours ago | |||||||||||||
A compiler is not an LLM, and I do not want to equivocate, but there are aspects of similarity. We do not assume people read the bytes of machine code to ensure it’s correct — there could be mistakes. We also write and run automated tests to ensure the code outputted from a compiler and an LLM behaves correctly. At some point, we won’t have to literally read every byte of code that comes out because we have a reasonable assurance that it’s correct. | ||||||||||||||
| ▲ | EvanAnderson 9 hours ago | parent | next [-] | |||||||||||||
That we don't have to heavily scrutinize the code generated by compilers is a result of the huge amount of human toil that went into the compilers and test suites. Compilers are deterministic mechanisms so tests can be constructed. LLMs, at least as they're currently constructed, aren't deterministic (the whole "temperature" thing). I don't see how to build a mechanistic test for something that has non-deterministic output. It feels a little bit like solving the halting problem. I have no doubt we'll move away from human code review. The idea of large amounts of software edifice being built upon foundations that no human has reviewed or, perhaps even understands, is horrifying to me, though. | ||||||||||||||
| ▲ | flohofwoe 8 hours ago | parent | prev [-] | |||||||||||||
Compilers also usually give you the same output for the same input. And fwiw I do spend quite a lot of time reading compiler output to check that it's not doing something stupid or unexpected (usually as part of optimization work). Also this sort of 'technological whataboutism' really isn't helpful, compilers are entirely different from LLMs. I agree that it doesn't make much sense to read or review LLM output in detail, but I also don't plan to use LLM output for anything important or mission critical. That would be irresponsible. | ||||||||||||||
| ||||||||||||||