milvus-logo

Class SearchParam.Builder

  • java.lang.Object
    • io.milvus.param.dml.SearchParam.Builder
  • Enclosing class:
    SearchParam

    public static class SearchParam.Builder
    extends java.lang.Object
    Builder for SearchParam class.
    • Method Detail

      • withCollectionName

        public SearchParam.Builder withCollectionName​(@NonNull
                                                      @NonNull java.lang.String collectionName)
        Sets the collection name. Collection name cannot be empty or null.
        Parameters:
        collectionName - collection name
        Returns:
        Builder
      • withPartitionNames

        public SearchParam.Builder withPartitionNames​(@NonNull
                                                      @NonNull java.util.List<java.lang.String> partitionNames)
        Sets partition names list to specify search scope (Optional).
        Parameters:
        partitionNames - partition names list
        Returns:
        Builder
      • addPartitionName

        public SearchParam.Builder addPartitionName​(@NonNull
                                                    @NonNull java.lang.String partitionName)
        Adds a partition to specify search scope (Optional).
        Parameters:
        partitionName - partition name
        Returns:
        Builder
      • withMetricType

        public SearchParam.Builder withMetricType​(@NonNull
                                                  @NonNull MetricType metricType)
        Sets metric type of ANN searching.
        Parameters:
        metricType - metric type
        Returns:
        Builder
      • withVectorFieldName

        public SearchParam.Builder withVectorFieldName​(@NonNull
                                                       @NonNull java.lang.String vectorFieldName)
        Sets target vector field by name. Field name cannot be empty or null.
        Parameters:
        vectorFieldName - vector field name
        Returns:
        Builder
      • withTopK

        public SearchParam.Builder withTopK​(@NonNull
                                            @NonNull java.lang.Integer topK)
        Sets topK value of ANN search.
        Parameters:
        topK - topK value
        Returns:
        Builder
      • withExpr

        public SearchParam.Builder withExpr​(@NonNull
                                            @NonNull java.lang.String expr)
        Sets expression to filter out entities before searching (Optional).
        Parameters:
        expr - filtering expression
        Returns:
        Builder
        See Also:
        Boolean Expression Rules
      • withOutFields

        public SearchParam.Builder withOutFields​(@NonNull
                                                 @NonNull java.util.List<java.lang.String> outFields)
        Specifies output fields (Optional).
        Parameters:
        outFields - output fields
        Returns:
        Builder
      • addOutField

        public SearchParam.Builder addOutField​(@NonNull
                                               @NonNull java.lang.String fieldName)
        Specifies an output field (Optional).
        Parameters:
        fieldName - filed name
        Returns:
        Builder
      • withVectors

        public SearchParam.Builder withVectors​(@NonNull
                                               @NonNull java.util.List<?> vectors)
        Sets the target vectors.
        Parameters:
        vectors - list of target vectors: if vector type is FloatVector, vectors is List<List<Float>>; if vector type is BinaryVector, vectors is List<ByteBuffer>;
        Returns:
        Builder
      • withRoundDecimal

        public SearchParam.Builder withRoundDecimal​(@NonNull
                                                    @NonNull java.lang.Integer decimal)
        Specifies the decimal place of the returned results.
        Parameters:
        decimal - how many digits after the decimal point
        Returns:
        Builder
      • withParams

        public SearchParam.Builder withParams​(@NonNull
                                              @NonNull java.lang.String params)
        Sets the search parameters specific to the index type. For example: IVF index, the search parameters can be "{\"nprobe\":10}" For more information: @see Index Selection
        Parameters:
        params - extra parameters in json format
        Returns:
        Builder
      • withTravelTimestamp

        public SearchParam.Builder withTravelTimestamp​(@NonNull
                                                       @NonNull java.lang.Long ts)
        Specify an absolute timestamp in a search to get results based on a data view at a specified point in time. Default value is 0, server executes search on a full data view.
        Parameters:
        ts - a timestamp value
        Returns:
        Builder
      • withGuaranteeTimestamp

        public SearchParam.Builder withGuaranteeTimestamp​(@NonNull
                                                          @NonNull java.lang.Long ts)
        Instructs server to see insert/delete operations performed before a provided timestamp. If no such timestamp is specified, the server will wait for the latest operation to finish and search. Note: The timestamp is not an absolute timestamp, it is a hybrid value combined by UTC time and internal flags. We call it TSO, for more information please refer to: https://github.com/milvus-io/milvus/blob/master/docs/design_docs/milvus_hybrid_ts_en.md You can get a TSO from insert/delete operations, see the MutationResultWrapper class. Use an operation's TSO to set this parameter, the server will execute search after this operation is finished. Default value is GUARANTEE_EVENTUALLY_TS, server executes search immediately.
        Parameters:
        ts - a timestamp value
        Returns:
        Builder