Skip to content

v1.20.0

Latest

Choose a tag to compare

@generall generall released this 22 Oct 09:00
2a3b4bc

Support for the Qdrant v1.20.0 API across @qdrant/qdrant-js, @qdrant/js-client-rest and @qdrant/js-client-grpc.

New in both clients

  • BM25 ranking over text indexes: scoring on text index params, and a text query for query/queryBatch/queryGroups that ranks by the payload field named in using. Per-request IDF params now also apply to BM25.
  • substring match condition for keyword fields.
  • nested option on every payload index params type, to index each object of an array (e.g. offers[].price) as its own entry.
  • max, min and acosh formula expressions.
  • turbo8 and turbo16 vector datatypes, and the bits8 TurboQuant bit size.
  • Point id tracker params (id_tracker) on create/update collection. Collection info now reports created_at.
  • code tokenizer for text indexes (source-code identifier splitting).

New in the REST client

  • createCollection and recreateCollection accept id_tracker.
await client.createPayloadIndex('docs', {field_name: 'title', field_schema: {type: 'text', scoring: true}, wait: true});
await client.query('docs', {query: {text: 'vector search'}, using: 'title'});
await client.query('docs', {query: {text: {query: 'vector search', scoring: {bm25: {k: 2.0, b: 0.5}}}}, using: 'title'});

New in the gRPC client

  • TextQuery, Bm25Params, TextScoringParams, Match.substring, MaxExpression/MinExpression/acosh, Datatype.Turbo8/Turbo16, TurboQuantBitSize.Bits8, IdTrackerParams, CollectionInfo.created_at and TokenizerType.Code.
  • A text index used for BM25 needs an explicit tokenizer, otherwise the server answers unknown tokenizer type.

Maintenance

  • Dependencies updated and Dependabot alerts resolved. The one remaining is braces, which has no patched release.
  • npm publishing now runs from the release environment via trusted publishing (OIDC), with no NPM_TOKEN.

What's Changed

Full Changelog: v1.19.0...v1.20.0