On a first quick pass, this looks so good that I'm wondering if it's too good to be true ! But the work looks to be of decent quality and the technique is remarkably straightforward: The idea is to apply attention over the first token and a sliding context window, ignoring everything in-between, in each layer. By implication, each layer must be gradually shifting relevant information forward in the sequence, enabling…
Efficient streaming language models with attention sinks
11–20 of 75 posts
Re: Efficient streaming language models with attention sinks
#12Re: Efficient streaming language models with attention sinks
#13My naive question is...does it work? But that sounds dismissive. At length:
It shows that the model can't respond after a certain length versus a proposed model that does continue to respond.
But can a model that continues to respond retrieve information far "in the past"?
The demo video is too low-level, at least to my brain. It shows one model stops responding but the proposed one continues.
I spent about 5 minutes going frame by frame to see if the proposed model attempts to have to "recall" information from further back, but it looks like no.
Perfection here isn't necessary or even possible AFAIK, i.e. I don't expect it to recall page 1 100% accurately at page 1000. But can it recall _anything_ from it, even if it ignores it?
The great thing about this era and work is we can check. But I hope someone has it up in a HuggingFace space before I figure out how to run it myself. :P
I'm leaning no, based on the sliding window thing. It sounds like there's 4 fixed tokens, then the last context size - 4 tokens, that's it
* at the time, two camps: one, it's some random person saying it and there's prior art on implementations that do the off-by-one. Two, you'd be surprised how much little things go unnoticed by large groups, and do matter.
Re: Efficient streaming language models with attention sinks
#14Having only read the abstract, I'm probably way off the mark here, but my first thought was: LLM + LSTM.
Re: Efficient streaming language models with attention sinks
#15So can it now understand and write complete applications?
But this stuff keeps on surprising me.
Re: Efficient streaming language models with attention sinks
#16If anyone is curious, there was another paper [0] that came out a few days ago that made a related observation in Vision Transformers. Transformer models appear to pick tokens to store global information in - they need tokens to "think". You can eek some performance improvements (and cool explanation images) by providing the model with specific tokens for this purpose.
Re: Efficient streaming language models with attention sinks
#17How do any of these sliding window techniques handle instructions that are non expected and only show up at the end? For example imagine feeding a book to the model and the last sentence being the instruction “return the count of the letter m in the previous input”. A human would handle this by first letting out an exasperated sigh but then restarting the reading while counting. An LLM has no ability to loop back and…
Or you just use a quick model to check if there area instructions at the end and bring it to the beginning.
Re: Efficient streaming language models with attention sinks
#18How do any of these sliding window techniques handle instructions that are non expected and only show up at the end? For example imagine feeding a book to the model and the last sentence being the instruction “return the count of the letter m in the previous input”. A human would handle this by first letting out an exasperated sigh but then restarting the reading while counting. An LLM has no ability to loop back and…
Re: Efficient streaming language models with attention sinks
#19Re: Efficient streaming language models with attention sinks
#20How do any of these sliding window techniques handle instructions that are non expected and only show up at the end? For example imagine feeding a book to the model and the last sentence being the instruction “return the count of the letter m in the previous input”. A human would handle this by first letting out an exasperated sigh but then restarting the reading while counting. An LLM has no ability to loop back and…
Maybe I'm misunderstanding, but doesn't the hidden state solve the "lookup" problem in this case? In the sense that the LLM needs to ingest your entire input anyway before answering, then whether your instruction is at the front or at the end carries little impact besides on attention.