These are determined and labelled algorithmically, and are based on the 5 cards "closest" to a point in vector space. "Concepts" are generated using k-means clustering, using the vector at the cluster center. They are labeled using the openai api (i.e., chat-completions). So if they don't make sense, blame chatGPT.