I am using Python and NLTK to build a language model as follows:
from nltk.corpus import brown
from nltk.probability
As regards your second question: this happens because "b" doesn't occur in the Brown corpus category news, as you can verify with:
>>> 'b' in brown.words(categories='news')
False
whereas
>>> 'word' in brown.words(categories='news')
True
I admit the error message is very cryptic, so you might want to file a bug report with the NLTK authors.