Live data from Hacker News

Making o1, o3, and Sonnet 3.7 hallucinate for everyone

bengarcia.dev

81–90 of 233 posts

Re: Making o1, o3, and Sonnet 3.7 hallucinate for everyone

#81
post #30

I've got a lot of hallucinations like that from LLMs. I really don't get how so many people can get LLMs to code most of their tasks without those issues permanently popping up.

I've used it for some smaller greenfield code with success. Like, write an Arduino program that performs a number of super-sampled analog readings, and performs a linear regression fit, printing the result to the serial port. That sort of stuff can be very helpful to newbies in the DIY electronics world for example. But for anything involving my $dayjob it's been fairly useless beyond writing unit test outlines.

I use it everyday, it has to have good search and good static analysis built in.

You also have to be very explanatory with a direct communication style.

Our system imports the codebase so it can search and navigate plus we feed lsp errors directly to the LLM as development is happening.

Re: Making o1, o3, and Sonnet 3.7 hallucinate for everyone

#82
post #30

I've got a lot of hallucinations like that from LLMs. I really don't get how so many people can get LLMs to code most of their tasks without those issues permanently popping up.

I've used it for some smaller greenfield code with success. Like, write an Arduino program that performs a number of super-sampled analog readings, and performs a linear regression fit, printing the result to the serial port. That sort of stuff can be very helpful to newbies in the DIY electronics world for example. But for anything involving my $dayjob it's been fairly useless beyond writing unit test outlines.

> Like, write an Arduino program that performs

stuff like that works amazing

> But for anything involving my $dayjob it's been fairly useless beyond writing unit test outlines

This was my opinion 3-6 months ago. But I think a lot of tools matured enough to already provide a lot of value for complex tasks. The difficult part is to learn when and how to use AI.

Re: Making o1, o3, and Sonnet 3.7 hallucinate for everyone

#83
post #30

I've got a lot of hallucinations like that from LLMs. I really don't get how so many people can get LLMs to code most of their tasks without those issues permanently popping up.

They are good at (combining well-known, codeforces-style) algorithms; often times I don’t care about the syntax, but I need the algorithm. LLMs can write pseudocode for all I care but they tend to get syntax correct quite often

Re: Making o1, o3, and Sonnet 3.7 hallucinate for everyone

#85
post #80

Earlier quoted context omitted.

Boilerplate and plumbing code isn't inherently bad, nor do you improve the codebase by factoring it down to zero with libraries and abstractions. As I've matured as a developer, I've appreciated certain types of boilerplate more and more because it's code that shows up in your git diffs. You don't need to chase down the code in some version of some library to see how something works. Of course, not all boilerplate is…

Boilerplate is better than bad abstractions. But good abstractions are far superior.

The best abstraction is no abstraction.

Re: Making o1, o3, and Sonnet 3.7 hallucinate for everyone

#86
post #47

Earlier quoted context omitted.

> I use LLMs for writing generic, repetitive code, like scaffolding. It's OK with boring, generic stuff. In other words, they're OK in use-cases that programmers need to eliminate , because it means there's high demand for a reusable library, some new syntax sugar, or an improved API.

Boilerplate and plumbing code isn't inherently bad, nor do you improve the codebase by factoring it down to zero with libraries and abstractions. As I've matured as a developer, I've appreciated certain types of boilerplate more and more because it's code that shows up in your git diffs. You don't need to chase down the code in some version of some library to see how something works. Of course, not all boilerplate is…

"A program is like a poem. You cannot write a poem without writing it." — Dijkstra

Re: Making o1, o3, and Sonnet 3.7 hallucinate for everyone

#87
post #78
post #72

Earlier quoted context omitted.

Alternatively, we understand it well, and discard bad completions immediately. When I'm using llama.vim, like 40% of what it writes in a 4-5 line completion is exactly what I'd write. 20-30% is stuff that I wouldn't judge coming from someone else, so I usually accept it. And 30-40% is garbage... but I just write a comment or a couple of lines, instead, and then reroll the dice. It's like working through a junior engi…

I don't see the point in AI code completions, they are just distracting noise. I'm only doing bigger changes with AI. Prompt based stuff, like "extract the filtering part from all API endpoints in folder abc/xyz. Find a suitable abstraction and put this function into filter-utils.codefile"

What tools do you use to perform such tasks?

Re: Making o1, o3, and Sonnet 3.7 hallucinate for everyone

#88
post #68

Earlier quoted context omitted.

A language like Golang tries really hard to only have _one_ way to do something, one right way, one way. Just one way. See how it was before generics. You just have a for loop. Can't really mess up a for loop. I predict that the variance in success in using LLM for coding (even agentic coding with multi-step rather than a simple line autosuggest or block autosuggest that many are familar with via CoPilot) has much mo…

> A language like Golang tries really hard to only have _one_ way to do something Really? Logging in Go: A Comparison of the Top 9 Libraries https://betterstack.com/community/guides/logging/best-golang...

I would argue logging options to be more of an exception than the rule. Compare the actual language features of Go to something like Rust or Javascript and you'll see what I mean. As a new developer to the language (especially for juniors), you can learn all the features of Go much faster. It's made to be picked up quickly and for everyone's code to look the same, rather than expressing a personal style.

Re: Making o1, o3, and Sonnet 3.7 hallucinate for everyone

#89

It’s not really hallucinating though, is it? It’s repeating a pattern in its training data, which is wrong but is presented in that training data (and by the author of this piece, but unintentionally) as being the solution to the problem. So this has more in common with an attack than a hallucination on the LLM’s part.

Every LLM hallucination comes from some patterns in the training data, combined with lack of awareness that the result isn’t factual. In the present case, the hallucination comes from the unawareness that the pattern was a proposed syntax in the training data and not an actual syntax.

Re: Making o1, o3, and Sonnet 3.7 hallucinate for everyone

#90
post #19
post #5

ChatGPT used to assure me that you can use JS dot notation to access elements in a Python dict. It also invented Redocly CLI flags that don't exist. Claude sometimes invents OpenAPI specification rules. Any time I ask anything remotely niche, LLMs are often bad.

I once asked Perplexity (using Claude underneath) about some library functionality, which it totally fabricated. First, I asked it to show me a link to where it got that suggestion, and it scolded me saying that asking for a source is problematic and I must be trying to discredit it. Then after I responded to that it just said “this is what I thought a solution would look like because I couldn’t find what you were as…

step 1, focus on llm that generate slop. wait google get flooded with slop

step 2, ??? (it obviously is not generating code)

step 3, profit!

Post reply on HN