Spaces:
Configuration error
Configuration error
Update cross_encoder_reranking_train.py
Browse files
cross_encoder_reranking_train.py
CHANGED
@@ -37,8 +37,17 @@ def cluster_and_rank(texts, threshold=0.75):
|
|
37 |
return texts
|
38 |
|
39 |
embeddings = embed_text_list(texts)
|
40 |
-
|
41 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
42 |
|
43 |
clustered_texts = {}
|
44 |
for label, text in zip(labels, texts):
|
|
|
37 |
return texts
|
38 |
|
39 |
embeddings = embed_text_list(texts)
|
40 |
+
similarity_matrix = np.dot(embeddings, np.transpose(embeddings))
|
41 |
+
# Convert similarity to distance (larger dot product = more similar => smaller distance)
|
42 |
+
distance_matrix = -similarity_matrix # negative dot product for distance-like behavior
|
43 |
+
|
44 |
+
clustering = AgglomerativeClustering(
|
45 |
+
n_clusters=None,
|
46 |
+
distance_threshold=-threshold, # lower threshold = tighter clusters
|
47 |
+
affinity='precomputed',
|
48 |
+
linkage='average'
|
49 |
+
)
|
50 |
+
labels = clustering.fit_predict(distance_matrix)
|
51 |
|
52 |
clustered_texts = {}
|
53 |
for label, text in zip(labels, texts):
|