add lobotomize command
This commit is contained in:
@@ -138,13 +138,17 @@ class ChatDatabase:
|
||||
|
||||
def _calculate_similarity(self, vec1: np.ndarray, vec2: np.ndarray) -> float:
|
||||
"""Calculate cosine similarity between two vectors."""
|
||||
vec1 = vec1.flatten()
|
||||
vec2 = vec2.flatten()
|
||||
logger.debug(
|
||||
"Calculating cosine similarity between vectors of dimension %d",
|
||||
len(vec1),
|
||||
)
|
||||
result = float(
|
||||
np.dot(vec1, vec2) / (np.linalg.norm(vec1) * np.linalg.norm(vec2)),
|
||||
)
|
||||
norm1 = np.linalg.norm(vec1)
|
||||
norm2 = np.linalg.norm(vec2)
|
||||
if norm1 == 0 or norm2 == 0:
|
||||
return 0.0
|
||||
result = float(np.dot(vec1, vec2) / (norm1 * norm2))
|
||||
logger.debug("Similarity calculated: %.4f", result)
|
||||
return result
|
||||
|
||||
|
||||
Reference in New Issue
Block a user