look up “sentiment analysis NLP”. That is what you want, except instead of detecting whether text has a positive or negative opinion, you detect whether it’s “cringe” / “not cringe”.
I would start by building a sentiment-analysis model by following a tutorial like [1]. Except instead of a dataset with data labeled “positive opinion” and “negative opinion”, you need data labeled “cringe” and “not cringe”. The hard part is finding and classifying that data: remember that if you just take a bunch of “cringe” and ordinary tweets, you may be training for spurious correlations like “hot take” which your model will misinterpret as being “cringe”
if trained via reddit, i think you could call any content cringe. maybe by finding people from different segments to rate whether certain content is cringe.