Email or username:

Password:

Forgot your password?
David Chisnall (*Now with 50% more sarcasm!*)

A lot of the current hype around LLMs revolves around one core idea, which I blame on Star Trek:

Wouldn't it be cool if we could use natural language to control things?

The problem is that this is, at the fundamental level, a terrible idea.

There's a reason that mathematics doesn't use English. There's a reason that every professional field comes with its own flavour of jargon. There's a reason that contracts are written in legalese, not plain natural language. Natural language is really bad at being unambiguous.

When I was a small child, I thought that a mature civilisation would evolve two languages. A language of poetry, that was rich in metaphor and delighted in ambiguity, and a language of science that required more detail and actively avoided ambiguity. The latter would have no homophones, no homonyms, unambiguous grammar, and so on.

Programming languages, including the ad-hoc programming languages that we refer to as 'user interfaces' are all attempts to build languages like the latter. They allow the user to unambiguously express intent so that it can be carried out. Natural languages are not designed and end up being examples of the former.

When I interact with a tool, I want it to do what I tell it. If I am willing to restrict my use of natural language to a clear and unambiguous subset, I have defined a language that is easy for deterministic parsers to understand with a fraction of the energy requirement of a language model. If I am not, then I am expressing myself ambiguously and no amount of processing can possibly remove the ambiguity that is intrinsic in the source, except a complete, fully synchronised, model of my own mind that knows what I meant (and not what some other person saying the same thing at the same time might have meant).

The hard part of programming is not writing things in some language's syntax, it's expressing the problem in a way that lacks ambiguity. LLMs don't help here, they pick an arbitrary, nondeterministic, option for the ambiguous cases. In C, compilers do this for undefined behaviour and it is widely regarded as a disaster. LLMs are built entirely out of undefined behaviour.

There are use cases where getting it wrong is fine. Choosing a radio station or album to listen to while driving, for example. It is far better to sometimes listen to the wrong thing than to take your attention away from the road and interact with a richer UI for ten seconds. In situations where your hands are unavailable (for example, controlling non-critical equipment while performing surgery, or cooking), a natural-language interface is better than no interface. It's rarely, if ever, the best.

184 comments
Erik Jonker

@david_chisnall ...that's also one of it's strengths, language is a completely different "beast" then math. Comparing it is useless. Language fulfills different functions then math. But just as important for human beings.

Resuna

@ErikJonker @david_chisnall

That's the point. Giving directions to a machine requires math. Using the term "language" to refer to machine instructions has led people down the wrong path over and over again and led to monstrosities like COBOL and Perl and "Congratulations, you have decided to clean the elevator!"

Erik Jonker

@resuna @david_chisnall cobol is not a monstrosity as a programming language, it’s ofcourse legacy

Erik Jonker

@resuna @david_chisnall …a natural language interface for a computer can have enormous benefits, a good example is an educational context, you can interact, ask question’s etc in a way not possible before

Resuna

@ErikJonker @david_chisnall

Even communicating with other humans in natural language leads to confusion, and humans are much much better at dealing with ambiguity than any computer.

Erik Jonker

@resuna @david_chisnall ofcourse but current AI models can provide a level of education that scales easily, it will supplement humans in their roles and sometimes replace them. Current models can perfectly help students with high school math, even with some ambiguity

Resuna

@ErikJonker @david_chisnall

The software that people refer to as "AI" is nothing more than a parody generator, and is really really bad at dealing with ambiguity. It's a joke. If you actually think that it is capable of understanding, then it has been gaslighting you.

Erik Jonker

@resuna @david_chisnall I actually know how these models work, it's not about intelligence and understanding, they are just tools but very good ones in my own experience

Erik Jonker

@resuna @david_chisnall ...if you tried GPT-4o or a tool like NotebookLM then you know they are more then parody generators, it doesn't help denying the capabilities of these technologies especially because there are real risks/dangers with regard to their use

Cluster Fcku

@ErikJonker @resuna @david_chisnall now take your comments, and substitute it like this: "I find English and German very useful for work. It doesn't help denying the capabilities of *natural languages* especially because there are real risks/dangers with regard to their use". At times language appears as outer thought, but do not use it is as decisive thought. As a centralized source for inquiry and digestion, LLMs are far more dangerously illusive than the natural languages by billions.

Resuna

@ErikJonker @david_chisnall

My first job was programming in COBOL before it was legacy. It is terrible. It always was terrible. It's not a natural language, it's not ambiguous, but trying to make it look like a natural language was an unmitigated disaster at every level. The same is true of Perl's "linguistic" design. Even just pretending to be a natural language spawns monstrosities.

Edit: see also Applescript.

Erik Jonker

@resuna @david_chisnall it is extremely stable and durable for sure, ask any financial institution 😃

Aedius Filmania ⚙️🎮🖊️

@david_chisnall

Maybe in the Star Trek world they use an unambiguous logique language, easy to translate in any unambiguous language, but we loose that in the English translation.

That would explain a lot the universal translator ;)

Space Hobo Actual

@Aedius @david_chisnall The Star Trek voice computers always seemed to react like very advanced #InteractiveFiction parsers. They would respond to a wide variety of queries and commands, but most actors spoke in a very constrained way and often the computers would prompt further or give error messages.

