Honestly, for Karlsson, anything from 3-6 years at 5 million per year should easily get it done.
He is an RFA, scored 6 goals last year and showed very little in parts of three NHL seasons before this one. And this season he has stood out by scoring a lot of goals but that's been accompanied by a very high shooting percentage you wouldn't expect anyone to maintain over multiple seasons.
Added onto the fact that, as has been pointed out, that his success has been very tied into his linemates play and you can easily draw the line at a similar, possibly even slightly smaller, contract to Marchessault and Smith, who both have 6 year, $30 million deals ($5 million per) I believe.