This is roughly the same idea as Scoranio's answer, but with more details filled in. (And some changed; e.g., I don't think making the $y_k$ in the last query increase rapidly is actually the point. And with a proof that the number of queries achieved here is actually optimal.)
[EDITED to add: But the proof is wrong! See below.]
First of all, make Scoranio's first two queries: all-1 and half-1 half-(-1). If one number is $a$ and the other $b$ then these yield $a+2015b$ and $\pm(a-b)$ respectively; each possible choice of $\pm$ yields (by solving a pair of linear equations in $a,b$) one possible pair $(a,b)$.
(We might get lucky and find that only one of them makes $a,b$ integers, but let's not depend on that.)
OK. Now if we pick any sequence of different numbers $y_1,\dots,y_{2016}$ and query with that, we get $s=(\sum y_i)b+y_k(a-b)$ where $k$ is the index that has $a$ rather than $b$, so if we know $(a,b)$ this tells us what $k$ is: it's the one with $y_k=[s-(\sum y_i)b]/(a-b)$.
We don't quite know $(a,b)$ at this point. But if we can arrange that the values $(\sum y_i)b+y_k(a-b)$ for our two possible choices of $(a,b)$ are all different, our third query will finish the job. I don't think just making the $y$ grow rapidly as per Scoranio's answer actually helps with that, but fortunately it will turn out to be easy to accomplish.
So, suppose our first two queries yield answers $u,v$. Then we have either $(a,b)=(\frac{u+2015v}{2016},\frac{u-v}{2016})$ or the same with $v$'s sign changed; that is, $(a,b)=(\frac{u-2015v}{2016},\frac{u+v}{2016})$.
So the possible results of our third query are, in the first case,
$$\left\{\left(\sum y\right)\frac{u-v}{2016}+y_k v\right\}$$
and in the second case
$$\left\{\left(\sum y\right)\frac{u+v}{2016}-y_k v\right\}.$$
Provided the $y$ are distinct, there are no repeats within either of those; we need to arrange that we also never have
$$\left(\sum y\right)\frac{u-v}{2016}+y_i v = \left(\sum y\right)\frac{u+v}{2016}-y_j v.$$
Cancelling the $u$s, dividing out the $v$s, and rearranging a bit, this is equivalent to never having
$$y_i+y_j = \frac{\sum y}{1008}.$$
(In other words, the average of two of the $y$ never equals the average of all of the $y$.) This is actually incredibly easy to arrange: just ensure that $\sum y$ is not a multiple of 1008. For instance, let them be $1,2,3,\dots,2015,\textbf{2017}$.
I think this successfully does it in
three queries;
it remains to show that we can't do it in fewer. So, keeping the same notation as above, suppose we have the answers to queries $y$ (issued first) and $z$ (which may depend on the response to the first query). Then we know $(\sum y)b+y_k(a-b)=u$ and $(\sum z)b+z_k(a-b)=v$ for some $u,v$, and that's all we know.
Suppose Alice responds to the first query with $u=0$, and to the second with $v=(z_1\sum y-y_1\sum z)(z_2\sum y-y_2\sum z)$. Then, if my back-of-envelope algebraic scribblings are correct, we can take either $k=1$ or $k=2$ and set $(b,a-b)=(-y_k,\sum y)v/(z_k\sum y-y_k\sum z)$ which, with the choice of $v$ given above, will both be integers.
Worked example, just to sanity-check the above: suppose the first query is all-1 and the second is $1,2,3,\dots,2016$. Then we have $\sum y=2016$, $\sum z=2033136$, $z_1\sum y-y_1\sum z=-2031120$, $z_2\sum y-y_2\sum z=-2029104$; so Alice's responses are $u=0$ and $v=\Delta_1\Delta_2$ where the $\Delta$s are those two big negative numbers. Taking $k=1$ gives us $(b,a-b)=(-1,2016)\Delta_2$ hence $a=2015\Delta_2,b=-\Delta_2$. Does that work out? The first query gives $a+2015b=(2015-2015)\Delta_2=0$ as required; the second gives $a+(2+3+\cdots+2016)b=(2015-(2+3+\cdots+2016))\Delta_2$ and you may readily check that that factor on the RHS is indeed $\Delta_1$. And likewise if we take $k=2$ and $(b,a-b)=(-1,-2016)\Delta_1$. So indeed Bob can't determine $a,b,k$ from the results of these two queries, and the construction above works no matter what two queries Bob chooses. Therefore
at least three queries are needed in the worst case, and therefore 3 is the required number.
[EDITED to add:]
There is a mistake in the proof above, which you will find if you carefully attempt to use it to refute the Ivo Beckers / A Smith answer that claims to solve the problem with two queries. If the first query, like the one they use, has the property that when it returns zero all the numbers have to be equal, then the fact that we can't determine $k$ in that case is not a problem! If the Beckers/Smith answer is correct (I'm not sure whether it is; there's something that looks like a hole but it seems like a small hole and may be patchable) then obviously my proof must be unfixable.
... OK, I think the hole in the Beckers/Smith solution is patchable and my proof therefore unfixable; see comments to A Smith's answer.