So you'd get back "please specify which of the 3271 bulkheads you wish to open" or "Unable to comply" and you'd have to re-phrase your order. There's a famous scene where Lwaxana Troi is frustratedly pulling a sausage out of a frozen margarita and saying "Oh I am just TERRIBLE with computers...", suggesting that interaction with them was still a skill that needed training or practice.

@Aedius @david_chisnall The Star Trek voice computers always seemed to react like very advanced #InteractiveFiction parsers. They would respond to a wide variety of queries and commands, but most actors spoke in a very constrained way and often the computers would prompt further or give error messages.

Space Hobo Actual

@Aedius @david_chisnall And it made sense in that world that a crew of effectively Space Navy officers and enlisted spacers had been taught to be precise in their language, as so many of the tasks in a crew setting like that are performative speech. You need to give unambiguous commands to shipmates AND equipment, and need to quickly give updates like "standing by" or "aye, sir" or "probe launched: contact in 634 seconds...".

it was so well covered that the ambiguities we see are always jarring. When someone is standing in a crowd of 10 people, and a mix of crew and locals are coming up and staying down, the call is always "four to beam up" and *somehow* the transporter operators know which four. How? Well that's just what filmmakers call "shoe leather": the kinds of details and procedure that would take so long that they distract from the story without even giving any useful flavour.

@Aedius @david_chisnall And it made sense in that world that a crew of effectively Space Navy officers and enlisted spacers had been taught to be precise in their language, as so many of the tasks in a crew setting like that are performative speech. You need to give unambiguous commands to shipmates AND equipment, and need to quickly give updates like "standing by" or "aye, sir" or "probe launched: contact in 634 seconds...".

Archangel Zeriel

@spacehobo @Aedius @david_chisnall

> When someone is standing in a crowd of 10 people, and a mix of crew and locals are coming up and staying down, the call is always "four to beam up" and *somehow* the transporter operators know which four. How?

I'd also point out the kind of domain-specific machine-learning pattern matching that I've used in the real world to great effect -- 99% of those scenes I can remember, the people who are to be beamed up are standing still and looking slightly upward, in a way that if you saw only a screenshot of the episode you'd probably pretty easily pick out the four people who were supposed to be beamed up.

It would not surprise me to find that (in the fictional world, natch) the computer underlying the transport operator's interface is highlighting a selection of people in a given target zone who are standing in the "beam me up" posture.

Contrariwise, most emergency beam-ups seem to involve either much more specific commands or "all crew in the area, only".

@spacehobo @Aedius @david_chisnall

> When someone is standing in a crowd of 10 people, and a mix of crew and locals are coming up and staying down, the call is always "four to beam up" and *somehow* the transporter operators know which four. How?

I'd also point out the kind of domain-specific machine-learning pattern matching that I've used in the real world to great effect -- 99% of those scenes I can remember, the people who are to be beamed up are standing still and looking slightly upward, in...

Tim Nicholas

@david_chisnall I think the unfortunate challenge is that some people do not want tools, they want servants or slaves. LLM holds that prospect for them.

What happens when a lowly servant misinterprets the intent of a command? They are blamed for it irrespective of ambiguity.

jarkman

@david_chisnall I'm not so sure. I often express myself in natural language to ask people to do things, and that usually works out pretty well.

So it's possible in principle, it's just not something that computers can do yet. Maybe one day they will.

Russell S. Pfau

@jarkman When I ask people to do things in natural language, it often fails miserably (the people do the wrong thing). You must be interacting with very capable people or your natural language is very precise and unambiguous.

Steve Hersey

@rspfau @jarkman
Or, third option, you and your audience share sufficient context to resolve the ambiguities or at least make the right interpretation easy to infer.

This is a feature that no LLM is ever likely to possess, as that would require its training set to mirror your own experience and training, and also requires the kind of generalized, informed judgement that humans routinely do but LLMs purely suck at. Statistical next-word prediction is no substitute for a mental model of actual meaning.

That LLMs routinely produce utterly confident, wrong results is one of their core dangers. Humans at least know (mostly) to say, "I'm really not sure about this," before speculating.

@rspfau @jarkman
Or, third option, you and your audience share sufficient context to resolve the ambiguities or at least make the right interpretation easy to infer.

This is a feature that no LLM is ever likely to possess, as that would require its training set to mirror your own experience and training, and also requires the kind of generalized, informed judgement that humans routinely do but LLMs purely suck at. Statistical next-word prediction is no substitute for a mental model of actual meaning.

jarkman

@n1xnx @rspfau Sure, LLMs are terrible at many things right now. Maybe they'll never get better, maybe future machines will come to learn the world more richly and deeply.

Steve Hersey

@jarkman @rspfau
I'm sure they *will* get better, but absent some quantum leap in computational and storage capabilities, and some truly horrendous amounts of energy input, I don't think they can ever become good enough to be trustworthy. (Just enough to be a real-world example of "a little knowledge is a dangerous thing.")

Wolf480pl

@jarkman @david_chisnall
Because people actually do have a synchronized model of how other humans' brains works, and those who know you have a model that matches your particular brain. I think it's called "mirror neurons".

David

@jarkman @david_chisnall

You can only ask them to do one of a few different things. Imagine actually picking randomly from the space of commands. Humans expect and know to perform only a few items from a very restricted set of possible things to do.

Glenn

