Post
I myself have never vibe-coded, my biggest ever LLM usage in relation to code is generating a body of a small function. Vibe-coding from scratch gives shit results for obvious reasons - LLMs just predict the next most likely symbol (simplified) based on their training data. Garbage in - garbage out.
That is why LLMs can for example reproduce popular Wikipedia articles pretty accurately, sometimes exactly. Wikipedia is frequently quoted and copied, so it occurs pretty frequently in training data, which carves it into the LLM's memory more and more accurately, gives it more "weight" (simplified).
In training, model authors can feed it additional copies of what they consider good, making the output lean more towards that (simplified). But since a model is a black box, the approach has downsides. It screws with weights in unpredictable ways, usually decreasing model "stability" (simplified).
0 reposts0 likes
And model context plays into the quality too. Asking it to continue low quality text obviously makes low quality output more likely because in training data low quality text is usually surrounded with more low quality text. Having a bad codebase nerfs a model too, no matter how hard they "align" it.