> Copilot queries the model relatively infrequently
Huh? It queries whenever you stop typing.
> Copilot does not suggest code in the middle of the line, as its AI model is not best suited for this purpose
This is at best false, at worse disingenuous. Yes, it won't insert a completion in the middle of a line, but this is trivially solved by inserting a newline in the middle of the line and then triggering a completion at the end of the line you just created.
> In addition, Tabnine makes a firm and unambiguous commitment that no code the user writes is used to train our model.
Copilot has this option too...
> Copilot uses one universal AI model, which means that every user is getting the same generic assistance based on an “average of GitHub”, regardless of the project they're working on.
I mean, anyone who has used Copilot for more than 5 seconds would know that this isn't true. Copilot does a fantastic job at reading the current file and providing suggestions relevant to the file, rather than some hypothetical "average of GitHub"