Skip to main content

HybridRouter Objects

A hybrid layer that uses both dense and sparse embeddings to classify routes.

__init__

Initialize the HybridRouter. Arguments:
  • encoder (DenseEncoder): The dense encoder to use.
  • sparse_encoder (Optional[SparseEncoder]): The sparse encoder to use.

add

Add a route to the local HybridRouter and index. Arguments:
  • route (Route): The route to add.

aadd

Add a route to the local HybridRouter and index asynchronously. Arguments:
  • routes (List[Route] | Route): The route(s) to add.

__call__

Call the HybridRouter. Arguments:
  • text (Optional[str]): The text to encode.
  • vector (Optional[List[float] | np.ndarray]): The vector to encode.
  • simulate_static (bool): Whether to simulate a static route.
  • route_filter (Optional[List[str]]): The route filter to use.
  • limit (int | None): The number of routes to return, defaults to 1. If set to None, no limit is applied and all routes are returned.
  • Optional[str]0 (Optional[str]1): The sparse vector to use.
Returns: Optional[str]2: A RouteChoice or a list of RouteChoices.

acall

Asynchronously call the router to get a route choice. Arguments:
  • text (Optional[str]): The text to route.
  • vector (Optional[List[float] | np.ndarray]): The vector to route.
  • simulate_static (bool): Whether to simulate a static route (ie avoid dynamic route LLM calls during fit or evaluate).
  • route_filter (Optional[List[str]]): The route filter to use.
  • sparse_vector (dict[int, float] | SparseEmbedding | None): The sparse vector to use.
Returns: Optional[str]0: The route choice.

fit

Fit the HybridRouter. Arguments:
  • X (List[str]): The input data.
  • y (List[str]): The output data.
  • batch_size (int): The batch size to use for fitting.
  • max_iter (int): The maximum number of iterations to use for fitting.
  • local_execution (bool): Whether to execute the fitting locally.

evaluate

Evaluate the accuracy of the route selection. Arguments:
  • X (List[str]): The input data.
  • y (List[str]): The output data.
  • batch_size (int): The batch size to use for evaluation.
Returns: float: The accuracy of the route selection.