<oembed><type>rich</type><version>1.0</version><title>semisol wrote</title><author_name>semisol (npub122…cgrkj)</author_name><author_url>https://yabu.me/npub12262qa4uhw7u8gdwlgmntqtv7aye8vdcmvszkqwgs0zchel6mz7s6cgrkj</author_url><provider_name>njump</provider_name><provider_url>https://yabu.me</provider_url><html>LLMs struggle with good software dev, especially on implementing novel things, and maintainability.&#xA;The best way them to view them is as a really expensive machine translation from English to code.&#xA;&#xA;There are probably a few reasons: &#xA;1. ML models have limited generalization capability&#xA;ML models can only &#34;do&#34; what they have been trained on. What is outside of that can&#39;t be reliably represented or processed by the model, and so trying to do anything outside that will lead to weird results.&#xA;&#xA;2. Biases in training data&#xA;Models are trained with a lot of data. The pre-training dataset can significantly bias the model (for example preferred frameworks, tools or &#34;suggestions&#34;), and so can the post-training (which is what results in models having a certain &#34;design&#34; style, or the LLMisms)&#xA;&#xA;3. Reinforcement learning&#xA;The RL stage of a model optimizes for things like the number of tool calls, and a binary pass metric. The problem is that, just like human-made code, it is easier to hack on a fix than to properly integrate it.&#xA;&#xA;The model is not trained for achieving anything more than satisfying your request with the bare minimum, and so you will accumulate layers of slop and slop.</html></oembed>