Live data from Hacker News

Making o1, o3, and Sonnet 3.7 hallucinate for everyone

bengarcia.dev

201–210 of 233 posts

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

#201
post #47
post #35

Earlier quoted context omitted.

I use LLMs for writing generic, repetitive code, like scaffolding. It's OK with boring, generic stuff. Sure it makes mistakes occasionally but usually it's a no-brainer to fix them.

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

We won't be eliminating anything until we give up on only ever working directly on plaintext single source of truth code. AI is automating tedium that's otherwise impossible to automate because we're stuck in a 1970s Unix paradigm and can't let go.

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

#203
post #43

> Conclusion > LLMs are really smart most of the time. No, the conclusion is they’re never “smart”. All they do is regurgitate text which resembles a continuation of what came before, and sometimes—but with zero guarantees—that text aligns with reality.

> All they do is regurgitate text which resembles a continuation of what came before, and sometimes—but with zero guarantees—that text aligns with reality.

You mean like us? Because it takes many runs and debug rounds to make anything that works. Can you write a complex code top-to-bottom in one round, or do you gradually test it to catch bugs you have "hallucinated"?

Both humans and LLMs get into bugs, the question is can we push this to the correct solution or get permanently stuck along the way? And this depends on feedback, sometimes access to a testing environment where we can't let AI run loose.

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

#204
post #93

Earlier quoted context omitted.

No. Edit: I'm not going to code asm just to be cool.

asm? Why would anyone use that useless abstraction over byte code?

bytes are abstractions. Only use them if you know upfront how many bits you need.

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

#205
post #191

Earlier quoted context omitted.

The trick to coding with LLMs is not caring if the code is correct.

Call me cynical but coding at some companies has such perverse incentives that I kind of get it: - "Solve" the issue assigned to me with a bunch of code that looks about right. Passes review and probably not covered by tests anyway. - Once QA or customers notice it's not working, I can get credit for "solving" the bug as well. - Repeat for 0 value delivered but infinite productivity points in my next performance revi…

I suppose that you are using a dynamic language? Static typed languages have less of this problem.

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

#206
post #166

Earlier quoted context omitted.

I would love an AI coding assistant that doesn't respond until it's gone out and tested its answer in a sandbox to confirm it actually compiles.

I personally haven't figured out why there isn't a tool that just loops the AI severals times on a task by compiling, feeding in the errors adjusting and repeating and then letting the user review the result be in a success or failure by exceed the loop limits.

The LLMs want to please, they can infinitely keep making 'important' changes; changing variable names without changing anything else, adding/removing comments, adding removing print statements, moving a function somewhere in the code (usually by first duplicating it) and fixing perfectly fine code with 'let me see if everything is really working' (it was and now it's broken again).

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

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

We won't be eliminating anything until we give up on only ever working directly on plaintext single source of truth code. AI is automating tedium that's otherwise impossible to automate because we're stuck in a 1970s Unix paradigm and can't let go.

But people, especially here on HN, are saying it's the only way to go.

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

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

Sometimes I don't know anything (relatively) about the topic and I want to get a foundation so I don't care whether the syntax or the code is valid as long as it points me in the right direction. Other times I know exactly what I want and I just find that instructing LLM specifically what output I expect from it just helps me get there faster.

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

#209
post #47
post #35

Earlier quoted context omitted.

I use LLMs for writing generic, repetitive code, like scaffolding. It's OK with boring, generic stuff. Sure it makes mistakes occasionally but usually it's a no-brainer to fix them.

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

> because it means there's high demand for a reusable library

Every 'modern' project takes bucket loads of (annoying) setup and plumbing. Even in rather trivial 'start' cases, the LLM has to spend quite a bit of time to get a hello world thingy working (almost all of that is because 'modern programmers' have some kind of brain damage concerning backward compatibility; move fast and break things between MINOR versions that have no use or reason for those changes whatsoever but 'they liked it better', so stuff never works as it says on the product page; heaven help you if you need something exotic to be added). It's a terrible timeline for programming, but LLMs do fix at least that annoyance by just changing configs/slabs of code it until it works.

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

#210

Earlier quoted context omitted.

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?

Quite nice that.
Post reply on HN