Wick's Theorem for Calculating the Vacuum Functional

The vacuum functional of a theory of free fermions is the overlap between the bare vacuum and the interacting vacuum (i.e. the true groundstate of the Hamiltonian). If the theory preserves particle number, then $$|\Omega\rangle = |0\rangle,$$ And the vacuum functional is equal to one. If this is not the case, then there is still often a way to write the vacuum functional as $$\bigg\langle \prod_{k}e^{\,i\,\theta_k(\eta_k+\eta_k^\dagger)(\eta_{-k}-\eta_{-k}^\dagger)}\bigg\rangle_0,$$ where the $\eta_k$ are the quasiparticles that diagonalize the Hamiltonian, and $\langle\rangle_0$ denotes expectation value with respect to the bare vacuum. If we define $$U_k:=e^{\,i\,\theta_k(\eta_k+\eta_k^\dagger)(\eta_{-k}-\eta_{-k}^\dagger)}\in \text{Spin}(2),\,\,\,\,\,\,\,[U_k,U_{k'}]=0$$ Then the vacuum functional is now the expectation value of simple commuting operators, which also happen to be two-dimensional rotations of some sort. If we carry out the exponential in $U_k$, then Wick's theorem gives us an exponential-time algorithm for evaluating the vacuum functional.

Can we do better than Wick's theorem? i.e., is there an efficient, i.e. polynomial-time algorithm for evaluating the vacuum functional that takes advantage of the fact that it is an expectation value of commuting operators?