How do you pronounce "but"?

Solution 1:

Your question is related to phonology.

Usually all words have a stressed syllable, those who don't have such feature are usually monosyllables (they are typically function words or grammatical words/particles), and so they have a weak form and a strong form.

Those words are (I'll paste it from Wikipedia because I don't remember them all):

a, am, an, and, are, as, at, be, been, but, can, could, do, does, for, from, had, has, have, he, her, him, his, just, me, must, of, shall, she, should, some, than, that, the, them, there, to, us, was, we, were, who, would, you

As you can see, "but" is on the list. The pronunciations you listed for it, [bʌt] and [bət], are respectively the strong form and the weak form.

Now, I don't remember exactly all the cases (I should look back in my notes because I did this at university), but usually the weak form is used in normal speech, unless you emphasize it then you use the strong form. Another distinction is between "particle used at the end of the sentence" vs. "particle used before a noun", for example:

I found what I'm looking for. --> [fɔː(r)]
I'm looking for money. ---------> [fə(r)]

Look here if you want to hear the pronunciation. (Check the BrE one, it gives the idea better.)

Solution 2:

The word is similar to a and the (ā vs. ə and ðē vs. ðə). The stressed bʌt tends to be used more when I am emphasizing that I am making a contrast:

I would go, but my parents won't let me. (whining teenager)

The unstressed bət is used more often when what I am saying is more important than the fact that there is a contrast:

...but I don't wanna go! (whining child)