@david_chisnall LLMs play directly into business guy's IT wet dreams. If you've ever developed software for business guys, you realize that the biggest problem is figuring out what the business guy wants. Even on those rare occasions when the business guy knows what he wants, his ability to express it in a manner that can be converted into software is limited at best. For these guys, the idea of LLMs magically interpreting their wants and needs, is wonderous.

Glenn

Just like the no/low code solutions they were pedaled in the previous promise cycle.

Jimmy Havok

@glennsills @david_chisnall One of my friends writes specs for coders, and endures endless meetings in the process of getting the business guys' words into an unambiguous form.

Glenn

@jhavok @david_chisnall In the end, something like Domain Modeling, a process that creates an agreed upon language describing a problem domain works best (IMO, I haven't seen everything), but it is extremely expensive, and folks generally don't want to pay.

DELETED

@glennsills @david_chisnall
They want the new computerized system to work exactly like the old paper system, without ever considering where things could be rearranged or consolidated or split for better results.

Glenn

@PJ_Evans @david_chisnall That's the old saying, but in reality, few businesspeople are still alive that used the old paper system and fewer understand how it worked.

DELETED

@glennsills @david_chisnall
I worked at a place in 2004 that was finishing exactly that conversion, and saw some of the stuff that could have been fixed.

André Polykanine

@david_chisnall Although I get your point, you seem to miss a very important thing: there are lots and lots and lots of people who simply *can't* go beyond natural language. I know many people with little to no math knowledge who were exposed to computers and modern technologies in their fifties. Would they be able to formulate proper requests, as you suggest? Maybe, after an extremely steep learning curve, lots of tears, sometimes panic attacks and such. Do we want this, say, for our parents? Probably not. At least, I don't. Being a developer myself, I wish my mother had an interface best suitable for her needs.

@david_chisnall Although I get your point, you seem to miss a very important thing: there are lots and lots and lots of people who simply *can't* go beyond natural language. I know many people with little to no math knowledge who were exposed to computers and modern technologies in their fifties. Would they be able to formulate proper requests, as you suggest? Maybe, after an extremely steep learning curve, lots of tears, sometimes panic attacks and such. Do we want this, say, for our parents? Probably...

Jan (DL1JPH)

@menelion
"Language" doesn't have to mean spoken language. Look at old UI designs - most of the key elements carry an obvious meaning, often conveyed through visual means as much as words. This, too, is language. The crucial thing here is that it's unambiguous. Knowing the design elements enables the user to predict what an action is supposed to do and a developer to understand what their users would want to happen. It's become rather fashionable to break that pattern, though...
@david_chisnall

GunChleoc

@DL1JPH @menelion @david_chisnall I once had a translation job where it looked like the marketing department got their hands on the UI strings and decided that the thing had to be jovial human sounding, so that the users could "relate" to it.

No screenshots, no context, no access to the development version of the program.

Translating that garbage was tough, lots of creative guessing about what they might actually mean.

Phil

@menelion@dragonscave.space @david_chisnall@infosec.exchange
Which itself is also an issue; should this natural interface merely execute a best guess, or should it educate its users as to what their choices are, what they mean, and what the consequences of them are?

If the latter, then it may be effective, but in the former case it would be a disaster, too.

Pamela Schure

@david_chisnall Early morning and pre-coffee and my mind went to Luxembourgish which is primarily a Germanic language which added in French to deal with legal and administrative issues. I don’t speak it, but I think this combination is possibly the best way to obfuscate meaning. Otherwise agree with your premise and can only add that language exists in a context. LLMs sorely lack the context for language to be completely understood.

Owen Anderson

@david_chisnall
> (and not what some other person saying the same thing at the same time might have meant)

see "Pierre Menard, Author of the Quixote" by Borges

Winchell Chung ⚛🚀

@david_chisnall

Arthur C. Clarke had an example of the over-engineering trap. Solve this problem: allow a farmer to direct a draft-horse to turn left or right on command.

1/

Winchell Chung ⚛🚀

@david_chisnall

Solution 1: genetically engineer the horse to enhance its intelligence. Teach the horse a college level of English language comprehension, so that the horse can understand commands like "It is time to vector your course in the widdershins direction", "go thataway, stupid!", or whatever phrasing suits the passing fancy of the farmer at that moment. Problem will be solved after a few decades of over engineering, and each draft-horse will cost a quarter of a billon dollars.

2/

Winchell Chung ⚛🚀

@david_chisnall

Solution 2: take an off-the-shelf draft-horse. Teach it that "Haw" means turn left and "Gee" means turn right. Teach the *farmer* to employ this user interface when directing the horse. Problem solved.

3/

Winchell Chung ⚛🚀

@david_chisnall

The point is that trying to accomodate any whim of the farmer is an NP-hard problem. A little training of the lazy farmer vastly simplifies the problem.

4/end

Jimmy Havok

@david_chisnall The second of your two languages was the project of the logical positivists. They eventually decided it was not possible.

Alper Çuğun-Gscheidel

@david_chisnall @cstross LLMs are truly a dumb person‘s idea of what programming is.

Fluchtkapsel

@david_chisnall Natural language interfaces are akin to magic. It's all under the assumption that the intent is somehow, magically recognised. Funnily, there are cautionary tales re magic addressing exactly this aspect. Almost all stories involving wishes turn the phrasing against the one expressing their wishes (see djinns, fairies, etc.).

Fluchtkapsel

@LucasWerkmeister

Hat der alte Hexenmeister
Sich doch einmal wegbegeben!
Und nun sollen seine Geister
Auch nach meinem Willen leben.
Seine Wort’ und Werke
Merkt’ ich und den Brauch,
Und mit Geistesstärke
Tu’ ich Wunder auch.

Walle! walle
Manche Strecke,
Daß zum Zwecke
Wasser fließe,
Und mit reichem, vollem Schwalle
Zu dem Bade sich ergieße!

Und nun komm, du alter Besen!
Nimm die schlechten Lumpenhüllen!
Bist schon lange Knecht gewesen;
Nun erfülle meinen Willen!
Auf zwei Beinen stehe,
Oben sei ein Kopf,
Eile nun und gehe
Mit dem Wassertopf!

Walle! walle
Manche Strecke,
Daß zum Zwecke
Wasser fließe,
Und mit reichem, vollem Schwalle
Zu dem Bade sich ergieße!

Seht, er läuft zum Ufer nieder;
Wahrlich! ist schon an dem Flusse,
Und mit Blitzesschnelle wieder
Ist er hier mit raschem Gusse.
Schon zum zweiten Male!
Wie das Becken schwillt!
Wie sich jede Schale
Voll mit Wasser füllt!

@LucasWerkmeister

Hat der alte Hexenmeister
Sich doch einmal wegbegeben!
Und nun sollen seine Geister
Auch nach meinem Willen leben.
Seine Wort’ und Werke
Merkt’ ich und den Brauch,
Und mit Geistesstärke
Tu’ ich Wunder auch.

Walle! walle
Manche Strecke,
Daß zum Zwecke
Wasser fließe,
Und mit reichem, vollem Schwalle
Zu dem Bade sich ergieße!

Fluchtkapsel

@LucasWerkmeister

Stehe! stehe!
Denn wir haben
Deiner Gaben
Vollgemessen! –
Ach, ich merk’ es! Wehe! wehe!
Hab’ ich doch das Wort vergessen!

Ach, das Wort, worauf am Ende
Er das wird, was er gewesen.
Ach, er läuft und bringt behende!
Wärst du doch der alte Besen!
Immer neue Güsse
Bringt er schnell herein,
Ach! und hundert Flüsse
Stürzen auf mich ein.

Nein, nicht länger
Kann ich’s lassen;
Will ihn fassen.
Das ist Tücke!
Ach! nun wird mir immer bänger!
Welche Miene! welche Blicke!

O, du Ausgeburt der Hölle!
Soll das ganze Haus ersaufen?
Seh’ ich über jede Schwelle
Doch schon Wasserströme laufen.
Ein verruchter Besen,
Der nicht hören will!
Stock, der du gewesen,
Steh doch wieder still!

Willst’s am Ende
Gar nicht lassen?
Will dich fassen,
Will dich halten,
Und das alte Holz behende
Mit dem scharfen Beile spalten.

@LucasWerkmeister

Stehe! stehe!
Denn wir haben
Deiner Gaben
Vollgemessen! –
Ach, ich merk’ es! Wehe! wehe!
Hab’ ich doch das Wort vergessen!

Ach, das Wort, worauf am Ende
Er das wird, was er gewesen.
Ach, er läuft und bringt behende!
Wärst du doch der alte Besen!
Immer neue Güsse
Bringt er schnell herein,
Ach! und hundert Flüsse
Stürzen auf mich ein.

Fluchtkapsel

@LucasWerkmeister

Seht, da kommt er schleppend wieder!
Wie ich mich nur auf dich werfe,
Gleich, o Kobold, liegst du nieder;
Krachend trifft die glatte Schärfe!
Wahrlich, brav getroffen!
Seht, er ist entzwei!
Und nun kann ich hoffen,
Und ich atme frei!

Wehe! wehe!
Beide Teile
Stehn in Eile
Schon als Knechte
Völlig fertig in die Höhe!
Helft mir, ach! ihr hohen Mächte!

Und sie laufen! Naß und nässer
Wird’s im Saal und auf den Stufen.
Welch entsetzliches Gewässer!
Herr und Meister! hör’ mich rufen! –
Ach, da kommt der Meister!
Herr, die Not ist groß!
Die ich rief, die Geister
Werd’ ich nun nicht los.

„In die Ecke,
Besen, Besen!
Seid’s gewesen!
Denn als Geister
Ruft euch nur zu seinem Zwecke
Erst hervor der alte Meister.“

@LucasWerkmeister

Seht, da kommt er schleppend wieder!
Wie ich mich nur auf dich werfe,
Gleich, o Kobold, liegst du nieder;
Krachend trifft die glatte Schärfe!
Wahrlich, brav getroffen!
Seht, er ist entzwei!
Und nun kann ich hoffen,
Und ich atme frei!

Wehe! wehe!
Beide Teile
Stehn in Eile
Schon als Knechte
Völlig fertig in die Höhe!
Helft mir, ach! ihr hohen Mächte!

Fluchtkapsel

@LucasWerkmeister Habe ich nicht erwartet 😃. Ich denke, nach den ersten paar Worten ist klar, was es ist, muss man dann nicht mehr lesen.

Recovered Expert

@david_chisnall what you’re describing is essentially the old problem of “do what I mean, not what I say”.

On top of the ambiguity of natural language a lot of people can’t properly express themselves even when the language isnt ambiguous by itself.

Laux Myth (aka Martin)

@david_chisnall
Thanks for a new thought to think. Your post for me fell into the ‘obvious once said’ department.

que :verifried:

@david_chisnall this aligns with my thinking also.. determinism and logic are critical in any programming interfaces! even a skilled programmer writing their own code with understanding of clear outcomes will still get caught in flawed logic flows in their app. being able to clearly articulate how you want something to work is important, and you dont want it to change based on new datasets learned by the model.

🇨🇦🇩🇪🇨🇳张殿李🇨🇳🇩🇪🇨🇦

@david_chisnall I think that instead of making systems that use an exacting, very precise, unambiguous language (which really doesn't exist in reality anyway) that you then force everybody in the whole world to learn so they can communicate with computers …

… why not just make computers not so utterly god-damned fragile that the slightest error makes things get broken and hard?

Make your technology antifragile instead of making people adapt to tech. Because the latter is not gonna happen.

Tom Boutell

@david_chisnall a small point, but re driving or cooking, I recently switched back from Gemini to Google Assistant in that role. Gemini can't actually do anything more in terms of remote control, so the added complexity just dials up the unwanted responses without adding anything at all. A smaller model is best for remote control even if I must learn the interface by figuring out phrases that work and sticking to them.

Schroedinger

@david_chisnall Agree. Whenever on ST or similar I hear them say things like "Correlate this with the previous search" I think there is no way a natural language processsor could interpret this properly. It has technical terms in so "sounds" good, but is fundamentally lacking as a definition of a process (Correlate on what? What tolerances? Display how? just for starters)

And yes, if it is for "let me hum this song - can you tell me what it is?" It is a useful start. But it can never have the precisions of a computer language. And yet it is computer solutions we expect.

@david_chisnall Agree. Whenever on ST or similar I hear them say things like "Correlate this with the previous search" I think there is no way a natural language processsor could interpret this properly. It has technical terms in so "sounds" good, but is fundamentally lacking as a definition of a process (Correlate on what? What tolerances? Display how? just for starters)

Alessandra Sierra

@david_chisnall I have a vague recollection of a science fiction story that had a “robot language.” Maybe Asimov?

Colin the Mathmo

@lambdasierra @david_chisnall In "The Moon is a Harsh Mistress" they mention "loglan" (which is now lojban).

There are some who think that would do the job.

Æpstein

@david_chisnall

Superb characterization of #AI that, hopefully, relegates its use to well-defined and safe domains of use (call center routing) or as a fun curiosity for bored people. It should never be used for critical decision making, such as “dangerousness” determinations for bail decisions.

#LLM

Martijn Frazer

@david_chisnall the only reason it's done like this in Star Trek is because it's not a crew running a spaceship, it's a bunch of actors in a TV show. And it wouldn't make for very good TV to have people stare at screens and press buttons.

The crew aren't talking to the computers and vice versa, they're talking to the audience so they know what's going on.

It's beyond mad to retrofit this paradigm onto real tech that real people are trying to use to do real work.

Marty Fouts

@Tijn @david_chisnall We have been working on the retro fit since the DARPA “put that there” experiments of the 1960s. I have personally used speech recognition software to control computers since the 1990s. Agent based AI systems have been around for 20 years. LLMs are a dead end in this area but there’s been a lot of research and some progress in the last 60 years.

LLMs will play out, hopefully soon, and we will return to domain specific multi modal agent approaches again.

SnowBlind2005

@david_chisnall

If it is not cool to use natural language to control things we should stop listening to you.

Balthazar

@david_chisnall
There is a recent game called Chants of Senaar that explores this "use-based language": a city where each caste (priests, soldiers, artists, scientists) have their own language that you need to learn, each language fit for expressing different concepts that were alien to other caste.

David Chisnall (*Now with 50% more sarcasm!*)

@baltauger In linguistics, the Whorf-Sapir hypothesis, also known as the Linguistic Relativity hypothesis, argues that language constrains thought. This was the idea behind Orwell's Newspeak. The strong variant argues that you cannot think an idea that your language cannot express (the goal of Newspeak), the weak variant argues that language guides thought. The strong variant is largely discredited because it turns out that humans are really good at just making up new language for new concepts. The weak variant is supported to varying degrees.

I keep trying to persuade linguists to study it in the context of programming languages, where humans are limited in the things that they can extend because a compiler / interpreter also needs to understand the language. I think there are some very interesting research results to be found there.

@baltauger In linguistics, the Whorf-Sapir hypothesis, also known as the Linguistic Relativity hypothesis, argues that language constrains thought. This was the idea behind Orwell's Newspeak. The strong variant argues that you cannot think an idea that your language cannot express (the goal of Newspeak), the weak variant argues that language guides thought. The strong variant is largely discredited because it turns out that humans are really good at just making up new language for new concepts. The...

Craig Duncan

@david_chisnall @baltauger I've considered this. The answer, really, is that a programming language is just a technology for a mind to use to alter the state of a machine, and not a subjective reality. Once the instructions are in the machine they dictate its operation. A human can try to imagine how the machine will operate under constraints but not be required to limit their own reality (if that were even possible) to that of the machine.

Abram Kedge

@david_chisnall

"Time flies like an arrow."
"Fruitflies like a banana."

Felix

@david_chisnall I'm all with you, but it made me think about the nature of natural language ambiguity. It seems it's all/mostly a matter of them *allowing* us to say things without well-defined conditions for their truth etc. Natural language *could* certainly be used to say pretty much anything unambiguously, but that would be a very regimented *use* of natural language resources. And learning to use your language that way would be quite as hard as learning any formal language.

Craig Duncan

@david_chisnall

Yes, some confusion stems from science fiction equating microprocessors or machines to conscious, captive minds.

Yet the ambiguity of language for some purposes is not the issue: it's the fact that the world is not automatically reducible to a machine representation with a small set of symbols. In the course of permitting language to be used for machine instructions, for the convenience of programmers, you alter its use and meaning in context.

MacCruiskeen

@david_chisnall if legalese were unambiguous, there wouldn’t be so many court cases arguing about ambiguous laws.

TomAoki

@david_chisnall
Maybe just AI's are not yet as intelligent as it is wanted/believed now.
Lawers speaks natural languages on daily life (except their jobs).
Mathematitians, engineer, scientists, too. They/we are as intelligent as use both natural and "job" language in their/our area of professions.

And at least currently, I don't think the way currently used (mostly deep learning, I guess) for AI's alone is sufficient. More researches for "intelligense" would be needed.

Years ago, neural network was the target. Currently, deep learning. So the next is...? I don't know.🤷‍♂️

@david_chisnall
Maybe just AI's are not yet as intelligent as it is wanted/believed now.
Lawers speaks natural languages on daily life (except their jobs).
Mathematitians, engineer, scientists, too. They/we are as intelligent as use both natural and "job" language in their/our area of professions.

And at least currently, I don't think the way currently used (mostly deep learning, I guess) for AI's alone is sufficient. More researches for "intelligense" would be needed.

Resuna

@david_chisnall

Also everything that is wrong with Perl.

Antti Joutsi

@david_chisnall I think this relates to something I learned only after delving deep in C after a decade or so of object-oriented, heavily abstracted programming:

One should always strive to solve the problem at hand, not some generalized, abstract set of N problems. The latter always ends up becoming ritualistic hope-magic, that in the future things will be better if we do things now The Right Way. Aesthetics, law and protocol become metrics instead of whether it solves the problem.

djuber

@david_chisnall "built entirely out of undefined behavior" - that stings sharp!

Stu

@david_chisnall I scrolled through a lot of the replies here, it's unfortunate I don't see accessibility mentioned. You alluded to it with your car example.

I don't think I get why the issue isn't that LLMs can't understand what you're saying, not that speech input can be ambiguous.

"OK google, play XYZ"

Sure, playing XYZ on YouTube music. You will need to install..

"Cancel. Play XYZ on Spotify"

Sure, playing XYZ on Spotify

An actual interaction I've had with my car (Gemini wasn't used)

datarama

@david_chisnall ...and even in Star Trek, Jean-Luc Picard *ALWAYS* makes sure to disambiguate his beverage choice: "Tea, Earl Grey, hot".

(Has the replicator control computer served him cold, lukewarm or scalding tea in the past? Has he once ordered Earl Grey and gotten a weird replica of the actual earl?)

Arto Koistinen

@datarama @david_chisnall

Instantly reminded me of this meme.

(though in reality, there would be all sorts of constraints in the natural language interface to add context and prevent this exact thing from happening)

Leeloo

@david_chisnall
"In C, compilers do this for undefined behaviour and it is widely regarded as a disaster. LLMs are built entirely out of undefined behaviour".

So AI is "take the worst mistakes from C and discard the rest"🤔🤣🤪🤡

Anselm Schüler

@david_chisnall
Just a few notes (not to detract)
1. Mathematics uses a surprising amount of natural language in-between equations. There are fields where this is less so but it is rare.
2. Often, jargon (such as professional jargon or legalese) also exists for other purposes, like discrimination or prestige, and unnecessarily reinvents or complicates phrases.
3. Programming languages are often rife with “sharp corners” where slight, unintuitive differences matter a lot.

Carolyn Jewel

@david_chisnall Natural language relies on prosody which pretty much by definition is not available in the words. Facial expression, gestures, and tone of voice change the meaning of words and machine learning has no access to this with the possible exception of words that append emojis, and even then the emoji could be used ironically.

Killa Koala

@david_chisnall At least once a week at my place:
Me: Siri, lamp on.
[Lamp turns on]
Me: Siri, TV on.
[TV turns on]
Me: Siri, aircon on.
Siri: The aircon is off.
Me: Fuck! Siri, turn aircon on.
[Airconditioner turns on]
😡

Two out of three ain't bad ... I guess 🤷‍♂️

Laus🐜:AFD:

@david_chisnall So the essence is: LLMs should be widely regarded as a disaster. I definitely won't disagree.

James

@david_chisnall

Natural languages depend on redundancy. It's why "Coca-Cola" becomes "Bite the wax tadpole" when you try to limit yourself to three or four sound groups.

Among a common group sometimes the redundancy is not the words used, but the phrases have a meaning to the group beyond the words.

For an AI to accept natural language would require it to be intelligent enough to consider all outcomes of its' actions and choose the most reasonable one. Asking where unsure.

Marty Fouts

@david_chisnall The idea of using natural language to control things predates Star Trek in AI research. Natural Language Processing (NLP) research dates to the 1950s. By the time I was studying NLP under Winograd in the 1980s the need for limited unambiguous vocabulary and grammar for command and control (CC) was obvious.

But CC is not the only use of NLP as the speech recognition systems developed in the 90s demonstrated.

Such tools need not be perfect to be useful.

RobertJackson

@david_chisnall

Case in point:

I did some simple DIY the other day with a glue called "no more nails"

Then I tried to look up how long it'd be before the glue was cured.

Google bifurcated nicely between answers about the glue I'd used and about artificial finger nails mostly dropping off.

As each article started it was unclear for a line or two which of the two they were talking about :((

Mike Knell

@david_chisnall And even the computers in Star Trek have to be spoken to in a particular way to get the results you want. I don't think "Yo, computer, where's my man Data at?" would work instead of "Computer, locate Lieutenant-Commander Data".

I can't remember the SF writer, but it reminds me of a description of someone as having the clear enunciation and precise language of a person who spent a lot of time talking to computers.

Yogthos

@david_chisnall and yet, most human communication is done using natural language. Software developers talk to project managers every single day without using code to communicate what's happening.

The notion that it's not possible to do clear communication without using a formal system doesn't hold water.

There are also lots of solutions that can mitigate the problems you're describing. For example, the system can output the work plan in steps, and you can revise individual steps.

Yogthos

@david_chisnall furthermore, there are already approaches such as neuro-symbolic systems where deep learning is used to analyze input data, and encode it in a stable way that a symbolic logic system can operate on.

These types of systems are able to do actual reasoning about a problem, and explain their logic.

Of course, natural language interaction makes sense in some domains and not others. However, dismissing it as being useless is silly.

John Kavanagh

@david_chisnall

Most models trained by Adversarial Neural Networks (i.e. 2 machine learning algorithms working together: 1 suggesting, 1 discriminating the suggestions) have the human, and therefore expensive, limit of well-labelled input data. LLM input data is inherently labelled to perfection.

This is why they are great and a leap that should be relished. Open sourced models keep access to this wonderful technology in the hands of the many and not the few.

And why cars still need drivers

draNgNon has VOTED

@david_chisnall Star Trek is the source of a lot of ills. For example, most of the public thinks that challenging engineering issues in a hostile environment of radiation and vacuum can be solved in an hour.

Hedders

@david_chisnall ... and this is why lawyers have jobs. A fact I am profoundly grateful for, given I have bills to pay, but I do sometimes wonder whether there ought not to be a better way than arguing about the significance of a comma.

argv minus one

@hedders

As long as people want to weasel out of taking responsibility for the harm they cause to others, those others will need lawyers to hold them to account. I don't foresee those days ending any time soon, unfortunately.

@david_chisnall

Wren Reilly

@david_chisnall

Permanently disabled people who need voice interfaces exist.

Wilhelm Gere

@david_chisnall

Computer, fire.

Now is that open fire? Or there's a fire on the bridge?

Getting the correct weather out of Alexa is bad enough.

DELETED

@david_chisnall
Write instructions so someone else can do one of your jobs, with minimal training.
(It will take a week and a lot of revisions, because what you know that they don't is not obvious.)

🇺🇦 Oleksandr Kryvonos

@david_chisnall I will save this post for later until I experiment with one approach I have in mind

Wulfy

@david_chisnall

The principles embodied by #LLM (Language) models are actually used in other modalities of AI.

There are voice, image and video modalities e.g. #sora that are amazing for early versions.

Simplifying.

To traverse from State A to State C you have to traverse through B.
And if you feed enough learning data into the model, you will get amazing results.
Modality is immaterial.

argv minus one

@david_chisnall

Even in Star Trek, the dangers of using natural language to command a computer are sometimes shown. That's how Moriarty was created.

Shannon Clark

@david_chisnall exactly.

And further language is deeply contextual and not just about the previous words - about the context of a conversation, about the social status and physical/visual and other sensory cues that inform how we interpret words as does what each party knows about the others

And even with all those other contextual cues people misinterpret each other all the time (was that person I met just now hinting that they like me. Is my partner serious just now or being playful)

Jake in the desert

@david_chisnall FANTASTIC writeup. You nailed the whole thing.

Apostolis

@david_chisnall

Humans are able to recover the meaning of an ambiguous text.

On the other hand , a new version of a language can make a program not be able to compile. The compiler cannot understand the meaning of the program.

Ambiguity thus leads to antifragility. We need to able to recover from a certain number of errors.

ꜱᴛᴇᴇʟ ʀᴀᴛ ɢᴀᴍᴇʀ

@david_chisnall

Summary in Meme format why voice controlled appliances are bad and you do not need to talk to Majel Barrett-Roddenberry to get tea

Screen caps of TNG
P1 Shuttle craft near sun.
P2: DR Crusher "Computer notify me if external temperatures get too hot
P3: Computer *BEEP BEEP* "Define hot"
P4: "Lets say 1.9 million Kelvins
P5: Later Captain Picard "Computer, Tea: Earl Gray, Hot"
P6: NUKED
Justin du Coeur

@david_chisnall Reminds me (imprecisely) of one of the Nancy buttons I've had for many years (paraphrased from memory):

“It's easy to write a program that matches the spec.
It's impossible to write a spec that says what you want.”

Natural language is the new "spec”: the person saying it thinks that what they are saying is unambiguous, and they are always, always wrong.

James 🦉 #FBPE 🇪🇺

@david_chisnall Lofty ideals, but there's a reason Windows became more popular than Linux despite being worse. Ease. Same reason GUIs won out over command lines. It might be more efficient to do things the way you've described, but you're never going to get everyone to do it - they broadly want the easiest way, and there's probably no easier UI than natural language. Not sure LLMs, which are indeed horribly inefficient, are needed for natural language *input* though?

🇨🇦 AJ Armstrong

@david_chisnall Precisely. Using natural language to control things is cool until it goes wrong, and now you have a senior pilot sobbing and begging the airplane to stop trying to murder everyone. Mutatis mutandis for power generation, emergency services, healthcare, criminal justice, anything where the outcome actually matters. A tool that is fun but you would never use for anything important is a toy.

will talk for elePHPants!

Using natural language to control ANYTHING is so complex, most of the time even human beings fail.... youtu.be/Hr4TG0zr-6c

or

youtu.be/okkIyWhN0iQ

/cc @david_chisnall

Andreas K

@david_chisnall
That's why nailing down requirements is often the harder part than writing the code.

Implementing it on a way they does not ruin the architecture and say it's rough characteristics can also be hard.

But again writing the code to move data around etc is generally not the issue.
@LordCaramac

Andreas K

@david_chisnall
That's why nailing down requirements is often the harder part than writing the code.

Implementing it on a way they does not ruin the architecture and say it's rough characteristics can also be hard.

But again writing the code to move data around etc is generally not the issue.
@LordCaramac

JimmyChezPants

@david_chisnall

The underlying tech is *extremely* useful and could achieve things we can barely conceive of,

in the hands of capable programmers on modest hardware.

Instead, it's being used to free mediocre people from needing to interact with non-mediocre people.

edit: and all it's costing us is our ability to breathe! Even trade!

FoolishOwl

@david_chisnall Natural language is for talking with other people, who we shouldn't control. I think there's a related problem in there somewhere.

Julian Gonggrijp

@david_chisnall You seem to presuppose that LLMs perform some form of interpretation, even if they might disambiguate the user's natural language incorrectly. I think this is still wildly optimistic. They just attempt to predict what another natural language user might reply, based on what is essentially a huge compressed Markov model. A human doing that would interpret the message first, but an LLM skips that step altogether.

Felyashono

@david_chisnall
And yet you chose English, a High-Ambiguity Language (HAL), to express this idea. I suspect it could have been much clearer and more succinct if you'd used a Low-Ambiguity Language (LAL) like First Order Logic.

But your choice to use a HAL is likely the result of the underlying problem with your idea. LALs aren't universally accessible. Every LAL requires expertise, and using any LAL (incl. modern UIs) renders computers inaccessible to classes of people.

1/3

@david_chisnall
And yet you chose English, a High-Ambiguity Language (HAL), to express this idea. I suspect it could have been much clearer and more succinct if you'd used a Low-Ambiguity Language (LAL) like First Order Logic.

But your choice to use a HAL is likely the result of the underlying problem with your idea. LALs aren't universally accessible. Every LAL requires expertise, and using any LAL (incl. modern UIs) renders computers inaccessible to classes of people.

Tristan Harward

@david_chisnall not all UI interactions need to be completely unambiguous. And even with natural language there are ways to confirm and be sure.

IMO this remains the only / best use case for LLMs. They’re decent at converting language to action and translating in that specific way. Let’s use them for that, with lots of controls, and basically nothing else.

eribosot

@david_chisnall

"I'm sorry, I don't understand what you said, can you clarify?"

See how that works?

Yes, language is ambiguous, but when humans use it, it is also a two-way street, in which both parties are continuously tossing requests for information back and forth to remove the ambiguity and reach a common understanding.

Bakunin Boys

@david_chisnall if you're evil, a lot of those bugs look like features.

Aurora 🏳️‍🌈

@david_chisnall@infosec.exchange I think something that laypeople assume about LLMs is that they are smart enough to figure out what they mean from ambiguous language. People that don't work with programming or other computer tasks assume it is easy for the computer to "just make it understand what I want it to do" when in reality it is almost impossible.

Alex Boisvert

@david_chisnall 100% -- people want to believe that LLMs will magically "do the right thing" (or more surreal, "do what I think") despite all the ambiguity, possibilities, and complexity underlying the task.

Irenes (many)

@david_chisnall the other thing we think gets missed a lot is that language-based interfaces are the tyranny of the blank page, in the same way as command lines are

it can be anything (assuming it works, at least, which with LLMs is a big if)............ but first you have to know what you want it to be

Rich Felker

@david_chisnall 🔥🔥🔥 indictment of LLMs 👆

"In C, compilers do this for undefined behaviour and it is widely regarded as a disaster. LLMs are built entirely out of undefined behaviour."

M. The Crystalline Entity

@david_chisnall

“Fruit flies like a banana.”

It is indeed unsolvable.

Go Up