Package io.milvus.param.dml
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 forSearchParam
class.
-
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description SearchParam.Builder
addOutField(@NonNull java.lang.String fieldName)
Specifies an output field (Optional).SearchParam.Builder
addPartitionName(@NonNull java.lang.String partitionName)
Adds a partition to specify search scope (Optional).SearchParam
build()
Verifies parameters and creates a newSearchParam
instance.SearchParam.Builder
withBFloat16Vectors(@NonNull java.util.List<java.nio.ByteBuffer> vectors)
Sets the target vectors to search on BFloat16Vector field.SearchParam.Builder
withBinaryVectors(@NonNull java.util.List<java.nio.ByteBuffer> vectors)
Sets the target vectors to search on BinaryVector field.SearchParam.Builder
withCollectionName(@NonNull java.lang.String collectionName)
Sets the collection name.SearchParam.Builder
withConsistencyLevel(ConsistencyLevelEnum consistencyLevel)
ConsistencyLevel of consistency level.SearchParam.Builder
withDatabaseName(java.lang.String databaseName)
Sets the database name.SearchParam.Builder
withExpr(@NonNull java.lang.String expr)
Sets expression to filter out entities before searching (Optional).SearchParam.Builder
withFloat16Vectors(@NonNull java.util.List<java.nio.ByteBuffer> vectors)
Sets the target vectors to search on Float16Vector field.SearchParam.Builder
withFloatVectors(@NonNull java.util.List<java.util.List<java.lang.Float>> vectors)
Sets the target vectors to search on FloatVector field.SearchParam.Builder
withGroupByFieldName(@NonNull java.lang.String groupByFieldName)
Sets field name to do grouping.SearchParam.Builder
withIgnoreGrowing(@NonNull java.lang.Boolean ignoreGrowing)
Ignore the growing segments to get best search performance.SearchParam.Builder
withMetricType(@NonNull MetricType metricType)
Sets metric type of ANN searching.SearchParam.Builder
withOutFields(@NonNull java.util.List<java.lang.String> outFields)
Specifies output fields (Optional).SearchParam.Builder
withParams(@NonNull java.lang.String params)
Sets the search parameters specific to the index type.SearchParam.Builder
withPartitionNames(@NonNull java.util.List<java.lang.String> partitionNames)
Sets partition names list to specify search scope (Optional).SearchParam.Builder
withRoundDecimal(@NonNull java.lang.Integer decimal)
Specifies the decimal place of the returned results.SearchParam.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.SearchParam.Builder
withTopK(@NonNull java.lang.Integer topK)
Sets topK value of ANN search.SearchParam.Builder
withVectorFieldName(@NonNull java.lang.String vectorFieldName)
Sets target vector field by name.SearchParam.Builder
withVectors(@NonNull java.util.List<?> vectors)
Deprecated.
-
-
-
Method Detail
-
withDatabaseName
public SearchParam.Builder withDatabaseName(java.lang.String databaseName)
Sets the database name. database name can be nil.- Parameters:
databaseName
- database name- Returns:
Builder
-
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
-
withConsistencyLevel
public SearchParam.Builder withConsistencyLevel(ConsistencyLevelEnum consistencyLevel)
ConsistencyLevel of consistency level.- Parameters:
consistencyLevel
- consistency level- 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
@Deprecated public SearchParam.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 SearchParam.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 SearchParam.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 SearchParam.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 SearchParam.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 SearchParam.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 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
-
withIgnoreGrowing
public SearchParam.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 SearchParam.Builder withGroupByFieldName(@NonNull @NonNull java.lang.String groupByFieldName)
Sets field name to do grouping.- Parameters:
groupByFieldName
- field name to do grouping- Returns:
Builder
-
build
public SearchParam build() throws ParamException
Verifies parameters and creates a newSearchParam
instance.- Returns:
SearchParam
- Throws:
ParamException
-
-