io.milvus.param.dml

## Class SearchIteratorParam.Builder

- java.lang.Object
- - io.milvus.param.dml.SearchIteratorParam.Builder

Enclosing class:
  SearchIteratorParam

    public static class SearchIteratorParam.Builder
    extends java.lang.Object

Builder for `SearchIteratorParam` class.

### Method Summary

All Methods Instance Methods Concrete Methods Deprecated Methods
`SearchIteratorParam.Builder` `addOutField(@NonNull java.lang.String fieldName)` Specifies an output field (Optional).
`SearchIteratorParam.Builder` `addPartitionName(@NonNull java.lang.String partitionName)` Adds a partition to specify search scope (Optional).
`SearchIteratorParam` `build()` Verifies parameters and creates a new `SearchIteratorParam` instance.
`SearchIteratorParam.Builder` `withBatchSize(java.lang.Long batchSize)` Specify a value to control the number of entities returned per batch.
`SearchIteratorParam.Builder` `withBFloat16Vectors(@NonNull java.util.List<java.nio.ByteBuffer> vectors)` Sets the target vectors to search on BFloat16Vector field.
`SearchIteratorParam.Builder` `withBinaryVectors(@NonNull java.util.List<java.nio.ByteBuffer> vectors)` Sets the target vectors to search on BinaryVector field.
`SearchIteratorParam.Builder` `withCollectionName(@NonNull java.lang.String collectionName)` Sets the collection name.
`SearchIteratorParam.Builder` `withConsistencyLevel(ConsistencyLevelEnum consistencyLevel)` ConsistencyLevel of consistency level.
`SearchIteratorParam.Builder` `withDatabaseName(java.lang.String databaseName)` Sets the database name.
`SearchIteratorParam.Builder` `withExpr(@NonNull java.lang.String expr)` Sets expression to filter out entities before searching (Optional).
`SearchIteratorParam.Builder` `withFloat16Vectors(@NonNull java.util.List<java.nio.ByteBuffer> vectors)` Sets the target vectors to search on Float16Vector field.
`SearchIteratorParam.Builder` `withFloatVectors(@NonNull java.util.List<java.util.List<java.lang.Float>> vectors)` Sets the target vectors to search on FloatVector field.
`SearchIteratorParam.Builder` `withGroupByFieldName(@NonNull java.lang.String groupByFieldName)` Sets field name to do grouping.
`SearchIteratorParam.Builder` `withIgnoreGrowing(@NonNull java.lang.Boolean ignoreGrowing)` Ignore the growing segments to get best search performance.
`SearchIteratorParam.Builder` `withMetricType(@NonNull MetricType metricType)` Sets metric type of ANN searching.
`SearchIteratorParam.Builder` `withOutFields(@NonNull java.util.List<java.lang.String> outFields)` Specifies output fields (Optional).
`SearchIteratorParam.Builder` `withParams(@NonNull java.lang.String params)` Sets the search parameters specific to the index type.
`SearchIteratorParam.Builder` `withPartitionNames(@NonNull java.util.List<java.lang.String> partitionNames)` Sets partition names list to specify search scope (Optional).
`SearchIteratorParam.Builder` `withRoundDecimal(@NonNull java.lang.Integer decimal)` Specifies the decimal place of the returned results.
`SearchIteratorParam.Builder` `withSparseFloatVectors(@NonNull java.util.List<java.util.SortedMap<java.lang.Long,java.lang.Float>> vectors)` Sets the target vectors to search on SparseFloatVector field.
`SearchIteratorParam.Builder` `withTopK(@NonNull java.lang.Integer topK)` Sets topK value of ANN search.
`SearchIteratorParam.Builder` `withVectorFieldName(@NonNull java.lang.String vectorFieldName)` Sets target vector field by name.
`SearchIteratorParam.Builder` `withVectors(@NonNull java.util.List<?> vectors)` Deprecated.

### Methods inherited from class java.lang.Object

`equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Method Detail

#### withDatabaseName

    public SearchIteratorParam.Builder withDatabaseName(java.lang.String databaseName)

Sets the database name. database name can be nil.

Parameters:
  `databaseName` - database name
Returns:
  `Builder`

#### withCollectionName

    public SearchIteratorParam.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 SearchIteratorParam.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`

#### withConsistencyLevel

    public SearchIteratorParam.Builder withConsistencyLevel(ConsistencyLevelEnum consistencyLevel)

ConsistencyLevel of consistency level.

Parameters:
  `consistencyLevel` - consistency level
Returns:
  `Builder`

#### addPartitionName

    public SearchIteratorParam.Builder addPartitionName(@NonNull
                                                        @NonNull java.lang.String partitionName)

Adds a partition to specify search scope (Optional).

Parameters:
  `partitionName` - partition name
Returns:
  `Builder`

#### withMetricType

    public SearchIteratorParam.Builder withMetricType(@NonNull
                                                      @NonNull MetricType metricType)

Sets metric type of ANN searching.

Parameters:
  `metricType` - metric type
Returns:
  `Builder`

#### withVectorFieldName

    public SearchIteratorParam.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 SearchIteratorParam.Builder withTopK(@NonNull
                                                @NonNull java.lang.Integer topK)

Sets topK value of ANN search.

Parameters:
  `topK` - topK value
Returns:
  `Builder`

#### withExpr

    public SearchIteratorParam.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 SearchIteratorParam.Builder withOutFields(@NonNull
                                                     @NonNull java.util.List<java.lang.String> outFields)

Specifies output fields (Optional).

Parameters:
  `outFields` - output fields
Returns:
  `Builder`

#### addOutField

    public SearchIteratorParam.Builder addOutField(@NonNull
                                                   @NonNull java.lang.String fieldName)

Specifies an output field (Optional).

Parameters:
  `fieldName` - filed name
Returns:
  `Builder`

#### withVectors

    @Deprecated
    public SearchIteratorParam.Builder withVectors(@NonNull
                                                               @NonNull java.util.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 SearchIteratorParam.Builder withFloatVectors(@NonNull
                                                        @NonNull java.util.List<java.util.List<java.lang.Float>> vectors)

Sets the target vectors to search on FloatVector field.

Parameters:
  `vectors` - target vectors to search
Returns:
  `Builder`

#### withBinaryVectors

    public SearchIteratorParam.Builder withBinaryVectors(@NonNull
                                                         @NonNull java.util.List<java.nio.ByteBuffer> vectors)

Sets the target vectors to search on BinaryVector field.

Parameters:
  `vectors` - target vectors to search
Returns:
  `Builder`

#### withFloat16Vectors

    public SearchIteratorParam.Builder withFloat16Vectors(@NonNull
                                                          @NonNull java.util.List<java.nio.ByteBuffer> vectors)

Sets the target vectors to search on Float16Vector field.

Parameters:
  `vectors` - target vectors to search
Returns:
  `Builder`

#### withBFloat16Vectors

    public SearchIteratorParam.Builder withBFloat16Vectors(@NonNull
                                                           @NonNull java.util.List<java.nio.ByteBuffer> vectors)

Sets the target vectors to search on BFloat16Vector field.

Parameters:
  `vectors` - target vectors to search
Returns:
  `Builder`

#### withSparseFloatVectors

    public SearchIteratorParam.Builder withSparseFloatVectors(@NonNull
                                                              @NonNull java.util.List<java.util.SortedMap<java.lang.Long,java.lang.Float>> vectors)

Sets the target vectors to search on SparseFloatVector field.

Parameters:
  `vectors` - target vectors to search
Returns:
  `Builder`

#### withRoundDecimal

    public SearchIteratorParam.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 SearchIteratorParam.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`

#### withIgnoreGrowing

    public SearchIteratorParam.Builder withIgnoreGrowing(@NonNull
                                                         @NonNull java.lang.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 SearchIteratorParam.Builder withGroupByFieldName(@NonNull
                                                            @NonNull java.lang.String groupByFieldName)

Sets field name to do grouping.

Parameters:
  `groupByFieldName` - field name to do grouping
Returns:
  `Builder`

#### withBatchSize

    public SearchIteratorParam.Builder withBatchSize(@NotNull
                                                     java.lang.Long batchSize)

Specify a value to control the number of entities returned per batch. Must be a positive value. Default value is 1000, will return without batchSize.

Parameters:
  `batchSize` - a value to define the number of entities returned per batch
Returns:
  `Builder`

#### build

    public SearchIteratorParam build()
                              throws ParamException

Verifies parameters and creates a new `SearchIteratorParam` instance.

Returns:
  `SearchIteratorParam`
Throws:
  `ParamException`