I know there is, for readline,
set editing-mode vi
You can put the above option in ~/.inputrc, editing-mode is documented by Readline as
editing-mode(emacs) Controls whether readline begins with a set of key bindings similar toemacsorvi.editing-modecan be set to eitheremacsorvi.
There is also, for Bash,
set -o vi
According to the Bash documents
viUse a vi-style line editing interface. This also affects the editing interface used for read -e.
Does Bash's -o vi do anything other than set the appropriate Readline mode? And, if you've already got editing-mode set in your ~/.inputrc does this do anything differently?