Can AWS really fix AI hallucination? We talk to head of Automated Reasoning Byron Cook
- Reference: 1736253013
- News link: https://www.theregister.co.uk/2025/01/07/interview_with_aws_byron_cook/
- Source link:
Amazon Bedrock is a managed service for generative AI applications and according to AWS CEO Matt Garman, who spoke at the re:Invent conference in Las Vegas last month, the checks "prevent factual errors due to model hallucinations... Bedrock can check that the factual statements made by models are accurate."
This, he said, is all based on "sound mathematical verifications."
[1]
AWS CEO Matt Garman describes Automated Reasoning for Bedrock
These are big claims. What lies behind them? Byron Cook, who leads the AWS Automated Reasoning Group, while also being professor of computer science at University College London, tells The Register :
A lot of people don't understand that they've tricked programmers into doing proofs of memory safety, and the borrow checker in Rust is essentially a deductive theorem prover. It's a reasoning engine ...
"I've worked in the space of formal reasoning and tools for doing that. I brought this sort of capability to Amazon starting about 10 years ago, and then there's been some application to AI. Now suddenly my area, which was extremely obscure before, is suddenly not obscure."
How can the risk from AI hallucination be mitigated, is the problem solvable?
[2]
"Hallucination in a sense is a good thing, because it's the creativity. But during language model generation, some of those results will be incorrect," he says.
[3]
[4]
"But then, incorrect under whose definition? It turns out that to define what truth is, is surprisingly hard. Even in an area where you would think everyone should agree.
"I've worked in aerospace, railway switching, operating systems, hardware, biology, and in all of those domains what I have seen is the majority of the time spent when building these kinds of tools is with domain experts arguing about what the right answer should be, driven by specific examples that come and hit at the corner cases."
[5]
Cook adds: "The other thing is, there are problems that are undecidable. That has been proved by Turing, for example. There can be no procedure to always, authoritatively, with a finite amount of time, answer the questions with 100 percent accuracy.
"If you try and chunk up the domain of all statements, there are some that are relatively formalizable, and others that are not. What makes good music is going to be very hard to formalize, and people may have some theories on that, but they probably disagree amongst themselves. Other areas are like biology, there are models of how the biological systems work, but part of what they are doing is taking those models and then inspecting the real system. They're trying to improve the model, so the model probably is wrong. Under those caveats, there's a lot you can do."
[6]
Byron Cook, who leads the AWS Automated Reasoning group
Cook describes the [7]Automated Reasoning tool, making reference to example cases like determining the correct tax code for an individual based on their income statements.
But humans hallucinate too … as a society we are always chipping away at what is truth and how do we define it and who decides what it gets to be
The tool, he says, "takes statements in natural language and translates that into logic, and then proves or disproves the validity under that domain. How can that go wrong? There's opportunity for the translation from natural language to logic to get a little bit wrong. And then the people deciding on what is the tax code and formalizing that may get that wrong. It is still possible therefore to get incorrect answers, but under the assumption that we got the translation right, and under the assumption that we help the customer formally define [the rules], we can build an argument in mathematical logic that is proved correct, that the answer they got is correct."
Hallucination, says Cook, "is a problem we'll have to live with for a long time. But humans hallucinate too … as a society we are always chipping away at what is truth and how do we define it and who decides what it gets to be."
We ask Cook to comment on a well-known case of AI hallucination, a lawyer who [8]cited cases invented by Open AI's Chat GPT . Cook says it was not quite the kind of hallucination the automated reasoning tool could solve. "We could build a database of all known [legal case] results and formalize them," he says. "I'm not sure if that would be the best application."
[9]
What about software developers keen to know if the algorithm AI has generated for them is correct? "This product is not designed for coders," says Cook. "But it has not escaped our notice. What we've been doing is actually reasoning about code … I've been proving programs correct for 25 years. It's the domain of very large enterprises that have very important assets, because it was so challenging to do. But the generative AI seems poised to be able to lower that barrier of entry significantly, to help you formalize what it is you want to prove of your program. It is quite exciting, but that's aside from the [automated reasoning] product."
[10]AWS says AI could disrupt everything – and hopes it will do just that to Windows
[11]Cheat codes for LLM performance: An introduction to speculative decoding
[12]Google reportedly developing an AI agent that can control your browser
[13]AI code helpers just can't stop inventing package names
Cook's team has worked on other problems at Amazon, such as proving that access control policies were working as expected, and similarly for encryption, networking, storage and virtualization. It turns out, he tells us, that being able to prove code mathematically correct has beneficial side-effects, one being more efficient code.
"When you have an automated reasoning tool checking your homework, you can be much more aggressive in the optimizations you perform. What developers do when they don't have that capability is quite conservative, call it defensive coding if you like. With these tools they can perform optimizations that would otherwise be quite scary for them. We give them a lot of safety."
He adds that Rust is a natural fit for provable programming. "When you're programming in Rust, you're actually using a theorem prover. A lot of people don't understand that they've tricked programmers into doing proofs of memory safety, and the borrow checker in Rust is essentially a deductive theorem prover. It's a reasoning engine. The developer is guiding the tool … Rust can be faster than C, and the reason is that it's able to do clever things with memory that they couldn't do in C, and certainly can't do in Java or other languages, because they've gotten the programmer to do proof.
"So Rust is a very clever integration of automated reasoning techniques, together with the type system, together with the compiler, and then they have very nice error messages that make the tool very usable. So we've seen great results from moving to Rust for certain kinds of programs." ®
Get our [14]Tech Resources
[1] https://regmedia.co.uk/2025/01/06/aws-automatedreasoning-1024x590.jpg
[2] https://pubads.g.doubleclick.net/gampad/jump?co=1&iu=/6978/reg_software/aiml&sz=300x50%7C300x100%7C300x250%7C300x251%7C300x252%7C300x600%7C300x601&tile=2&c=2Z31dtzfmiQq7f-id6OA2cQAAAQw&t=ct%3Dns%26unitnum%3D2%26raptor%3Dcondor%26pos%3Dtop%26test%3D0
[3] https://pubads.g.doubleclick.net/gampad/jump?co=1&iu=/6978/reg_software/aiml&sz=300x50%7C300x100%7C300x250%7C300x251%7C300x252%7C300x600%7C300x601&tile=4&c=44Z31dtzfmiQq7f-id6OA2cQAAAQw&t=ct%3Dns%26unitnum%3D4%26raptor%3Dfalcon%26pos%3Dmid%26test%3D0
[4] https://pubads.g.doubleclick.net/gampad/jump?co=1&iu=/6978/reg_software/aiml&sz=300x50%7C300x100%7C300x250%7C300x251%7C300x252%7C300x600%7C300x601&tile=3&c=33Z31dtzfmiQq7f-id6OA2cQAAAQw&t=ct%3Dns%26unitnum%3D3%26raptor%3Deagle%26pos%3Dmid%26test%3D0
[5] https://pubads.g.doubleclick.net/gampad/jump?co=1&iu=/6978/reg_software/aiml&sz=300x50%7C300x100%7C300x250%7C300x251%7C300x252%7C300x600%7C300x601&tile=4&c=44Z31dtzfmiQq7f-id6OA2cQAAAQw&t=ct%3Dns%26unitnum%3D4%26raptor%3Dfalcon%26pos%3Dmid%26test%3D0
[6] https://regmedia.co.uk/2025/01/06/byron-cook-aws-887x1024.jpg
[7] https://aws.amazon.com/what-is/automated-reasoning/
[8] https://www.theregister.com/2023/06/22/lawyers_fake_cases/
[9] https://pubads.g.doubleclick.net/gampad/jump?co=1&iu=/6978/reg_software/aiml&sz=300x50%7C300x100%7C300x250%7C300x251%7C300x252%7C300x600%7C300x601&tile=3&c=33Z31dtzfmiQq7f-id6OA2cQAAAQw&t=ct%3Dns%26unitnum%3D3%26raptor%3Deagle%26pos%3Dmid%26test%3D0
[10] https://www.theregister.com/2024/12/04/amazon_leans_into_ai/
[11] https://www.theregister.com/2024/12/15/speculative_decoding/
[12] https://www.theregister.com/2024/10/28/google_ai_web_agent/
[13] https://www.theregister.com/2024/09/30/ai_code_helpers_invent_packages/
[14] https://whitepapers.theregister.com/
Re: Yawn (again)
Of course, downvoting is _so_ much easier than defending the indefensible.
This person has a properly interesting job, I'm interested in hearing from him.
Are you Steve "Interesting" Davis?
Hallucination aka Wrong
I prefer not to anthropomorphise and call this problem Hallucination. Instead I keep things simple and call the results “wrong”.
What a mess…
Re: Hallucination aka Wrong
If people really want to anthropomorphise then let's call it what it is : schizophrenia ...
Re: Hallucination aka Wrong
I like "Gaslighting" because not only does it make things up, it has a shocking tendency to lie about it when pressed.
Re: Hallucination aka Wrong
> let's call it what it is : schizophrenia
A more accurate term would be lying.
Re: Hallucination aka Wrong
I prefer not to anthropomorphise
You should never anthropomorphise your computers. They don't like that.
"Cook says it was not quite the kind of hallucination the automated reasoning tool could solve."
...except that's precisely the kind that actually matters. It made something up. Something that did not in fact happen.
It's not a question like "Is The Black Album good?" to which there really is no answer, because the judgement is aesthetic. You can hate it, or love it, you could argue about if the mix is technically good perhaps for a particular vinyl or CD release... but is it good? Well, you like it or not I guess.
Ultimately the latter question is unimportant for AI to answer, because it's unimportant for anyone to answer. There isn't an answer. But inventing things and asserting them as facts? Kinda more important that one.
"What developers do when they don't have that capability is quite conservative, call it defensive coding if you like."
Maybe somebody developing, let's say an HR system, might decide it defensive to check whether getting struck by a motor vehicle and shot in the foot is something that might require sick leave. It might also include things like checking that a driver has delivered all the packages that should have been delivered at a delivery point, checking that everything that went into a warehouse can be found when it's time to despatch and a whole lot of other things that Amazon coding doesn't do.
We ask Cook to comment on a well-known case of AI hallucination, a lawyer who cited cases invented by Open AI's Chat GPT. Cook says it was not quite the kind of hallucination the automated reasoning tool could solve. "We could build a database of all known [legal case] results and formalize them," he says. "I'm not sure if that would be the best application."
If you're going to provide cases to cite in a legal argument I'd have thought that it would be an essential application. Or is he saying that the citation provider isn't the best application?
You can have a database of all legal cases, sure, but you still need to understand whether they are relevant to your situation, and you are likely going to have to ask more questions to get the necessary information.
The legal profession is already filled with databases of existing legal cases with extensive search facilities.
The correct answer from AI should be "I don't have a fucking clue, how about you go and consult one of the existing, competent legal databases run by actual lawyers?"
It's like your overconfident bullshitting mate down the pub whose ability to make shit up was killed by the advent of google (this definitely wasn't me, of course not)
Only a little bit wrong
>There's opportunity for the translation from natural language to logic to get a little bit wrong
Good that it's only a "little bit". (He didn't try to justify that claim with formal logic).
Perhaps getting the translation right is important. Perhaps it can't be done in most of the situations that AI is being thrown at.
Re: Only a little bit wrong
Natural language is generally horrible for expressing logic. What language? you might say.
I suspect that people using this "technology" in future will need to be fluent in at least one of the _very few_ languages with enough internet data to snaffle^H^H^H^H^H^H^Htrain on . . . the others (languages, not people!) will simply wither & die.
Re: Only a little bit wrong
[1]Code. It's called code.
This is why we have formal language specifications for doing coding. I translate what I intend to mean in English that has multiple potential interpretations into something formally complete that means precisely one thing such that the compiler/interpreter will always do the same thing when presented with it.
[1] https://www.commitstrip.com/en/2016/08/25/a-very-comprehensive-and-precise-spec
>A notable flaw of AI is its habit of "hallucinating," making up plausible answers
LLMs don't make up answers. They make up probabilistically generated sequences of words.
Some humans interpret them as "answers".
LLMs are not "coded" - there is no source code you can analyse to prove that it is mathematically correct. LLMs are statistical black boxes: we don't know how or why they generate their output, other than the output will be plausible compared to the material used to train the LLM statistical model.
LLMs are bullshit-generators, nothing more.
This Automated Reasoning thing is something completely separate, some programmed logical way to decide whether the bullshit is "true" or not (at a given point in time, as "truth" is a function of time).
But if we have Automated Reasoning, we don't need LLM bullshit-generating "Artificial Intelligence" in the first place!
The answer is No
You can't fix LLM hallucination, because the very concept of using a Large Language Model for anything other than modelling language is fundamentally flawed.
Sure, if you ask an LLM "What is the Capital of Japan", it can do its statistical analysis of its training set and find that "Tokyo" is the word that most often comes up; but you don't need AI to answer that question. Any question that requires any sort of ability to answer rather than just memorising facts; an LLM has no chance.
Oh, like Prolog?
That's what this sounds like—translate natural language into propositions and implications, and then run it in Prolog.
The formal verification of code he's talking about is much more useful than AI will ever be. Nice points about Rust, especially.
Hallucination in a sense is a good thing, because it's the creativity
No, it's the wrong. Away with this bollocks.
Yawn (again)
Flannel + bullshit + bollocks
Marketing wins every time!