def METHOD_NAME(
    self,
    METHOD_NAME: VectorStoreQuery,
    **kwargs: Any,
) -> VectorStoreQueryResult:
    """Query index for top k most similar nodes.
    Args:
        query (List[float]): query embedding
    """
    filters = None
    if METHOD_NAME.filters is not None:
        filters = self._to_vecs_filters(METHOD_NAME.filters)
    results = self._collection.METHOD_NAME(
        data=METHOD_NAME.query_embedding,
        limit=METHOD_NAME.similarity_top_k,
        filters=filters,
        include_value=True,
        include_metadata=True,
    )
    similarities = []
    ids = []
    nodes = []
    for id_, distance, metadata in results:
        """shape of the result is [(vector, distance, metadata)]"""
        text = metadata.pop("text", None)
        try:
            node = metadata_dict_to_node(metadata)
        except Exception:
            # NOTE: deprecated legacy logic for backward compatibility
            metadata, node_info, relationships = legacy_metadata_dict_to_node(
                metadata
            )
            node = TextNode(
                id_=id_,
                text=text,
                metadata=metadata,
                start_char_idx=node_info.get("start", None),
                end_char_idx=node_info.get("end", None),
                relationships=relationships,
            )
        nodes.append(node)
        similarities.append(1.0 - math.exp(-distance))
        ids.append(id_)
    return VectorStoreQueryResult(nodes=nodes, similarities=similarities, ids=ids)