Remix.run Logo
TonyAlicea10 6 hours ago

As a tech educator I 100% agree. LLMs are not going to become a "new compiler" where we don't have to worry about the code any more. There's a reason we trust deterministic systems.

I've been worried about this a lot, I even created an agent skill called do-i-understand that's designed for novice devs (and experienced too, because atrophy) where the LLM asks you questions about the PR you're about to submit. I've found it helps a lot: https://github.com/AnthonyPAlicea/skills/blob/main/skills/do...

One way or another, there will be a skill reckoning.

nonethewiser 5 hours ago | parent | next [-]

Why do you trust the non-deterministic LLM with your skill?

TonyAlicea10 5 hours ago | parent | next [-]

It absolutely might make mistakes. But the skill requires all questions to be based on lines of code with specific line numbers which the human needs to review. That's intentional to serve as a safeguard against hallucinations.

cindyllm 5 hours ago | parent | prev [-]

[dead]

chrisjj 6 hours ago | parent | prev | next [-]

A deterministic LLM is possible. Would you trust it?

xdavidliu 5 hours ago | parent | next [-]

they probably mean deterministic in the sense of traditional computer programs consisting of if-else decision points and ordinary cpu logic, as opposed to numerical models (which can of course be deterministic too, as you pointed out)

chrisjj 4 hours ago | parent [-]

Model inference is just that same logic but faster.

I think the point is determined. No-one can determine what the LLM might do.

eikenberry 4 hours ago | parent | prev | next [-]

There are 2 levels of determinism that matter here IMO. Level 1, given the same input you get the same output. Level 2, you know what to change on the input to get a specific change on the output.

LLMs are currently capable of level 1, but not capable of level 2. Trust follows what is actually deterministic.

chrisjj 3 hours ago | parent [-]

Trust should, but instead is being gulled by those incapable LLMs. And I don't see that changing, given the typical human's seemingly unlimited vulnerability to this con.

TonyAlicea10 5 hours ago | parent | prev [-]

I mean in the traditional software sense. We trust autopilots to fly planes. Would you get on a plane flown by an LLM?

chrisjj 4 hours ago | parent [-]

Then I think I'd rephrase you: There's a reason we trust trusted systems.

:)

Even their fans agree, LLMs are inherently unreliable. The fact some people trust them regardless is due to a deep flaw in human psychology that I believe has not been significantly exploited by any previous tech. There will be tears.

TonyAlicea10 3 hours ago | parent [-]

I think two things contribute to the trust in LLMs:

1. Decades of generally reliable systems (I trust my calculator because it always says 1+1=2) has trained people to believe what computers say.

2. LLMs "speak" with great confidence, which has, as you say, a psychological effect.

eatsyourtacos 3 hours ago | parent | prev [-]

It doesn't matter if the LLM is not deterministic.. the OUTPUT of typed code is deterministic in the sense that it can be seen to be type safe, compiled, and run appropriate unit tests on it.

If I use two LLM's to create some chunk of code and they both do it slightly differently but they both compile and pass appropriate tests.. it honestly doesn't matter if the LLM itself is not deterministic in exactly what it's going to output.

I would also argue- doesn't that make sense? You give two human coders the same task and they are also going to come up with slightly different results.

TonyAlicea10 3 hours ago | parent [-]

We don't run our own unit tests on compiled code because it generally can be trusted. LLMs are an extraordinarily leaky abstraction.

Saying "as long as it works and tests pass" suggests that we can test for every possible scenario. We can't. And tests can be flawed on top of it. Which is why an LLM is no more a compiler than a human coder (as you say) is.

eatsyourtacos 2 hours ago | parent [-]

The exact same can be said for human code... so what's your point?