You could also use the -w flag of uniq which tells it to only compare the first N characters. The details of whether this will work for you depend on your actual data but if the word lengths are set or limited, it should work:

$ sort file.txt | uniq -w 5
word1 abca
word2 abca
word3 abbb

Alternatively, reverse the order of the fields and use uniq -f 1 to skip comparing the 1st field: