Class SearchParam.Builder

    • Method Detail

      • withDatabaseName

        public SearchParam.Builder withDatabaseName​(String databaseName)
        Sets the database name. database name can be nil.
        Parameters:
        databaseName - database name
        Returns:
        Builder
      • withCollectionName

        public SearchParam.Builder withCollectionName​(@NonNull
                                                      @NonNull 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 List<String> partitionNames)
        Sets partition names list to specify search scope (Optional).
        Parameters:
        partitionNames - partition names list
        Returns:
        Builder
      • withConsistencyLevel

        public SearchParam.Builder withConsistencyLevel​(ConsistencyLevelEnum consistencyLevel)
        ConsistencyLevel of consistency level.
        Parameters:
        consistencyLevel - consistency level
        Returns:
        Builder
      • addPartitionName

        public SearchParam.Builder addPartitionName​(@NonNull
                                                    @NonNull 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 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 Integer topK)
        Sets topK value of ANN search.
        Parameters:
        topK - topK value
        Returns:
        Builder
      • withOutFields

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

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

        @Deprecated
        public SearchParam.Builder withVectors​(@NonNull
                                               @NonNull List<?> vectors)
        Deprecated.
        Sets the target vectors. Note: Deprecated in v2.4.0, for the reason that the sdk cannot know a ByteBuffer is a BinarVector or Float16Vector/BFloat16Vector. Replaced by withFloatVectors/withBinaryVectors/withFloat16Vectors/withBFloat16Vectors/withSparseFloatVectors. It still works for FloatVector/BinarVector/SparseVector, don't use it for Float16Vector/BFloat16Vector.
        Parameters:
        vectors - list of target vectors: if vector type is FloatVector, vectors is List of List Float; if vector type is BinaryVector, vectors is List of ByteBuffer; if vector type is SparseFloatVector, values is List of SortedMap[Long, Float];
        Returns:
        Builder
      • withFloatVectors

        public SearchParam.Builder withFloatVectors​(@NonNull
                                                    @NonNull List<List<Float>> vectors)
        Sets the target vectors to search on FloatVector field.
        Parameters:
        vectors - target vectors to search
        Returns:
        Builder
      • withBinaryVectors

        public SearchParam.Builder withBinaryVectors​(@NonNull
                                                     @NonNull List<ByteBuffer> vectors)
        Sets the target vectors to search on BinaryVector field.
        Parameters:
        vectors - target vectors to search
        Returns:
        Builder
      • withFloat16Vectors

        public SearchParam.Builder withFloat16Vectors​(@NonNull
                                                      @NonNull List<ByteBuffer> vectors)
        Sets the target vectors to search on Float16Vector field.
        Parameters:
        vectors - target vectors to search
        Returns:
        Builder
      • withBFloat16Vectors

        public SearchParam.Builder withBFloat16Vectors​(@NonNull
                                                       @NonNull List<ByteBuffer> vectors)
        Sets the target vectors to search on BFloat16Vector field.
        Parameters:
        vectors - target vectors to search
        Returns:
        Builder
      • withSparseFloatVectors

        public SearchParam.Builder withSparseFloatVectors​(@NonNull
                                                          @NonNull List<SortedMap<Long,​Float>> vectors)
        Sets the target vectors to search on SparseFloatVector field.
        Parameters:
        vectors - target vectors to search
        Returns:
        Builder
      • withRoundDecimal

        public SearchParam.Builder withRoundDecimal​(@NonNull
                                                    @NonNull 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 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
      • withIgnoreGrowing

        public SearchParam.Builder withIgnoreGrowing​(@NonNull
                                                     @NonNull Boolean ignoreGrowing)
        Ignore the growing segments to get best search performance. Default is False. For the user case that don't require data visibility.
        Parameters:
        ignoreGrowing - Boolean.TRUE ignore, Boolean.FALSE is not
        Returns:
        Builder
      • withGroupByFieldName

        public SearchParam.Builder withGroupByFieldName​(@NonNull
                                                        @NonNull String groupByFieldName)
        Sets field name to do grouping.
        Parameters:
        groupByFieldName - field name to do grouping
        Returns:
        Builder