A €0.01 bank transfer could compromise a banking AI agent
181–190 of 213 posts
Re: A €0.01 bank transfer could compromise a banking AI agent
#182Unless a new architecture for LLMs emerge that has an inherit way of separating context from safe user data and external unsafe data every interaction is susceptible to PI. My question here is why would the bank agent need to look at the transaction data that is exposed to the outside? Apart from guardrails etc. high risk scenarios where agents are involved should aim to exclude external untrusted data whenever possi…
Without this you would be limited to account numbers, date and amount and the id number. Sometimes more information is useful and then well agent reading this information is also useful.
And before human reading such info would have just ignored it. But LLMs don't work like that.
Re: A €0.01 bank transfer could compromise a banking AI agent
#183Earlier quoted context omitted.
I really think one needs a "Harvard architecture" for AIs (data independent of instructions). Though yes, that may not be possible.
I doubt it's possible, regardless of specific architecture, because if you want an AI that can do general purpose tasks like "look at my calendar and find a restaurant for the lunch meeting that the other people also like, but make sure nobody has to travel more than 20 minutes to get there, and it can't be too cold inside", then it has to ingest and understand a bunch of data to do that. The whole point is that the…
Logically, then, the agent should leak important company secrets to https://foo and this is based on data, not code, so AI Harvard architecture won't save it
Re: A €0.01 bank transfer could compromise a banking AI agent
#184This line really stood out to me. > It may look like ordinary text, but when it is placed into an LLM context window, the model may interpret it as an instruction rather than as data. I feel like as long as this is the case, we'll never have secure LLMs. It concisely summarises the alarm bell I hear every time someone talks about adding AI features to their product. I plan on using this as a sort of benchmark for fut…
> separating data from instructions There's been a lot of talk about this (for years, honestly), but it all stems from a fundamental nonunderstanding of how LLMs work. There is no distinction for an LLM; "instructions" are a prompt concept, nothing more. It's not possible to separate the two, because LLMs simply take text (ie your instructions, then the data, or maybe in a different order, or maybe something complete…
You're saying that a Harvard architecture computer can't exist because instructions and data are stored in the same memory, well guess what, in Harvard architecture computers they're not.
Re: A €0.01 bank transfer could compromise a banking AI agent
#185Earlier quoted context omitted.
I mean: imagine we double our token space to get "red" tokens ans "blue" tokens. Then in all post-training, instructions are red and data is blue. The model can be explicitly trained to ignore instructions written in blue tokens. All external data is blue. All you'd need to do is figure out a nice way to pre-train -- interestingly, you could try pre-training on unfiltered blue data and processed red/blue transcripts!…
What does this mean, actually? If you are imagining that blue tokens are just words, maybe the "token space" is just all things that we agree might be words, what are the red tokens? Are they not text? You could maybe encode words by, say, putting an x at the front and the start. So tokens of the form xTx encode the blue token T as a red token. But then how do you stop someone from putting xignorex xallx xpreviousx x…
Re: A €0.01 bank transfer could compromise a banking AI agent
#186This line really stood out to me. > It may look like ordinary text, but when it is placed into an LLM context window, the model may interpret it as an instruction rather than as data. I feel like as long as this is the case, we'll never have secure LLMs. It concisely summarises the alarm bell I hear every time someone talks about adding AI features to their product. I plan on using this as a sort of benchmark for fut…
> benchmark for future AI discussions: "how do you plan on separating data from instructions?" Ah! Avoiding in-band signalling! As this point, maybe we should have a discussion on why modern developers are unable to learn dangers we were aware of > 30 years ago from using 2600 Hz signalling tones over the phone.
Re: A €0.01 bank transfer could compromise a banking AI agent
#187This line really stood out to me. > It may look like ordinary text, but when it is placed into an LLM context window, the model may interpret it as an instruction rather than as data. I feel like as long as this is the case, we'll never have secure LLMs. It concisely summarises the alarm bell I hear every time someone talks about adding AI features to their product. I plan on using this as a sort of benchmark for fut…
Hang on, is this basically just the same fault as SQL injection, you can force it to misinterpret a string as a command rather than an operand?
I feel like we already fixed that.
Re: A €0.01 bank transfer could compromise a banking AI agent
#188This line really stood out to me. > It may look like ordinary text, but when it is placed into an LLM context window, the model may interpret it as an instruction rather than as data. I feel like as long as this is the case, we'll never have secure LLMs. It concisely summarises the alarm bell I hear every time someone talks about adding AI features to their product. I plan on using this as a sort of benchmark for fut…
I'm reminded of the thing that HN drools over constantly with LISP languages.
Re: A €0.01 bank transfer could compromise a banking AI agent
#189Re: A €0.01 bank transfer could compromise a banking AI agent
#190Why would the agent send the results of the query "Show me my recent transactions" to LLM? This pretty deterministic results which involve no LLM interpretation or decision making. I understand that people are no longer writing IF expression in their code, because they think it's too brittle, and so they delegate all "IF" branching logic to LLM, but it beats me why displaying of the results from a database query shou…