@@ -421,7 +421,6 @@ class BaseVectorQuery:
421421 # HNSW runtime parameters
422422 EF_RUNTIME : str = "EF_RUNTIME"
423423 EF_RUNTIME_PARAM : str = "EF"
424- EPSILON_PARAM : str = "EPSILON"
425424
426425 # SVS-VAMANA runtime parameters
427426 SEARCH_WINDOW_SIZE : str = "SEARCH_WINDOW_SIZE"
@@ -457,7 +456,6 @@ def __init__(
457456 hybrid_policy : str | None = None ,
458457 batch_size : int | None = None ,
459458 ef_runtime : int | None = None ,
460- epsilon : float | None = None ,
461459 search_window_size : int | None = None ,
462460 use_search_history : str | None = None ,
463461 search_buffer_capacity : int | None = None ,
@@ -505,10 +503,6 @@ def __init__(
505503 ef_runtime (Optional[int]): Controls the size of the dynamic candidate list for HNSW
506504 algorithm at query time. Higher values improve recall at the expense of
507505 slower search performance. Defaults to None, which uses the index-defined value.
508- epsilon (Optional[float]): The range search approximation factor for HNSW and SVS-VAMANA
509- indexes. Sets boundaries for candidates within radius * (1 + epsilon). Higher values
510- allow more extensive search and more accurate results at the expense of run time.
511- Defaults to None, which uses the index-defined value (typically 0.01).
512506 search_window_size (Optional[int]): The size of the search window for SVS-VAMANA KNN searches.
513507 Increasing this value generally yields more accurate but slower search results.
514508 Defaults to None, which uses the index-defined value (typically 10).
@@ -541,7 +535,6 @@ def __init__(
541535 self ._hybrid_policy : HybridPolicy | None = None
542536 self ._batch_size : int | None = None
543537 self ._ef_runtime : int | None = None
544- self ._epsilon : float | None = None
545538 self ._search_window_size : int | None = None
546539 self ._use_search_history : str | None = None
547540 self ._search_buffer_capacity : int | None = None
@@ -578,9 +571,6 @@ def __init__(
578571 if ef_runtime is not None :
579572 self .set_ef_runtime (ef_runtime )
580573
581- if epsilon is not None :
582- self .set_epsilon (epsilon )
583-
584574 if search_window_size is not None :
585575 self .set_search_window_size (search_window_size )
586576
@@ -613,10 +603,6 @@ def _build_query_string(self) -> str:
613603 if self ._ef_runtime :
614604 knn_query += f" { self .EF_RUNTIME } ${ self .EF_RUNTIME_PARAM } "
615605
616- # Add EPSILON parameter if specified (HNSW and SVS-VAMANA)
617- if self ._epsilon is not None :
618- knn_query += f" EPSILON ${ self .EPSILON_PARAM } "
619-
620606 # Add SEARCH_WINDOW_SIZE parameter if specified (SVS-VAMANA)
621607 if self ._search_window_size is not None :
622608 knn_query += f" { self .SEARCH_WINDOW_SIZE } ${ self .SEARCH_WINDOW_SIZE_PARAM } "
@@ -695,28 +681,6 @@ def set_ef_runtime(self, ef_runtime: int):
695681 # Invalidate the query string
696682 self ._built_query_string = None
697683
698- def set_epsilon (self , epsilon : float ):
699- """Set the epsilon parameter for the query.
700-
701- Args:
702- epsilon (float): The range search approximation factor for HNSW and SVS-VAMANA
703- indexes. Sets boundaries for candidates within radius * (1 + epsilon).
704- Higher values allow more extensive search and more accurate results at the
705- expense of run time.
706-
707- Raises:
708- TypeError: If epsilon is not a float or int
709- ValueError: If epsilon is negative
710- """
711- if not isinstance (epsilon , (float , int )):
712- raise TypeError ("epsilon must be of type float or int" )
713- if epsilon < 0 :
714- raise ValueError ("epsilon must be non-negative" )
715- self ._epsilon = epsilon
716-
717- # Invalidate the query string
718- self ._built_query_string = None
719-
720684 def set_search_window_size (self , search_window_size : int ):
721685 """Set the SEARCH_WINDOW_SIZE parameter for the query.
722686
@@ -808,15 +772,6 @@ def ef_runtime(self) -> int | None:
808772 """
809773 return self ._ef_runtime
810774
811- @property
812- def epsilon (self ) -> float | None :
813- """Return the epsilon parameter for the query.
814-
815- Returns:
816- Optional[float]: The epsilon value for the query.
817- """
818- return self ._epsilon
819-
820775 @property
821776 def search_window_size (self ) -> int | None :
822777 """Return the SEARCH_WINDOW_SIZE parameter for the query.
@@ -862,10 +817,6 @@ def params(self) -> dict[str, Any]:
862817 if self ._ef_runtime is not None :
863818 params [self .EF_RUNTIME_PARAM ] = self ._ef_runtime
864819
865- # Add EPSILON parameter if specified (HNSW and SVS-VAMANA)
866- if self ._epsilon is not None :
867- params [self .EPSILON_PARAM ] = self ._epsilon
868-
869820 # Add SEARCH_WINDOW_SIZE parameter if specified (SVS-VAMANA)
870821 if self ._search_window_size is not None :
871822 params [self .SEARCH_WINDOW_SIZE_PARAM ] = self ._search_window_size
0 commit comments