vector

@SinceCouchbase(value = "7.6")
fun vector(field: String, vector: FloatArray, numCandidates: Int = 3): VectorQuery

A Vector query, with the vector specified as a FloatArray.

Vector queries can be ANDed or ORed together to create a compound vector query by passing them to SearchSpec.allOf or SearchSpec.anyOf.

To combine the results of a vector query with the results of a non-vector query, use SearchSpec.mixedMode.

Samples

import com.couchbase.client.kotlin.Cluster
import com.couchbase.client.kotlin.search.Highlight
import com.couchbase.client.kotlin.search.NumericRange
import com.couchbase.client.kotlin.search.SearchFacet
import com.couchbase.client.kotlin.search.SearchQuery
import com.couchbase.client.kotlin.search.SearchResult
import com.couchbase.client.kotlin.search.SearchSort
import com.couchbase.client.kotlin.search.SearchSort.Companion.byField
import com.couchbase.client.kotlin.search.SearchSort.Companion.byId
import com.couchbase.client.kotlin.search.SearchSpec
import com.couchbase.client.kotlin.search.VectorQuery
import com.couchbase.client.kotlin.search.execute
fun main() { 
   //sampleStart 
   // A search specification for a single vector query.
val spec: VectorQuery = SearchSpec.vector("reviews", floatArray) 
   //sampleEnd
}
import com.couchbase.client.kotlin.Cluster
import com.couchbase.client.kotlin.search.Highlight
import com.couchbase.client.kotlin.search.NumericRange
import com.couchbase.client.kotlin.search.SearchFacet
import com.couchbase.client.kotlin.search.SearchQuery
import com.couchbase.client.kotlin.search.SearchResult
import com.couchbase.client.kotlin.search.SearchSort
import com.couchbase.client.kotlin.search.SearchSort.Companion.byField
import com.couchbase.client.kotlin.search.SearchSort.Companion.byId
import com.couchbase.client.kotlin.search.SearchSpec
import com.couchbase.client.kotlin.search.VectorQuery
import com.couchbase.client.kotlin.search.execute
fun main() { 
   //sampleStart 
   // A search specification that ORs together multiple vector queries.
val spec = SearchSpec.anyOf(
    SearchSpec.vector("review", floatArray),
    SearchSpec.vector("review", otherFloatArray),
) 
   //sampleEnd
}
import com.couchbase.client.kotlin.Cluster
import com.couchbase.client.kotlin.search.Highlight
import com.couchbase.client.kotlin.search.NumericRange
import com.couchbase.client.kotlin.search.SearchFacet
import com.couchbase.client.kotlin.search.SearchQuery
import com.couchbase.client.kotlin.search.SearchResult
import com.couchbase.client.kotlin.search.SearchSort
import com.couchbase.client.kotlin.search.SearchSort.Companion.byField
import com.couchbase.client.kotlin.search.SearchSort.Companion.byId
import com.couchbase.client.kotlin.search.SearchSpec
import com.couchbase.client.kotlin.search.VectorQuery
import com.couchbase.client.kotlin.search.execute
fun main() { 
   //sampleStart 
   // A search specification that ORs a non-vector `match` query
// with a vector query.
val spec = SearchSpec.mixedMode(
    SearchSpec.match("pizza"),
    SearchSpec.vector("review", floatArray),
) 
   //sampleEnd
}

Parameters

vector

The vector to compare against.

field

The document field to search.


@SinceCouchbase(value = "7.6.2")
fun vector(field: String, vector: String, numCandidates: Int = 3): VectorQuery

A Vector query, with the vector specified as a Base64-encoded sequence of little-endian IEEE 754 floats.

See SearchSpec.vector for more info about vector queries.

Parameters

vector

The vector to compare against, as a Base64-encoded sequence of little-endian IEEE 754 floats.

field

The document field to search.