Releases: weaviate/java-client
6.0.0-beta1 - Async Client, Filters, BM25 and FetchObjects Queries, API-Key Authorization
The first beta of client6
has arrived!
🔑 Use the new API Key authorization to securely connect to your Weaviate instance:
final var client = new WeaviateClient(
Config.of("https", cfg -> cfg
.httpHost("localhost").httpPort(443)
.grpcHost("localhost").grpcPort(433)
.authorization(Authorization.apiKey("my-api-key"))));
Similarly to Python and TS, client6
offers convenient helper .local()
and .wcd()
methods for connecting to you local instance or the one running in the Weaviate Cloud.
🔍 Search and retrieve objects using bm25
and fetchObjects
queries:
final var books = client.collection.use("Books");
var crimeFiction = books.query.bm25("Sherlock Holmes", q -> q.queryProperties("main_character"));
var newestBooks = books.query.fetchObjects(
query -> query
.where(Where.property("yearPublished").gte(2024))
.limit(200));
Explore other filters and query parameters by downloading the latest version from your local Maven Ce.....
💥 The first beta of client6
has arrived (asynchronously!!!) 💥
The Async Client presents the same familiar API. Its methods return an instance of CompletableFuture
so they can be easily integrated with the existing processing pipelines. try
it out!
// WeaviateClient and WeaviateClientAsync implement Closable
try (final var asyncClient = client.async()) {
final var things = asyncClient.collections.use("Things");
things.data.insert(Map.of("shape", "square"))
.thenAccept(square -> System.out.println("square has id=" + square.metadata().uuid()));
}
What's Changed
- v6: Add async client to gRPC endpoints (query / aggregate) by @bevzzz in #383
- v6: Refactor REST endpoints and JSON de-/serialization by @bevzzz in #387
- v6: Filters and fetchObjects query by @bevzzz in #388
- v6: Authorization and connection helpers by @bevzzz in #389
- v6: add BM25 query by @bevzzz in #390
- v6: fix async toolchain by @bevzzz in #392
Full Changelog: 6.0.0-alpha2...6.0.0-beta1
5.3.0 - MUVERA, BM25 Search Operator
The 5.3.0
release adds support for several major features introduced in Weaviate v1.31.0
: BM25 And/Or search operators and MUVERA encoding for multi-vector indices.
We've also extended the collection management API with an ability to add named vectors to existing collections with client.schema().vectorAdder()
.
What's Changed
- Add muvera config by @robbespo00 in #382
- chore: add tests from WeaviateObject.Adapter by @bevzzz in #384
- Adding named vectors to collections by @bevzzz in #385
- feat: add searchOperator (minimum_should_match) to bm25 and hybrid arguments by @bevzzz in #386
New Contributors
- @robbespo00 made their first contribution in #382
Full Changelog: 5.2.1...5.3.0
6.0.0-alpha2
Further expanding the surface covered by the v6
client. Notably:
- Aggregations for TEXT and INT properties with optional NearVector filter
- Reference properties: creating, inserting, retrieving in queries
- BLOB data type and NearImage search
- Partial support for NearText search (not possible to select target vectors)
- New vectorizers:
text2vec-contextionary
,text2vec-weaviate
,multi2vec-clip
, andimg2vec-neural
What's Changed
- v6: Aggregate API by @bevzzz in #364
- v6: Cross-references in collection definition and queries by @bevzzz in #368
- v6: Implement feedback from Iteration I by @bevzzz in #381
Full Changelog: 6.0.0-alpha1...6.0.0-alpha2
5.2.1 - Security patches
Upgrade httpclient
dependency to v5.4.3
which includes a fix for a high-severity vulnerability.
What's Changed
Full Changelog: 5.2.0...5.2.1
5.2.0 - Dynamic User Management
Dynamic User Management is an extension to the RBAC functionality introduced in Weaviate v1.29
, which allows creating new users programmatically as well as managing their roles and API keys.
To avoid name clashes with users authenticated via OIDC, each user is assigned a user type
qualifier: db | oidc
.
The clients makes working with different types of users easy by providing dedicated methods for each one:
users().db()
-- dynamically created users and users defined in the server's environment variablesusers().oidc()
-- users using OIDC authentication
To avoid confusion, all users
APIs from v5.1.*
as well as part of the roles
APIs are deprecated in favor of their namespaced counterparts.
Deprecations
users().assignedRolesGetter()
users().revoker()
users().assigner()
roles().assignedUsersGetter()
What's Changed
Full Changelog: 5.1.3...5.2.0
6.0.0-alpha1 - NearVector Search
Preview of the first iteration of the client rewrite, including:
- Simple collection creation
- Data management: insert, get, delete
- Near vector query
What's Changed
Full Changelog: 5.1.1...6.0.0-alpha1
5.1.3 - Bugfixes and minor improvements
What's Changed
Full Changelog: 5.1.2...5.1.3
5.1.2 - Batch error handling
What's Changed
- fix: return batch errors alongside successfully inserted objects by @bevzzz in #358
- fix(experimental): make metadata fields public by @bevzzz in #361
Full Changelog: 5.1.1...5.1.2
5.1.1 - ColBERT
Support multi-vector embeddings (ColBERT, ColPali, etc.) in object creation/update, batch insert, and NearVector + Hybrid queries.
What's Changed
- chore: update compile/test dependencies by @bevzzz in #357
- feat(ColBERT): Create, update, batch insert, and query objects with multi-vector indices by @bevzzz in #356
Full Changelog: 5.1.0...5.1.1
5.1.0 - RBAC, Weaviate Embeddings
This version adds support for RBAC, which is in GA starting with Weaviate 1.29 🌮
We've also removed the need to manually set authentication headers when using Weaviate Embeddings service as a vectorizer for a collection, as it will now be done automatically whenever ApiKey authentication is used.
🚧 Experimental syntax introduced in 5.1.0-alpha1
is still deemed experimental. It will not receive full support until the next major release.
What's Changed
- Experimental syntax for nearVector search, object mapping, and partial gRPC support by @bevzzz in #351
- fix: migrate actions/upload-artifact and actions/download-artifact to v4 by @bevzzz in #354
- Update gRPC stubs to
stable/v1.29
by @bevzzz in #352 - Set authentication headers for Weaviate Embeddings service by @bevzzz in #355
- feat: RBAC support (Sync/Async) by @bevzzz in #349
Full Changelog: 5.0.1...5.1.0