Live data from Hacker News

Making o1, o3, and Sonnet 3.7 hallucinate for everyone

bengarcia.dev

141–150 of 233 posts

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

#141
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…

Often preferable to API documentation too!

Claude at least will give me an example relevant to my code with real world implementation code.

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

#143
post #100
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've tried using basic AI completions before and found that the signal-to-noise ratio wasn't quite good enough for my taste in my use cases, but I can totally understand it being good enough for others. My comment was more about just asking questions on how to do things you're totally clueless about, in the form of "how do I implement X using Y?" for example. I've found that, as a general rule, if I can't find the an…

I've got basically the opposite experience. I receive very little useful toplevel help or directing me to appropriate resources.

But if I'm writing out a bunch of linear algebra, I get a lot of useful completions and avoid tediousness.

I've settled on Qwen2.5.1-Coder-7B-Instruct-Q6_K_L.gguf-- so not even a very big model.

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

#144

Earlier quoted context omitted.

So anyone can make up some random syntax/fact and post it once, and in some cases the model will take it as truth. I don't know if there's a widely agreed-on definition of "hallucination", but if this isn't one, then the distinction is meaningless imo.

I’m going to double down on this one: an LLM is only as good as its training data. A hallucination to me is an invented piece of information, here it’s going on something real that it’s seen. To me that’s at best contamination, at worst an adversarial attack - something that’s been planted in the data. Here this is obviously not the case, which is why I said “more in common with” instead of “is” above. Semantics perh…

It’s been trained to produce valid code, fed millions of examples, and in this case it’s outputting invented syntax. Whether there’s an example in its training data, it’s still a hallucination and shouldn’t have been output since it’s not valid.

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

#145
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.

Probably by coding things that are bery mainstream and have already been fed to the LLM a thousand times from ripped off projects.

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

#146

Hallucinations like this could be a great way to identify missing features or confusing parts of your framework. If the llm invents it, maybe it ought to be like this?

I agree completely… Usually when I catch it doing this kind of hallucination, it's inventing an API or syntax that is far more clear and intuitive than the actual syntax.

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

#147
post #132

Earlier quoted context omitted.

That's not just small, it's utterly miniscule. It's most certainly not large.

Depends. 3k is pretty much enough for a fully-featured XY. So no context, and differences of the definition of "large". Perhaps if you come from Java, then yeah. shrugs

I'd still call 3kLOC quite small in all mainstream languages.

I worked on a Python project which I'd consider as medium sized, ie not small but not large, and it was around 25kLOC.

My $dayjob is a Delphi codebase with roughly 500kLOC, which I'd say is large but not huge.

Though if you wrote it in something like K[1], then yeah ok, I'd agree 3kLOC probably counts as large.

[1]: https://en.wikipedia.org/wiki/K_(programming_language)

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

#148

Earlier quoted context omitted.

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.

> we feed lsp errors directly to the LLM as development is happening

Yeah I guess that would help a lot. Stuck with a bit more primitive tools here, so that doesn't help.

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

#150

Earlier quoted context omitted.

I have made large projects using Claude, with success. I know what I want to do and how to do it, maybe my prompts were right.

What do you define as a large project? Like TLOC?

This is 11,682 lines of C (and not including some Lua and Python scripts) according to cloc:

https://github.com/williamcotton/webdsl

It's a pipeline-based DSL for building web apps with SQL, Lua, jq and mustache templates.

I'd say it's like 90% Cursor Composer in Agent mode.

This is probably more like a mid-sized project, right?

Post reply on HN