If you look at the examples for Cosine Similarity in the docs, you'll see an example of using node properties for similarity calculations:
MATCH (c:Cuisine)
WITH {item:id(c), weights: c.embedding} AS userData
WITH collect(userData) AS data
CALL gds.alpha.similarity.cosine.stream({
data: data,
skipValue: null
})
YIELD item1, item2, count1, count2, similarity
RETURN gds.util.asNode(item1).name AS from, gds.util.asNode(item2).name AS to, similarity
ORDER BY similarity DESC
The collect takes the node properties (c.embedding) and uses those to calculate similarities between cuisine nodes.