The stackengine package already supports this construction with \bracketVectorstack, which I bundle in the form asked for by the OP. Of course, it is not actually using bmatrix.
Note that if matrix construction is needed rather than vectors, look for the extensions provided by the tabstackengine package. Also, the inter-row baselineskip can be altered with, for example, \setstackgap{L}{1.2\baselineskip}.
\documentclass{article}
\usepackage{stackengine}
\newcommand\Vector[1]{\setstackEOL{,}\bracketVectorstack{#1}}
\begin{document}
\[
X = \Vector{1,2,3,4} \ne \Vector{1,x,3}
\]
\end{document}

Narguments (although in many cases they do no harm); there's no need to clear the clist, if you set it afterwards. – egreg Sep 29 '15 at 21:05