From f3080b8a11cfe9d25411b1e9de6a42759f7a4cc0 Mon Sep 17 00:00:00 2001 From: "codeflash-ai[bot]" <148906541+codeflash-ai[bot]@users.noreply.github.com> Date: Fri, 2 Feb 2024 04:55:18 +0000 Subject: [PATCH] =?UTF-8?q?=E2=9A=A1=EF=B8=8F=20Speed=20up=20=5Fhamming=5F?= =?UTF-8?q?distance=20by=2050%?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../langchain/evaluation/embedding_distance/base.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/libs/langchain/langchain/evaluation/embedding_distance/base.py b/libs/langchain/langchain/evaluation/embedding_distance/base.py index 2010d1d5e27f1..9ab740e701b56 100644 --- a/libs/langchain/langchain/evaluation/embedding_distance/base.py +++ b/libs/langchain/langchain/evaluation/embedding_distance/base.py @@ -166,7 +166,8 @@ def _chebyshev_distance(a: np.ndarray, b: np.ndarray) -> np.floating: @staticmethod def _hamming_distance(a: np.ndarray, b: np.ndarray) -> np.floating: - """Compute the Hamming distance between two vectors. + """ + Compute the Hamming distance between two vectors. Args: a (np.ndarray): The first vector. @@ -175,7 +176,7 @@ def _hamming_distance(a: np.ndarray, b: np.ndarray) -> np.floating: Returns: np.floating: The Hamming distance. """ - return np.mean(a != b) + return np.sum(a != b) / a.size def _compute_score(self, vectors: np.ndarray) -> float: """Compute the score based on the distance metric.