1. A method for using user preferences to customize answer output comprising the steps of: extracting, by a natural language processor, from a first question one or more user preferences for a first user and one or more sentiment levels for a first user; performing, by a computer, a first semantic search on of the first question; receiving, by a computer, a plurality of candidate answers from the first semantic search; selecting, by a computer, one or more of the received candidate answers according to the one or more sentiment levels, or according to the one or more user preferences, or both; and producing, by a computer, an output including the selected one or more candidate answers.