I setup an IRC server with several bots of different types, but have run across some recent code on github.com - the python markovify class. It has some form of natural language processing, but now it depends on the input, and the lyrics I fed into it from genius.com need to be manually gone over, so he is still hit or miss.