graphragzen.merge.merge_nodes.find_similar_nodes
- graphragzen.merge.merge_nodes.find_similar_nodes(nodes, feature_names, embedding_vectors, min_similarity=0.95, embedding_source=None)[source]
Finds nodes who’s embedding vectors are > min_similarity. Does this for each unique feature in feature_names.
- Parameters:
nodes (list[str]) – List of node names.
feature_names (list[str]) – List of the features of the nodes that were imbedded
embedding_vectors (np.ndarray) – The embedding vectors of the features. Should have shape (num_nodes, embedding_vector_size).
min_similarity (float, optional) – Minimum similarity for 2 nodes to be concidered similar. Defaults to 0.95.
embedding_source (list, optional) – The raw text that was used to create the embedding vectors. Will be added to the returned report. Defaults to None.
- Returns:
- Contains columns
’nodes’: nodes that are similar, tuple, (node1, node2)
’similarity_score’: How similar the feature of the the two nodes is
’compared_feature’: Which feature of the nodes was compared
- ’features’: Raw text of the feature of each node. Only populated if ‘embedding_source’
was given as an input.
- Return type:
pd.DataFrame