I'm not an expert, but I know the answers so I'm chiming in regardless
1 keyword.
Of course, if you're going to cover a big topic in full you'll use many keywords that could be considered main keywords, but usually you optimize for 1 keyword only
1 main keyword for sure, but how many related keywords you'll have depends on the length of your content. I mean, there are cases in which you could rank without adding related keywords, but that would be wasted opportunity because the more keywords you can rank for with the same piece of content the more traffic you'll get, so it makes sense to include related keywords into each piece of content that you write, especially since this is pretty standard nowadays in terms of on-page SEO
And the length of the content can be decisive for how many keywords you target because if you write a 400 words article, for example, but you want to use 20 related keywords in that piece of content you will most likely run into keyword stuffing / over-optimization issues. So, a few related keywords (2-5 for example), would be a good number in this scenario.
But if you write a 3000 words article and you only include 5 related keywords, for example, then this is obviously a wasted opportunity to insert more related keywords for more relevant traffic.
While there is no number written in stone, I personally like to use 1 related keyword every 50-100 words.
again, it comes down to the length of your content and to how much sense it makes to have those keywords in there. If you're going to insert 15 related keywords into a 600 words article I dare predict that your article will not read very well, and could even be flagged for keyword stuffing.
But if you insert them into a 2000 words article then yeah, you might make something useful with them.