From 72e41b1ad5770469007bf0da959d03533226a155 Mon Sep 17 00:00:00 2001 From: Ivan Despot <66276597+g-despot@users.noreply.github.com> Date: Wed, 12 Aug 2026 08:44:46 +0200 Subject: [PATCH 1/2] feat: add hybrid diversity selection via MMR (Weaviate 1.38.6+) --- .../Integration/TestSearchHybrid.cs | 138 +++++++++++++ .../Unit/TestHybridDiversitySyntax.cs | 191 ++++++++++++++++++ src/Weaviate.Client/GenerateClient.Hybrid.cs | 12 ++ src/Weaviate.Client/Models/Search.cs | 14 ++ src/Weaviate.Client/PublicAPI.Unshipped.txt | 78 +++++++ src/Weaviate.Client/QueryClient.Hybrid.cs | 12 ++ .../Typed/TypedGenerateClient.Hybrid.cs | 12 ++ .../Typed/TypedQueryClient.Hybrid.cs | 12 ++ src/Weaviate.Client/gRPC/Search.Builders.cs | 17 +- src/Weaviate.Client/gRPC/Search.cs | 5 +- 10 files changed, 489 insertions(+), 2 deletions(-) create mode 100644 src/Weaviate.Client.Tests/Unit/TestHybridDiversitySyntax.cs diff --git a/src/Weaviate.Client.Tests/Integration/TestSearchHybrid.cs b/src/Weaviate.Client.Tests/Integration/TestSearchHybrid.cs index 2ca6eee5..7b648315 100644 --- a/src/Weaviate.Client.Tests/Integration/TestSearchHybrid.cs +++ b/src/Weaviate.Client.Tests/Integration/TestSearchHybrid.cs @@ -880,6 +880,144 @@ await collection.Query.Hybrid( Assert.Equal(splitAcross, andCrossObjs[0].UUID); } + /// + /// Creates a collection with 3 tight clusters (a, b, c) of vectors in 3D. + /// + private async Task CreateClusteredCollection() + { + var collection = await CollectionFactory( + properties: new[] { Property.Text("name") }, + vectorConfig: Configure.Vector(t => t.SelfProvided()) + ); + + var data = new (string Name, float[] Vector)[] + { + ("a1", [1.0f, 0.0f, 0.0f]), + ("a2", [0.95f, 0.05f, 0.0f]), + ("a3", [0.9f, 0.1f, 0.0f]), + ("b1", [0.0f, 1.0f, 0.0f]), + ("b2", [0.05f, 0.95f, 0.0f]), + ("c1", [0.0f, 0.0f, 1.0f]), + }; + foreach (var (name, vector) in data) + { + await collection.Data.Insert( + new { name }, + vectors: vector, + cancellationToken: TestContext.Current.CancellationToken + ); + } + + return collection; + } + + /// + /// Tests that test hybrid diversity balance zero differs from balance one + /// + [Fact] + public async Task Test_Hybrid_Diversity_Balance_Reorders() + { + RequireVersion("1.38.6"); + + var collection = await CreateClusteredCollection(); + + var baseline = ( + await collection.Query.Hybrid( + query: null, + vectors: new float[] { 1f, 0f, 0f }, + limit: 3, + cancellationToken: TestContext.Current.CancellationToken + ) + ) + .Select(o => o.UUID) + .ToList(); + + var balanceZero = ( + await collection.Query.Hybrid( + query: null, + vectors: new float[] { 1f, 0f, 0f }, + diversitySelection: new Diversity.MMR(Limit: 3, Balance: 0.0f), + limit: 3, + cancellationToken: TestContext.Current.CancellationToken + ) + ) + .Select(o => o.UUID) + .ToList(); + + var balanceOne = ( + await collection.Query.Hybrid( + query: null, + vectors: new float[] { 1f, 0f, 0f }, + diversitySelection: new Diversity.MMR(Limit: 3, Balance: 1.0f), + limit: 3, + cancellationToken: TestContext.Current.CancellationToken + ) + ) + .Select(o => o.UUID) + .ToList(); + + // Pure diversity picks across clusters, so it must differ from pure relevance, + // while pure relevance matches the plain hybrid baseline. + Assert.NotEqual(balanceZero, balanceOne); + Assert.Equal(baseline, balanceOne); + } + + /// + /// Tests that test hybrid diversity mmr limit caps results + /// + [Fact] + public async Task Test_Hybrid_Diversity_MMR_Limit_Caps_Results() + { + RequireVersion("1.38.6"); + + var collection = await CollectionFactory( + properties: new[] { Property.Text("name") }, + vectorConfig: Configure.Vector(t => t.SelfProvided()) + ); + + // Enough items (>25) that a small mmr limit is distinguishable from the server's default limit. + for (var i = 0; i < 50; i++) + { + await collection.Data.Insert( + new { name = $"t{i}" }, + vectors: new float[] { 1.0f - 0.001f * i, 0f, 0f }, + cancellationToken: TestContext.Current.CancellationToken + ); + } + + var objs = await collection.Query.Hybrid( + query: null, + vectors: new float[] { 1f, 0f, 0f }, + diversitySelection: new Diversity.MMR(Limit: 5, Balance: 0.5f), + cancellationToken: TestContext.Current.CancellationToken + ); + + Assert.Equal(5, objs.Count()); + } + + /// + /// Tests that test hybrid diversity missing limit errors + /// + [Fact] + public async Task Test_Hybrid_Diversity_MissingLimit_Errors() + { + RequireVersion("1.38.6"); + + var collection = await CreateClusteredCollection(); + + // The server requires the MMR limit; the client forwards the request unvalidated. + var exception = await Assert.ThrowsAnyAsync(async () => + await collection.Query.Hybrid( + query: null, + vectors: new float[] { 1f, 0f, 0f }, + diversitySelection: new Diversity.MMR(Balance: 0.5f), + cancellationToken: TestContext.Current.CancellationToken + ) + ); + Assert.NotNull(exception.InnerException); + Assert.Contains("MMR limit", exception.InnerException.Message); + } + /// /// Tests that test aggregate max vector distance /// diff --git a/src/Weaviate.Client.Tests/Unit/TestHybridDiversitySyntax.cs b/src/Weaviate.Client.Tests/Unit/TestHybridDiversitySyntax.cs new file mode 100644 index 00000000..0a10717f --- /dev/null +++ b/src/Weaviate.Client.Tests/Unit/TestHybridDiversitySyntax.cs @@ -0,0 +1,191 @@ +using Weaviate.Client.Models; +using Weaviate.Client.Tests.Unit.Mocks; +using Weaviate.Client.Typed; +using V1 = Weaviate.Client.Grpc.Protobuf.V1; + +namespace Weaviate.Client.Tests.Unit; + +/// +/// Unit tests verifying the hybrid diversity selection maps to the expected +/// Selection message in the gRPC request across the query, generate and typed paths. +/// +[Collection("Unit Tests")] +public class TestHybridDiversitySyntax : IAsyncLifetime +{ + private const string CollectionName = "TestCollection"; + + private Func _getRequest = null!; + private CollectionClient _collection = null!; + + /// + /// The article test type + /// + private class Article + { + /// + /// The title + /// + public string? Title { get; set; } + } + + /// + /// Initializes this instance + /// + /// The value task + public ValueTask InitializeAsync() + { + var (client, getRequest) = MockGrpcClient.CreateWithSearchCapture(new Version(1, 39, 0)); + _getRequest = getRequest; + _collection = client.Collections.Use(CollectionName); + return ValueTask.CompletedTask; + } + + /// + /// Disposes this instance + /// + /// The value task + public ValueTask DisposeAsync() + { + GC.SuppressFinalize(this); + return ValueTask.CompletedTask; + } + + /// + /// Tests that hybrid diversity selection sets selection on the request + /// + [Fact] + public async Task Hybrid_DiversitySelection_MMR_SetsSelection() + { + // Act + await _collection.Query.Hybrid( + query: null, + vectors: new float[] { 1f, 0f, 0f }, + diversitySelection: new Diversity.MMR(Limit: 7, Balance: 0.5f), + limit: 7, + cancellationToken: TestContext.Current.CancellationToken + ); + + // Assert + var request = _getRequest(); + Assert.NotNull(request); + Assert.NotNull(request.HybridSearch.Selection); + Assert.Equal(7u, request.HybridSearch.Selection.Mmr.Limit); + Assert.Equal(0.5f, request.HybridSearch.Selection.Mmr.Balance); + } + + /// + /// Tests that hybrid diversity selection with omitted balance leaves balance unset + /// + [Fact] + public async Task Hybrid_DiversitySelection_BalanceOmitted_LeavesBalanceUnset() + { + // Act + await _collection.Query.Hybrid( + query: null, + vectors: new float[] { 1f, 0f, 0f }, + diversitySelection: new Diversity.MMR(Limit: 3), + cancellationToken: TestContext.Current.CancellationToken + ); + + // Assert + var request = _getRequest(); + Assert.NotNull(request); + Assert.NotNull(request.HybridSearch.Selection); + Assert.True(request.HybridSearch.Selection.Mmr.HasLimit); + Assert.False(request.HybridSearch.Selection.Mmr.HasBalance); + } + + /// + /// Tests that hybrid without diversity selection leaves selection unset + /// + [Fact] + public async Task Hybrid_NoDiversitySelection_LeavesSelectionUnset() + { + // Act + await _collection.Query.Hybrid( + query: null, + vectors: new float[] { 1f, 0f, 0f }, + limit: 5, + cancellationToken: TestContext.Current.CancellationToken + ); + + // Assert + var request = _getRequest(); + Assert.NotNull(request); + Assert.Null(request.HybridSearch.Selection); + } + + /// + /// Tests that generate hybrid diversity selection sets selection on the request + /// + [Fact] + public async Task Generate_Hybrid_DiversitySelection_SetsSelection() + { + // Act + await _collection.Generate.Hybrid( + query: null, + vectors: new float[] { 1f, 0f, 0f }, + diversitySelection: new Diversity.MMR(Limit: 4, Balance: 0.25f), + singlePrompt: "Describe {title}", + cancellationToken: TestContext.Current.CancellationToken + ); + + // Assert + var request = _getRequest(); + Assert.NotNull(request); + Assert.NotNull(request.HybridSearch.Selection); + Assert.Equal(4u, request.HybridSearch.Selection.Mmr.Limit); + Assert.Equal(0.25f, request.HybridSearch.Selection.Mmr.Balance); + } + + /// + /// Tests that typed hybrid diversity selection sets selection on the request + /// + [Fact] + public async Task Typed_Hybrid_DiversitySelection_SetsSelection() + { + // Arrange + var typedQueryClient = new TypedQueryClient
(_collection.Query); + + // Act + await typedQueryClient.Hybrid( + query: null, + vectors: new float[] { 1f, 0f, 0f }, + diversitySelection: new Diversity.MMR(Limit: 2, Balance: 1.0f), + cancellationToken: TestContext.Current.CancellationToken + ); + + // Assert + var request = _getRequest(); + Assert.NotNull(request); + Assert.NotNull(request.HybridSearch.Selection); + Assert.Equal(2u, request.HybridSearch.Selection.Mmr.Limit); + Assert.Equal(1.0f, request.HybridSearch.Selection.Mmr.Balance); + } + + /// + /// Tests that typed generate hybrid diversity selection sets selection on the request + /// + [Fact] + public async Task Typed_Generate_Hybrid_DiversitySelection_SetsSelection() + { + // Arrange + var typedGenerateClient = new TypedGenerateClient
(_collection.Generate); + + // Act + await typedGenerateClient.Hybrid( + query: null, + vectors: new float[] { 1f, 0f, 0f }, + diversitySelection: new Diversity.MMR(Limit: 6), + singlePrompt: "Describe {title}", + cancellationToken: TestContext.Current.CancellationToken + ); + + // Assert + var request = _getRequest(); + Assert.NotNull(request); + Assert.NotNull(request.HybridSearch.Selection); + Assert.Equal(6u, request.HybridSearch.Selection.Mmr.Limit); + Assert.False(request.HybridSearch.Selection.Mmr.HasBalance); + } +} diff --git a/src/Weaviate.Client/GenerateClient.Hybrid.cs b/src/Weaviate.Client/GenerateClient.Hybrid.cs index 9dcd8d1d..3a59cf17 100644 --- a/src/Weaviate.Client/GenerateClient.Hybrid.cs +++ b/src/Weaviate.Client/GenerateClient.Hybrid.cs @@ -20,6 +20,7 @@ public Task Hybrid( uint? limit = null, uint? offset = null, BM25Operator? bm25Operator = null, + Diversity? diversitySelection = null, uint? autoLimit = null, Filter? filters = null, Rerank? rerank = null, @@ -42,6 +43,7 @@ public Task Hybrid( limit: limit, offset: offset, bm25Operator: bm25Operator, + diversitySelection: diversitySelection, autoLimit: autoLimit, filters: filters, rerank: rerank, @@ -68,6 +70,7 @@ public async Task Hybrid( uint? limit = null, uint? offset = null, BM25Operator? bm25Operator = null, + Diversity? diversitySelection = null, uint? autoLimit = null, Filter? filters = null, Rerank? rerank = null, @@ -99,6 +102,7 @@ public async Task Hybrid( limit: limit, offset: offset, bm25Operator: bm25Operator, + diversitySelection: diversitySelection, autoLimit: autoLimit, filters: filters, rerank: rerank, @@ -129,6 +133,7 @@ public Task Hybrid( uint? limit = null, uint? offset = null, BM25Operator? bm25Operator = null, + Diversity? diversitySelection = null, uint? autoLimit = null, Filter? filters = null, Rerank? rerank = null, @@ -152,6 +157,7 @@ public Task Hybrid( limit: limit, offset: offset, bm25Operator: bm25Operator, + diversitySelection: diversitySelection, autoLimit: autoLimit, filters: filters, rerank: rerank, @@ -179,6 +185,7 @@ public async Task Hybrid( uint? limit = null, uint? offset = null, BM25Operator? bm25Operator = null, + Diversity? diversitySelection = null, uint? autoLimit = null, Filter? filters = null, Rerank? rerank = null, @@ -210,6 +217,7 @@ public async Task Hybrid( limit: limit, offset: offset, bm25Operator: bm25Operator, + diversitySelection: diversitySelection, autoLimit: autoLimit, filters: filters, groupBy: groupBy, @@ -259,6 +267,7 @@ public static async Task Hybrid( uint? limit = null, uint? offset = null, BM25Operator? bm25Operator = null, + Diversity? diversitySelection = null, uint? autoLimit = null, Filter? filters = null, Rerank? rerank = null, @@ -281,6 +290,7 @@ await client.Hybrid( limit: limit, offset: offset, bm25Operator: bm25Operator, + diversitySelection: diversitySelection, autoLimit: autoLimit, filters: filters, rerank: rerank, @@ -310,6 +320,7 @@ public static async Task Hybrid( uint? limit = null, uint? offset = null, BM25Operator? bm25Operator = null, + Diversity? diversitySelection = null, uint? autoLimit = null, Filter? filters = null, Rerank? rerank = null, @@ -333,6 +344,7 @@ await client.Hybrid( limit: limit, offset: offset, bm25Operator: bm25Operator, + diversitySelection: diversitySelection, autoLimit: autoLimit, filters: filters, rerank: rerank, diff --git a/src/Weaviate.Client/Models/Search.cs b/src/Weaviate.Client/Models/Search.cs index 8396f51a..46f16d7f 100644 --- a/src/Weaviate.Client/Models/Search.cs +++ b/src/Weaviate.Client/Models/Search.cs @@ -97,3 +97,17 @@ public record AndCross() : BM25Operator("AndCross"); /// public record Or(int MinimumMatch) : BM25Operator("Or"); } + +/// +/// The diversity selection applied to search results. Requires Weaviate 1.38.6+. +/// +public abstract record Diversity +{ + /// + /// Maximal Marginal Relevance; Limit is the number of results returned after + /// diversification (the server requires it to be at least 1), Balance is the + /// trade-off in [0.0, 1.0] — 1.0 pure relevance, 0.0 pure diversity (the server + /// default when omitted). + /// + public record MMR(uint? Limit = null, float? Balance = null) : Diversity; +} diff --git a/src/Weaviate.Client/PublicAPI.Unshipped.txt b/src/Weaviate.Client/PublicAPI.Unshipped.txt index 2ba157c5..fb336e28 100644 --- a/src/Weaviate.Client/PublicAPI.Unshipped.txt +++ b/src/Weaviate.Client/PublicAPI.Unshipped.txt @@ -43,3 +43,81 @@ virtual Weaviate.Client.Models.BM25Operator.AndCross.Equals(Weaviate.Client.Mode Weaviate.Client.Models.BM25Operator.AndCross Weaviate.Client.Models.BM25Operator.AndCross.AndCross() -> void Weaviate.Client.Models.BM25Operator.AndCross.AndCross(Weaviate.Client.Models.BM25Operator.AndCross! original) -> void +*REMOVED*static Weaviate.Client.GenerateClientHybridExtensions.Hybrid(this Weaviate.Client.GenerateClient! client, string! query, Weaviate.Client.Models.HybridVectorInput.FactoryFn! vectors, float? alpha = null, string![]? queryProperties = null, Weaviate.Client.Models.HybridFusion? fusionType = null, float? maxVectorDistance = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.BM25Operator? bm25Operator = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +*REMOVED*static Weaviate.Client.GenerateClientHybridExtensions.Hybrid(this Weaviate.Client.GenerateClient! client, string! query, Weaviate.Client.Models.HybridVectorInput.FactoryFn! vectors, Weaviate.Client.Models.GroupByRequest! groupBy, float? alpha = null, string![]? queryProperties = null, Weaviate.Client.Models.HybridFusion? fusionType = null, float? maxVectorDistance = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.BM25Operator? bm25Operator = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +*REMOVED*static Weaviate.Client.QueryClientHybridExtensions.Hybrid(this Weaviate.Client.QueryClient! client, string? query = null, Weaviate.Client.Models.HybridVectorInput.FactoryFn? vectors = null, float? alpha = null, string![]? queryProperties = null, Weaviate.Client.Models.HybridFusion? fusionType = null, float? maxVectorDistance = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.BM25Operator? bm25Operator = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +*REMOVED*static Weaviate.Client.QueryClientHybridExtensions.Hybrid(this Weaviate.Client.QueryClient! client, string? query, Weaviate.Client.Models.HybridVectorInput.FactoryFn? vectors, Weaviate.Client.Models.GroupByRequest! groupBy, float? alpha = null, string![]? queryProperties = null, Weaviate.Client.Models.HybridFusion? fusionType = null, float? maxVectorDistance = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.BM25Operator? bm25Operator = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +*REMOVED*static Weaviate.Client.Typed.TypedGenerateClientHybridExtensions.Hybrid(this Weaviate.Client.Typed.TypedGenerateClient! client, string! query, Weaviate.Client.Models.HybridVectorInput.FactoryFn! vectors, float? alpha = null, string![]? queryProperties = null, Weaviate.Client.Models.HybridFusion? fusionType = null, float? maxVectorDistance = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.BM25Operator? bm25Operator = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +*REMOVED*static Weaviate.Client.Typed.TypedGenerateClientHybridExtensions.Hybrid(this Weaviate.Client.Typed.TypedGenerateClient! client, string! query, Weaviate.Client.Models.HybridVectorInput.FactoryFn! vectors, Weaviate.Client.Models.GroupByRequest! groupBy, float? alpha = null, string![]? queryProperties = null, Weaviate.Client.Models.HybridFusion? fusionType = null, float? maxVectorDistance = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.BM25Operator? bm25Operator = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +*REMOVED*static Weaviate.Client.Typed.TypedQueryClientHybridExtensions.Hybrid(this Weaviate.Client.Typed.TypedQueryClient! client, string! query, Weaviate.Client.Models.HybridVectorInput.FactoryFn! vectors, float? alpha = null, string![]? queryProperties = null, Weaviate.Client.Models.HybridFusion? fusionType = null, float? maxVectorDistance = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.BM25Operator? bm25Operator = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>!>! +*REMOVED*static Weaviate.Client.Typed.TypedQueryClientHybridExtensions.Hybrid(this Weaviate.Client.Typed.TypedQueryClient! client, string! query, Weaviate.Client.Models.HybridVectorInput.FactoryFn! vectors, Weaviate.Client.Models.GroupByRequest! groupBy, float? alpha = null, string![]? queryProperties = null, Weaviate.Client.Models.HybridFusion? fusionType = null, float? maxVectorDistance = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.BM25Operator? bm25Operator = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +*REMOVED*Weaviate.Client.GenerateClient.Hybrid(string! query, float? alpha = null, string![]? queryProperties = null, Weaviate.Client.Models.HybridFusion? fusionType = null, float? maxVectorDistance = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.BM25Operator? bm25Operator = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +*REMOVED*Weaviate.Client.GenerateClient.Hybrid(string! query, Weaviate.Client.Models.GroupByRequest! groupBy, float? alpha = null, string![]? queryProperties = null, Weaviate.Client.Models.HybridFusion? fusionType = null, float? maxVectorDistance = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.BM25Operator? bm25Operator = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +*REMOVED*Weaviate.Client.GenerateClient.Hybrid(string? query, Weaviate.Client.Models.HybridVectorInput? vectors, float? alpha = null, string![]? queryProperties = null, Weaviate.Client.Models.HybridFusion? fusionType = null, float? maxVectorDistance = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.BM25Operator? bm25Operator = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +*REMOVED*Weaviate.Client.GenerateClient.Hybrid(string? query, Weaviate.Client.Models.HybridVectorInput? vectors, Weaviate.Client.Models.GroupByRequest! groupBy, float? alpha = null, string![]? queryProperties = null, Weaviate.Client.Models.HybridFusion? fusionType = null, float? maxVectorDistance = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.BM25Operator? bm25Operator = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +*REMOVED*Weaviate.Client.QueryClient.Hybrid(string! query, float? alpha = null, string![]? queryProperties = null, Weaviate.Client.Models.HybridFusion? fusionType = null, float? maxVectorDistance = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.BM25Operator? bm25Operator = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +*REMOVED*Weaviate.Client.QueryClient.Hybrid(string! query, Weaviate.Client.Models.GroupByRequest! groupBy, float? alpha = null, string![]? queryProperties = null, Weaviate.Client.Models.HybridFusion? fusionType = null, float? maxVectorDistance = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.BM25Operator? bm25Operator = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +*REMOVED*Weaviate.Client.QueryClient.Hybrid(string? query, Weaviate.Client.Models.HybridVectorInput? vectors, float? alpha = null, string![]? queryProperties = null, Weaviate.Client.Models.HybridFusion? fusionType = null, float? maxVectorDistance = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.BM25Operator? bm25Operator = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +*REMOVED*Weaviate.Client.QueryClient.Hybrid(string? query, Weaviate.Client.Models.HybridVectorInput? vectors, Weaviate.Client.Models.GroupByRequest! groupBy, float? alpha = null, string![]? queryProperties = null, Weaviate.Client.Models.HybridFusion? fusionType = null, float? maxVectorDistance = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.BM25Operator? bm25Operator = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +*REMOVED*Weaviate.Client.Typed.TypedGenerateClient.Hybrid(string! query, float? alpha = null, string![]? queryProperties = null, Weaviate.Client.Models.HybridFusion? fusionType = null, float? maxVectorDistance = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.BM25Operator? bm25Operator = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +*REMOVED*Weaviate.Client.Typed.TypedGenerateClient.Hybrid(string! query, Weaviate.Client.Models.GroupByRequest! groupBy, float? alpha = null, string![]? queryProperties = null, Weaviate.Client.Models.HybridFusion? fusionType = null, float? maxVectorDistance = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.BM25Operator? bm25Operator = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +*REMOVED*Weaviate.Client.Typed.TypedGenerateClient.Hybrid(string? query, Weaviate.Client.Models.HybridVectorInput? vectors, float? alpha = null, string![]? queryProperties = null, Weaviate.Client.Models.HybridFusion? fusionType = null, float? maxVectorDistance = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.BM25Operator? bm25Operator = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +*REMOVED*Weaviate.Client.Typed.TypedGenerateClient.Hybrid(string? query, Weaviate.Client.Models.HybridVectorInput? vectors, Weaviate.Client.Models.GroupByRequest! groupBy, float? alpha = null, string![]? queryProperties = null, Weaviate.Client.Models.HybridFusion? fusionType = null, float? maxVectorDistance = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.BM25Operator? bm25Operator = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +*REMOVED*Weaviate.Client.Typed.TypedQueryClient.Hybrid(string! query, float? alpha = null, string![]? queryProperties = null, Weaviate.Client.Models.HybridFusion? fusionType = null, float? maxVectorDistance = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.BM25Operator? bm25Operator = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>!>! +*REMOVED*Weaviate.Client.Typed.TypedQueryClient.Hybrid(string! query, Weaviate.Client.Models.GroupByRequest! groupBy, float? alpha = null, string![]? queryProperties = null, Weaviate.Client.Models.HybridFusion? fusionType = null, float? maxVectorDistance = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.BM25Operator? bm25Operator = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +*REMOVED*Weaviate.Client.Typed.TypedQueryClient.Hybrid(string? query, Weaviate.Client.Models.HybridVectorInput? vectors, float? alpha = null, string![]? queryProperties = null, Weaviate.Client.Models.HybridFusion? fusionType = null, float? maxVectorDistance = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.BM25Operator? bm25Operator = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>!>! +*REMOVED*Weaviate.Client.Typed.TypedQueryClient.Hybrid(string? query, Weaviate.Client.Models.HybridVectorInput? vectors, Weaviate.Client.Models.GroupByRequest! groupBy, float? alpha = null, string![]? queryProperties = null, Weaviate.Client.Models.HybridFusion? fusionType = null, float? maxVectorDistance = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.BM25Operator? bm25Operator = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +abstract Weaviate.Client.Models.Diversity.$() -> Weaviate.Client.Models.Diversity! +override sealed Weaviate.Client.Models.Diversity.MMR.Equals(Weaviate.Client.Models.Diversity? other) -> bool +override Weaviate.Client.Models.Diversity.Equals(object? obj) -> bool +override Weaviate.Client.Models.Diversity.GetHashCode() -> int +override Weaviate.Client.Models.Diversity.MMR.$() -> Weaviate.Client.Models.Diversity.MMR! +override Weaviate.Client.Models.Diversity.MMR.EqualityContract.get -> System.Type! +override Weaviate.Client.Models.Diversity.MMR.Equals(object? obj) -> bool +override Weaviate.Client.Models.Diversity.MMR.GetHashCode() -> int +override Weaviate.Client.Models.Diversity.MMR.PrintMembers(System.Text.StringBuilder! builder) -> bool +override Weaviate.Client.Models.Diversity.MMR.ToString() -> string! +override Weaviate.Client.Models.Diversity.ToString() -> string! +static Weaviate.Client.GenerateClientHybridExtensions.Hybrid(this Weaviate.Client.GenerateClient! client, string! query, Weaviate.Client.Models.HybridVectorInput.FactoryFn! vectors, float? alpha = null, string![]? queryProperties = null, Weaviate.Client.Models.HybridFusion? fusionType = null, float? maxVectorDistance = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.BM25Operator? bm25Operator = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +static Weaviate.Client.GenerateClientHybridExtensions.Hybrid(this Weaviate.Client.GenerateClient! client, string! query, Weaviate.Client.Models.HybridVectorInput.FactoryFn! vectors, Weaviate.Client.Models.GroupByRequest! groupBy, float? alpha = null, string![]? queryProperties = null, Weaviate.Client.Models.HybridFusion? fusionType = null, float? maxVectorDistance = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.BM25Operator? bm25Operator = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +static Weaviate.Client.Models.Diversity.MMR.operator !=(Weaviate.Client.Models.Diversity.MMR? left, Weaviate.Client.Models.Diversity.MMR? right) -> bool +static Weaviate.Client.Models.Diversity.MMR.operator ==(Weaviate.Client.Models.Diversity.MMR? left, Weaviate.Client.Models.Diversity.MMR? right) -> bool +static Weaviate.Client.Models.Diversity.operator !=(Weaviate.Client.Models.Diversity? left, Weaviate.Client.Models.Diversity? right) -> bool +static Weaviate.Client.Models.Diversity.operator ==(Weaviate.Client.Models.Diversity? left, Weaviate.Client.Models.Diversity? right) -> bool +static Weaviate.Client.QueryClientHybridExtensions.Hybrid(this Weaviate.Client.QueryClient! client, string? query = null, Weaviate.Client.Models.HybridVectorInput.FactoryFn? vectors = null, float? alpha = null, string![]? queryProperties = null, Weaviate.Client.Models.HybridFusion? fusionType = null, float? maxVectorDistance = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.BM25Operator? bm25Operator = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +static Weaviate.Client.QueryClientHybridExtensions.Hybrid(this Weaviate.Client.QueryClient! client, string? query, Weaviate.Client.Models.HybridVectorInput.FactoryFn? vectors, Weaviate.Client.Models.GroupByRequest! groupBy, float? alpha = null, string![]? queryProperties = null, Weaviate.Client.Models.HybridFusion? fusionType = null, float? maxVectorDistance = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.BM25Operator? bm25Operator = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +static Weaviate.Client.Typed.TypedGenerateClientHybridExtensions.Hybrid(this Weaviate.Client.Typed.TypedGenerateClient! client, string! query, Weaviate.Client.Models.HybridVectorInput.FactoryFn! vectors, float? alpha = null, string![]? queryProperties = null, Weaviate.Client.Models.HybridFusion? fusionType = null, float? maxVectorDistance = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.BM25Operator? bm25Operator = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +static Weaviate.Client.Typed.TypedGenerateClientHybridExtensions.Hybrid(this Weaviate.Client.Typed.TypedGenerateClient! client, string! query, Weaviate.Client.Models.HybridVectorInput.FactoryFn! vectors, Weaviate.Client.Models.GroupByRequest! groupBy, float? alpha = null, string![]? queryProperties = null, Weaviate.Client.Models.HybridFusion? fusionType = null, float? maxVectorDistance = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.BM25Operator? bm25Operator = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +static Weaviate.Client.Typed.TypedQueryClientHybridExtensions.Hybrid(this Weaviate.Client.Typed.TypedQueryClient! client, string! query, Weaviate.Client.Models.HybridVectorInput.FactoryFn! vectors, float? alpha = null, string![]? queryProperties = null, Weaviate.Client.Models.HybridFusion? fusionType = null, float? maxVectorDistance = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.BM25Operator? bm25Operator = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>!>! +static Weaviate.Client.Typed.TypedQueryClientHybridExtensions.Hybrid(this Weaviate.Client.Typed.TypedQueryClient! client, string! query, Weaviate.Client.Models.HybridVectorInput.FactoryFn! vectors, Weaviate.Client.Models.GroupByRequest! groupBy, float? alpha = null, string![]? queryProperties = null, Weaviate.Client.Models.HybridFusion? fusionType = null, float? maxVectorDistance = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.BM25Operator? bm25Operator = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +virtual Weaviate.Client.Models.Diversity.EqualityContract.get -> System.Type! +virtual Weaviate.Client.Models.Diversity.Equals(Weaviate.Client.Models.Diversity? other) -> bool +virtual Weaviate.Client.Models.Diversity.MMR.Equals(Weaviate.Client.Models.Diversity.MMR? other) -> bool +virtual Weaviate.Client.Models.Diversity.PrintMembers(System.Text.StringBuilder! builder) -> bool +Weaviate.Client.GenerateClient.Hybrid(string! query, float? alpha = null, string![]? queryProperties = null, Weaviate.Client.Models.HybridFusion? fusionType = null, float? maxVectorDistance = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.BM25Operator? bm25Operator = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +Weaviate.Client.GenerateClient.Hybrid(string! query, Weaviate.Client.Models.GroupByRequest! groupBy, float? alpha = null, string![]? queryProperties = null, Weaviate.Client.Models.HybridFusion? fusionType = null, float? maxVectorDistance = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.BM25Operator? bm25Operator = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +Weaviate.Client.GenerateClient.Hybrid(string? query, Weaviate.Client.Models.HybridVectorInput? vectors, float? alpha = null, string![]? queryProperties = null, Weaviate.Client.Models.HybridFusion? fusionType = null, float? maxVectorDistance = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.BM25Operator? bm25Operator = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +Weaviate.Client.GenerateClient.Hybrid(string? query, Weaviate.Client.Models.HybridVectorInput? vectors, Weaviate.Client.Models.GroupByRequest! groupBy, float? alpha = null, string![]? queryProperties = null, Weaviate.Client.Models.HybridFusion? fusionType = null, float? maxVectorDistance = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.BM25Operator? bm25Operator = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +Weaviate.Client.Models.Diversity +Weaviate.Client.Models.Diversity.Diversity() -> void +Weaviate.Client.Models.Diversity.Diversity(Weaviate.Client.Models.Diversity! original) -> void +Weaviate.Client.Models.Diversity.MMR +Weaviate.Client.Models.Diversity.MMR.Balance.get -> float? +Weaviate.Client.Models.Diversity.MMR.Balance.init -> void +Weaviate.Client.Models.Diversity.MMR.Deconstruct(out uint? Limit, out float? Balance) -> void +Weaviate.Client.Models.Diversity.MMR.Limit.get -> uint? +Weaviate.Client.Models.Diversity.MMR.Limit.init -> void +Weaviate.Client.Models.Diversity.MMR.MMR(uint? Limit = null, float? Balance = null) -> void +Weaviate.Client.Models.Diversity.MMR.MMR(Weaviate.Client.Models.Diversity.MMR! original) -> void +Weaviate.Client.QueryClient.Hybrid(string! query, float? alpha = null, string![]? queryProperties = null, Weaviate.Client.Models.HybridFusion? fusionType = null, float? maxVectorDistance = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.BM25Operator? bm25Operator = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +Weaviate.Client.QueryClient.Hybrid(string! query, Weaviate.Client.Models.GroupByRequest! groupBy, float? alpha = null, string![]? queryProperties = null, Weaviate.Client.Models.HybridFusion? fusionType = null, float? maxVectorDistance = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.BM25Operator? bm25Operator = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +Weaviate.Client.QueryClient.Hybrid(string? query, Weaviate.Client.Models.HybridVectorInput? vectors, float? alpha = null, string![]? queryProperties = null, Weaviate.Client.Models.HybridFusion? fusionType = null, float? maxVectorDistance = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.BM25Operator? bm25Operator = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +Weaviate.Client.QueryClient.Hybrid(string? query, Weaviate.Client.Models.HybridVectorInput? vectors, Weaviate.Client.Models.GroupByRequest! groupBy, float? alpha = null, string![]? queryProperties = null, Weaviate.Client.Models.HybridFusion? fusionType = null, float? maxVectorDistance = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.BM25Operator? bm25Operator = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +Weaviate.Client.Typed.TypedGenerateClient.Hybrid(string! query, float? alpha = null, string![]? queryProperties = null, Weaviate.Client.Models.HybridFusion? fusionType = null, float? maxVectorDistance = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.BM25Operator? bm25Operator = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +Weaviate.Client.Typed.TypedGenerateClient.Hybrid(string! query, Weaviate.Client.Models.GroupByRequest! groupBy, float? alpha = null, string![]? queryProperties = null, Weaviate.Client.Models.HybridFusion? fusionType = null, float? maxVectorDistance = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.BM25Operator? bm25Operator = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +Weaviate.Client.Typed.TypedGenerateClient.Hybrid(string? query, Weaviate.Client.Models.HybridVectorInput? vectors, float? alpha = null, string![]? queryProperties = null, Weaviate.Client.Models.HybridFusion? fusionType = null, float? maxVectorDistance = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.BM25Operator? bm25Operator = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +Weaviate.Client.Typed.TypedGenerateClient.Hybrid(string? query, Weaviate.Client.Models.HybridVectorInput? vectors, Weaviate.Client.Models.GroupByRequest! groupBy, float? alpha = null, string![]? queryProperties = null, Weaviate.Client.Models.HybridFusion? fusionType = null, float? maxVectorDistance = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.BM25Operator? bm25Operator = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +Weaviate.Client.Typed.TypedQueryClient.Hybrid(string! query, float? alpha = null, string![]? queryProperties = null, Weaviate.Client.Models.HybridFusion? fusionType = null, float? maxVectorDistance = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.BM25Operator? bm25Operator = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>!>! +Weaviate.Client.Typed.TypedQueryClient.Hybrid(string! query, Weaviate.Client.Models.GroupByRequest! groupBy, float? alpha = null, string![]? queryProperties = null, Weaviate.Client.Models.HybridFusion? fusionType = null, float? maxVectorDistance = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.BM25Operator? bm25Operator = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +Weaviate.Client.Typed.TypedQueryClient.Hybrid(string? query, Weaviate.Client.Models.HybridVectorInput? vectors, float? alpha = null, string![]? queryProperties = null, Weaviate.Client.Models.HybridFusion? fusionType = null, float? maxVectorDistance = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.BM25Operator? bm25Operator = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>!>! +Weaviate.Client.Typed.TypedQueryClient.Hybrid(string? query, Weaviate.Client.Models.HybridVectorInput? vectors, Weaviate.Client.Models.GroupByRequest! groupBy, float? alpha = null, string![]? queryProperties = null, Weaviate.Client.Models.HybridFusion? fusionType = null, float? maxVectorDistance = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.BM25Operator? bm25Operator = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! diff --git a/src/Weaviate.Client/QueryClient.Hybrid.cs b/src/Weaviate.Client/QueryClient.Hybrid.cs index f0519b37..368cb009 100644 --- a/src/Weaviate.Client/QueryClient.Hybrid.cs +++ b/src/Weaviate.Client/QueryClient.Hybrid.cs @@ -20,6 +20,7 @@ public Task Hybrid( uint? limit = null, uint? offset = null, BM25Operator? bm25Operator = null, + Diversity? diversitySelection = null, uint? autoLimit = null, Filter? filters = null, Rerank? rerank = null, @@ -39,6 +40,7 @@ public Task Hybrid( limit: limit, offset: offset, bm25Operator: bm25Operator, + diversitySelection: diversitySelection, autoLimit: autoLimit, filters: filters, rerank: rerank, @@ -62,6 +64,7 @@ public async Task Hybrid( uint? limit = null, uint? offset = null, BM25Operator? bm25Operator = null, + Diversity? diversitySelection = null, uint? autoLimit = null, Filter? filters = null, Rerank? rerank = null, @@ -90,6 +93,7 @@ public async Task Hybrid( limit: limit, offset: offset, bm25Operator: bm25Operator, + diversitySelection: diversitySelection, autoLimit: autoLimit, filters: filters, rerank: rerank, @@ -116,6 +120,7 @@ public Task Hybrid( uint? limit = null, uint? offset = null, BM25Operator? bm25Operator = null, + Diversity? diversitySelection = null, uint? autoLimit = null, Filter? filters = null, Rerank? rerank = null, @@ -136,6 +141,7 @@ public Task Hybrid( limit: limit, offset: offset, bm25Operator: bm25Operator, + diversitySelection: diversitySelection, autoLimit: autoLimit, filters: filters, rerank: rerank, @@ -160,6 +166,7 @@ public async Task Hybrid( uint? limit = null, uint? offset = null, BM25Operator? bm25Operator = null, + Diversity? diversitySelection = null, uint? autoLimit = null, Filter? filters = null, Rerank? rerank = null, @@ -188,6 +195,7 @@ public async Task Hybrid( limit: limit, offset: offset, bm25Operator: bm25Operator, + diversitySelection: diversitySelection, autoLimit: autoLimit, filters: filters, groupBy: groupBy, @@ -232,6 +240,7 @@ public static async Task Hybrid( uint? limit = null, uint? offset = null, BM25Operator? bm25Operator = null, + Diversity? diversitySelection = null, uint? autoLimit = null, Filter? filters = null, Rerank? rerank = null, @@ -254,6 +263,7 @@ public static async Task Hybrid( limit: limit, offset: offset, bm25Operator: bm25Operator, + diversitySelection: diversitySelection, autoLimit: autoLimit, filters: filters, rerank: rerank, @@ -281,6 +291,7 @@ public static async Task Hybrid( uint? limit = null, uint? offset = null, BM25Operator? bm25Operator = null, + Diversity? diversitySelection = null, uint? autoLimit = null, Filter? filters = null, Rerank? rerank = null, @@ -304,6 +315,7 @@ public static async Task Hybrid( limit: limit, offset: offset, bm25Operator: bm25Operator, + diversitySelection: diversitySelection, autoLimit: autoLimit, filters: filters, rerank: rerank, diff --git a/src/Weaviate.Client/Typed/TypedGenerateClient.Hybrid.cs b/src/Weaviate.Client/Typed/TypedGenerateClient.Hybrid.cs index c6416bea..c9cb9913 100644 --- a/src/Weaviate.Client/Typed/TypedGenerateClient.Hybrid.cs +++ b/src/Weaviate.Client/Typed/TypedGenerateClient.Hybrid.cs @@ -21,6 +21,7 @@ public Task> Hybrid( uint? limit = null, uint? offset = null, BM25Operator? bm25Operator = null, + Diversity? diversitySelection = null, uint? autoLimit = null, Filter? filters = null, Rerank? rerank = null, @@ -43,6 +44,7 @@ public Task> Hybrid( limit: limit, offset: offset, bm25Operator: bm25Operator, + diversitySelection: diversitySelection, autoLimit: autoLimit, filters: filters, rerank: rerank, @@ -69,6 +71,7 @@ public async Task> Hybrid( uint? limit = null, uint? offset = null, BM25Operator? bm25Operator = null, + Diversity? diversitySelection = null, uint? autoLimit = null, Filter? filters = null, Rerank? rerank = null, @@ -92,6 +95,7 @@ public async Task> Hybrid( limit: limit, offset: offset, bm25Operator: bm25Operator, + diversitySelection: diversitySelection, autoLimit: autoLimit, filters: filters, rerank: rerank, @@ -120,6 +124,7 @@ public Task> Hybrid( uint? limit = null, uint? offset = null, BM25Operator? bm25Operator = null, + Diversity? diversitySelection = null, uint? autoLimit = null, Filter? filters = null, Rerank? rerank = null, @@ -143,6 +148,7 @@ public Task> Hybrid( limit: limit, offset: offset, bm25Operator: bm25Operator, + diversitySelection: diversitySelection, autoLimit: autoLimit, filters: filters, rerank: rerank, @@ -170,6 +176,7 @@ public async Task> Hybrid( uint? limit = null, uint? offset = null, BM25Operator? bm25Operator = null, + Diversity? diversitySelection = null, uint? autoLimit = null, Filter? filters = null, Rerank? rerank = null, @@ -194,6 +201,7 @@ public async Task> Hybrid( limit: limit, offset: offset, bm25Operator: bm25Operator, + diversitySelection: diversitySelection, autoLimit: autoLimit, filters: filters, rerank: rerank, @@ -230,6 +238,7 @@ public static async Task> Hybrid( uint? limit = null, uint? offset = null, BM25Operator? bm25Operator = null, + Diversity? diversitySelection = null, uint? autoLimit = null, Filter? filters = null, Rerank? rerank = null, @@ -253,6 +262,7 @@ await client.Hybrid( limit: limit, offset: offset, bm25Operator: bm25Operator, + diversitySelection: diversitySelection, autoLimit: autoLimit, filters: filters, rerank: rerank, @@ -282,6 +292,7 @@ public static async Task> Hybrid( uint? limit = null, uint? offset = null, BM25Operator? bm25Operator = null, + Diversity? diversitySelection = null, uint? autoLimit = null, Filter? filters = null, Rerank? rerank = null, @@ -306,6 +317,7 @@ await client.Hybrid( limit: limit, offset: offset, bm25Operator: bm25Operator, + diversitySelection: diversitySelection, autoLimit: autoLimit, filters: filters, rerank: rerank, diff --git a/src/Weaviate.Client/Typed/TypedQueryClient.Hybrid.cs b/src/Weaviate.Client/Typed/TypedQueryClient.Hybrid.cs index 8743ea53..62ca455c 100644 --- a/src/Weaviate.Client/Typed/TypedQueryClient.Hybrid.cs +++ b/src/Weaviate.Client/Typed/TypedQueryClient.Hybrid.cs @@ -21,6 +21,7 @@ public Task>> Hybrid( uint? limit = null, uint? offset = null, BM25Operator? bm25Operator = null, + Diversity? diversitySelection = null, uint? autoLimit = null, Filter? filters = null, Rerank? rerank = null, @@ -40,6 +41,7 @@ public Task>> Hybrid( limit: limit, offset: offset, bm25Operator: bm25Operator, + diversitySelection: diversitySelection, autoLimit: autoLimit, filters: filters, rerank: rerank, @@ -63,6 +65,7 @@ public async Task>> Hybrid( uint? limit = null, uint? offset = null, BM25Operator? bm25Operator = null, + Diversity? diversitySelection = null, uint? autoLimit = null, Filter? filters = null, Rerank? rerank = null, @@ -83,6 +86,7 @@ public async Task>> Hybrid( limit: limit, offset: offset, bm25Operator: bm25Operator, + diversitySelection: diversitySelection, autoLimit: autoLimit, filters: filters, rerank: rerank, @@ -108,6 +112,7 @@ public Task> Hybrid( uint? limit = null, uint? offset = null, BM25Operator? bm25Operator = null, + Diversity? diversitySelection = null, uint? autoLimit = null, Filter? filters = null, Rerank? rerank = null, @@ -128,6 +133,7 @@ public Task> Hybrid( limit: limit, offset: offset, bm25Operator: bm25Operator, + diversitySelection: diversitySelection, autoLimit: autoLimit, filters: filters, rerank: rerank, @@ -152,6 +158,7 @@ public async Task> Hybrid( uint? limit = null, uint? offset = null, BM25Operator? bm25Operator = null, + Diversity? diversitySelection = null, uint? autoLimit = null, Filter? filters = null, Rerank? rerank = null, @@ -173,6 +180,7 @@ public async Task> Hybrid( limit: limit, offset: offset, bm25Operator: bm25Operator, + diversitySelection: diversitySelection, autoLimit: autoLimit, filters: filters, rerank: rerank, @@ -225,6 +233,7 @@ public static async Task>> Hybrid( uint? limit = null, uint? offset = null, BM25Operator? bm25Operator = null, + Diversity? diversitySelection = null, uint? autoLimit = null, Filter? filters = null, Rerank? rerank = null, @@ -245,6 +254,7 @@ await client.Hybrid( limit: limit, offset: offset, bm25Operator: bm25Operator, + diversitySelection: diversitySelection, autoLimit: autoLimit, filters: filters, rerank: rerank, @@ -271,6 +281,7 @@ public static async Task> Hybrid( uint? limit = null, uint? offset = null, BM25Operator? bm25Operator = null, + Diversity? diversitySelection = null, uint? autoLimit = null, Filter? filters = null, Rerank? rerank = null, @@ -292,6 +303,7 @@ await client.Hybrid( limit: limit, offset: offset, bm25Operator: bm25Operator, + diversitySelection: diversitySelection, autoLimit: autoLimit, filters: filters, rerank: rerank, diff --git a/src/Weaviate.Client/gRPC/Search.Builders.cs b/src/Weaviate.Client/gRPC/Search.Builders.cs index 3d463e43..31ced27c 100644 --- a/src/Weaviate.Client/gRPC/Search.Builders.cs +++ b/src/Weaviate.Client/gRPC/Search.Builders.cs @@ -875,6 +875,7 @@ private void BuildBM25( /// The fusion type /// The max vector distance /// The bm 25 operator + /// The diversity selection /// The hybrid private V1.Hybrid BuildHybrid( string? query = null, @@ -883,7 +884,8 @@ private V1.Hybrid BuildHybrid( string[]? queryProperties = null, HybridFusion? fusionType = null, float? maxVectorDistance = null, - BM25Operator? bm25Operator = null + BM25Operator? bm25Operator = null, + Diversity? diversitySelection = null ) { var hybrid = new V1.Hybrid(); @@ -1021,6 +1023,19 @@ private V1.Hybrid BuildHybrid( MinimumOrTokensMatch = (bm25Operator as BM25Operator.Or)?.MinimumMatch ?? 1, }; } + if (diversitySelection is Diversity.MMR mmr) + { + var mmrGrpc = new V1.Selection.Types.MMR(); + if (mmr.Limit.HasValue) + { + mmrGrpc.Limit = mmr.Limit.Value; + } + if (mmr.Balance.HasValue) + { + mmrGrpc.Balance = mmr.Balance.Value; + } + hybrid.Selection = new V1.Selection { Mmr = mmrGrpc }; + } return hybrid; } diff --git a/src/Weaviate.Client/gRPC/Search.cs b/src/Weaviate.Client/gRPC/Search.cs index 296f5455..0569f0d7 100644 --- a/src/Weaviate.Client/gRPC/Search.cs +++ b/src/Weaviate.Client/gRPC/Search.cs @@ -336,6 +336,7 @@ internal partial class WeaviateGrpcClient /// The limit /// The offset /// The bm 25 operator + /// The diversity selection /// The auto limit /// The filters /// The group by @@ -362,6 +363,7 @@ internal partial class WeaviateGrpcClient uint? limit = null, uint? offset = null, BM25Operator? bm25Operator = null, + Diversity? diversitySelection = null, uint? autoLimit = null, Filter? filters = null, GroupByRequest? groupBy = null, @@ -410,7 +412,8 @@ internal partial class WeaviateGrpcClient queryProperties, fusionType, maxVectorDistance, - bm25Operator + bm25Operator, + diversitySelection ); return await Search(request, cancellationToken); From 8cd55503ace09da84fb96ac21dc28281823c9d9c Mon Sep 17 00:00:00 2001 From: Ivan Despot <66276597+g-despot@users.noreply.github.com> Date: Thu, 13 Aug 2026 09:53:48 +0200 Subject: [PATCH 2/2] feat: accept diversity selection on near* queries (Weaviate 1.37+) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Diversity/MMR was wired into hybrid only. base_search.proto carries an optional Selection on NearVector, NearTextSearch, NearObject and each Near*Search message, and the server has supported it since 1.37.0 — hybrid diversity is the newer 1.38.6 addition, so the broader surface was in fact the older one. Threads diversitySelection through the 74 near* overloads across the query, generate and typed clients, and moves the hybrid mapping into a shared BuildSelection helper. No proto change was needed. Aggregate is deliberately excluded, matching the python client. --- .../Unit/TestNearDiversitySyntax.cs | 785 ++++++++++++++++++ .../GenerateClient.NearMedia.cs | 6 + .../GenerateClient.NearObject.cs | 6 + .../GenerateClient.NearText.cs | 18 + .../GenerateClient.NearVector.cs | 20 + src/Weaviate.Client/Models/Search.cs | 4 +- src/Weaviate.Client/PublicAPI.Unshipped.txt | 148 ++++ src/Weaviate.Client/QueryClient.NearMedia.cs | 12 + src/Weaviate.Client/QueryClient.NearObject.cs | 6 + src/Weaviate.Client/QueryClient.NearText.cs | 18 + src/Weaviate.Client/QueryClient.NearVector.cs | 24 + .../Typed/TypedGenerateClient.NearMedia.cs | 6 + .../Typed/TypedGenerateClient.NearObject.cs | 6 + .../Typed/TypedGenerateClient.NearText.cs | 18 + .../Typed/TypedGenerateClient.NearVector.cs | 24 + .../Typed/TypedQueryClient.NearMedia.cs | 6 + .../Typed/TypedQueryClient.NearObject.cs | 6 + .../Typed/TypedQueryClient.NearText.cs | 18 + .../Typed/TypedQueryClient.NearVector.cs | 24 + src/Weaviate.Client/gRPC/Search.Builders.cs | 69 +- src/Weaviate.Client/gRPC/Search.cs | 53 +- 21 files changed, 1259 insertions(+), 18 deletions(-) create mode 100644 src/Weaviate.Client.Tests/Unit/TestNearDiversitySyntax.cs diff --git a/src/Weaviate.Client.Tests/Unit/TestNearDiversitySyntax.cs b/src/Weaviate.Client.Tests/Unit/TestNearDiversitySyntax.cs new file mode 100644 index 00000000..75e1db5a --- /dev/null +++ b/src/Weaviate.Client.Tests/Unit/TestNearDiversitySyntax.cs @@ -0,0 +1,785 @@ +using Weaviate.Client.Models; +using Weaviate.Client.Tests.Unit.Mocks; +using Weaviate.Client.Typed; +using V1 = Weaviate.Client.Grpc.Protobuf.V1; + +namespace Weaviate.Client.Tests.Unit; + +/// +/// Unit tests verifying the near-vector, near-object, near-text and near-media diversity +/// selection maps to the expected Selection message in the gRPC request across the query, +/// generate and typed paths. +/// +[Collection("Unit Tests")] +public class TestNearDiversitySyntax : IAsyncLifetime +{ + private const string CollectionName = "TestCollection"; + + private static readonly byte[] TestMediaBytes = [1, 2, 3, 4, 5]; + + private static readonly Guid TestObjectID = new("11111111-1111-1111-1111-111111111111"); + + private Func _getRequest = null!; + private CollectionClient _collection = null!; + + /// + /// The article test type + /// + private class Article + { + /// + /// The title + /// + public string? Title { get; set; } + } + + /// + /// Initializes this instance + /// + /// The value task + public ValueTask InitializeAsync() + { + var (client, getRequest) = MockGrpcClient.CreateWithSearchCapture(new Version(1, 39, 0)); + _getRequest = getRequest; + _collection = client.Collections.Use(CollectionName); + return ValueTask.CompletedTask; + } + + /// + /// Disposes this instance + /// + /// The value task + public ValueTask DisposeAsync() + { + GC.SuppressFinalize(this); + return ValueTask.CompletedTask; + } + + #region NearVector + + /// + /// Tests that near vector diversity selection sets selection on the request + /// + [Fact] + public async Task NearVector_DiversitySelection_MMR_SetsSelection() + { + // Act + await _collection.Query.NearVector( + new float[] { 1f, 0f, 0f }, + diversitySelection: new Diversity.MMR(Limit: 7, Balance: 0.5f), + limit: 7, + cancellationToken: TestContext.Current.CancellationToken + ); + + // Assert + var request = _getRequest(); + Assert.NotNull(request); + Assert.NotNull(request.NearVector.Selection); + Assert.Equal(7u, request.NearVector.Selection.Mmr.Limit); + Assert.Equal(0.5f, request.NearVector.Selection.Mmr.Balance); + } + + /// + /// Tests that near vector diversity selection with omitted balance leaves balance unset + /// + [Fact] + public async Task NearVector_DiversitySelection_BalanceOmitted_LeavesBalanceUnset() + { + // Act + await _collection.Query.NearVector( + new float[] { 1f, 0f, 0f }, + diversitySelection: new Diversity.MMR(Limit: 3), + cancellationToken: TestContext.Current.CancellationToken + ); + + // Assert + var request = _getRequest(); + Assert.NotNull(request); + Assert.NotNull(request.NearVector.Selection); + Assert.True(request.NearVector.Selection.Mmr.HasLimit); + Assert.Equal(3u, request.NearVector.Selection.Mmr.Limit); + Assert.False(request.NearVector.Selection.Mmr.HasBalance); + } + + /// + /// Tests that near vector diversity selection with omitted limit leaves limit unset + /// + [Fact] + public async Task NearVector_DiversitySelection_LimitOmitted_LeavesLimitUnset() + { + // Act + await _collection.Query.NearVector( + new float[] { 1f, 0f, 0f }, + diversitySelection: new Diversity.MMR(Balance: 0.25f), + cancellationToken: TestContext.Current.CancellationToken + ); + + // Assert + var request = _getRequest(); + Assert.NotNull(request); + Assert.NotNull(request.NearVector.Selection); + Assert.False(request.NearVector.Selection.Mmr.HasLimit); + Assert.True(request.NearVector.Selection.Mmr.HasBalance); + Assert.Equal(0.25f, request.NearVector.Selection.Mmr.Balance); + } + + /// + /// Tests that near vector without diversity selection leaves selection unset + /// + [Fact] + public async Task NearVector_NoDiversitySelection_LeavesSelectionUnset() + { + // Act + await _collection.Query.NearVector( + new float[] { 1f, 0f, 0f }, + limit: 5, + cancellationToken: TestContext.Current.CancellationToken + ); + + // Assert + var request = _getRequest(); + Assert.NotNull(request); + Assert.Null(request.NearVector.Selection); + } + + /// + /// Tests that near vector with group by carries the diversity selection + /// + [Fact] + public async Task NearVector_GroupBy_DiversitySelection_SetsSelection() + { + // Act + await _collection.Query.NearVector( + new float[] { 1f, 0f, 0f }, + new GroupByRequest("category") { ObjectsPerGroup = 3 }, + diversitySelection: new Diversity.MMR(Limit: 5, Balance: 0.75f), + cancellationToken: TestContext.Current.CancellationToken + ); + + // Assert + var request = _getRequest(); + Assert.NotNull(request); + Assert.NotNull(request.NearVector.Selection); + Assert.Equal(5u, request.NearVector.Selection.Mmr.Limit); + Assert.Equal(0.75f, request.NearVector.Selection.Mmr.Balance); + } + + #endregion + + #region NearObject + + /// + /// Tests that near object diversity selection sets selection on the request + /// + [Fact] + public async Task NearObject_DiversitySelection_MMR_SetsSelection() + { + // Act + await _collection.Query.NearObject( + TestObjectID, + diversitySelection: new Diversity.MMR(Limit: 4, Balance: 0.4f), + cancellationToken: TestContext.Current.CancellationToken + ); + + // Assert + var request = _getRequest(); + Assert.NotNull(request); + Assert.NotNull(request.NearObject.Selection); + Assert.Equal(4u, request.NearObject.Selection.Mmr.Limit); + Assert.Equal(0.4f, request.NearObject.Selection.Mmr.Balance); + } + + /// + /// Tests that near object diversity selection with omitted balance leaves balance unset + /// + [Fact] + public async Task NearObject_DiversitySelection_BalanceOmitted_LeavesBalanceUnset() + { + // Act + await _collection.Query.NearObject( + TestObjectID, + diversitySelection: new Diversity.MMR(Limit: 2), + cancellationToken: TestContext.Current.CancellationToken + ); + + // Assert + var request = _getRequest(); + Assert.NotNull(request); + Assert.NotNull(request.NearObject.Selection); + Assert.True(request.NearObject.Selection.Mmr.HasLimit); + Assert.False(request.NearObject.Selection.Mmr.HasBalance); + } + + /// + /// Tests that near object without diversity selection leaves selection unset + /// + [Fact] + public async Task NearObject_NoDiversitySelection_LeavesSelectionUnset() + { + // Act + await _collection.Query.NearObject( + TestObjectID, + cancellationToken: TestContext.Current.CancellationToken + ); + + // Assert + var request = _getRequest(); + Assert.NotNull(request); + Assert.Null(request.NearObject.Selection); + } + + #endregion + + #region NearText + + /// + /// Tests that near text diversity selection sets selection on the request + /// + [Fact] + public async Task NearText_DiversitySelection_MMR_SetsSelection() + { + // Act + await _collection.Query.NearText( + "banana", + diversitySelection: new Diversity.MMR(Limit: 6, Balance: 0.2f), + cancellationToken: TestContext.Current.CancellationToken + ); + + // Assert + var request = _getRequest(); + Assert.NotNull(request); + Assert.NotNull(request.NearText.Selection); + Assert.Equal(6u, request.NearText.Selection.Mmr.Limit); + Assert.Equal(0.2f, request.NearText.Selection.Mmr.Balance); + } + + /// + /// Tests that near text diversity selection with omitted limit leaves limit unset + /// + [Fact] + public async Task NearText_DiversitySelection_LimitOmitted_LeavesLimitUnset() + { + // Act + await _collection.Query.NearText( + "banana", + diversitySelection: new Diversity.MMR(Balance: 0.9f), + cancellationToken: TestContext.Current.CancellationToken + ); + + // Assert + var request = _getRequest(); + Assert.NotNull(request); + Assert.NotNull(request.NearText.Selection); + Assert.False(request.NearText.Selection.Mmr.HasLimit); + Assert.Equal(0.9f, request.NearText.Selection.Mmr.Balance); + } + + /// + /// Tests that near text without diversity selection leaves selection unset + /// + [Fact] + public async Task NearText_NoDiversitySelection_LeavesSelectionUnset() + { + // Act + await _collection.Query.NearText( + "banana", + cancellationToken: TestContext.Current.CancellationToken + ); + + // Assert + var request = _getRequest(); + Assert.NotNull(request); + Assert.Null(request.NearText.Selection); + } + + /// + /// Tests that the near text lambda builder overload carries the diversity selection + /// + [Fact] + public async Task NearText_LambdaBuilder_DiversitySelection_SetsSelection() + { + // Act + await _collection.Query.NearText( + v => v(["banana"]).TargetVectorsSum("title", "description"), + diversitySelection: new Diversity.MMR(Limit: 8), + cancellationToken: TestContext.Current.CancellationToken + ); + + // Assert + var request = _getRequest(); + Assert.NotNull(request); + Assert.NotNull(request.NearText.Selection); + Assert.Equal(8u, request.NearText.Selection.Mmr.Limit); + } + + #endregion + + #region NearMedia + + /// + /// Returns the selection carried by the near-media message of the given type + /// + /// The request + /// The media type + /// The selection, or null when unset + private static V1.Selection? MediaSelection( + V1.SearchRequest request, + NearMediaType mediaType + ) => + mediaType switch + { + NearMediaType.Image => request.NearImage?.Selection, + NearMediaType.Video => request.NearVideo?.Selection, + NearMediaType.Audio => request.NearAudio?.Selection, + NearMediaType.Depth => request.NearDepth?.Selection, + NearMediaType.Thermal => request.NearThermal?.Selection, + NearMediaType.IMU => request.NearImu?.Selection, + _ => throw new ArgumentOutOfRangeException(nameof(mediaType)), + }; + + /// + /// Builds the near-media input for the given media type + /// + /// The media type + /// The near media input factory + private static NearMediaInput.FactoryFn MediaFactory(NearMediaType mediaType) => + mediaType switch + { + NearMediaType.Image => m => m.Image(TestMediaBytes).Build(), + NearMediaType.Video => m => m.Video(TestMediaBytes).Build(), + NearMediaType.Audio => m => m.Audio(TestMediaBytes).Build(), + NearMediaType.Depth => m => m.Depth(TestMediaBytes).Build(), + NearMediaType.Thermal => m => m.Thermal(TestMediaBytes).Build(), + NearMediaType.IMU => m => m.IMU(TestMediaBytes).Build(), + _ => throw new ArgumentOutOfRangeException(nameof(mediaType)), + }; + + /// + /// Tests that every near media type carries the diversity selection + /// + /// The media type + /// A task + [Theory] + [InlineData(NearMediaType.Image)] + [InlineData(NearMediaType.Video)] + [InlineData(NearMediaType.Audio)] + [InlineData(NearMediaType.Depth)] + [InlineData(NearMediaType.Thermal)] + [InlineData(NearMediaType.IMU)] + public async Task NearMedia_DiversitySelection_MMR_SetsSelection(NearMediaType mediaType) + { + // Act + await _collection.Query.NearMedia( + MediaFactory(mediaType), + diversitySelection: new Diversity.MMR(Limit: 9, Balance: 0.6f), + cancellationToken: TestContext.Current.CancellationToken + ); + + // Assert + var request = _getRequest(); + Assert.NotNull(request); + var selection = MediaSelection(request, mediaType); + Assert.NotNull(selection); + Assert.Equal(9u, selection.Mmr.Limit); + Assert.Equal(0.6f, selection.Mmr.Balance); + } + + /// + /// Tests that near media diversity selection with omitted balance leaves balance unset + /// + [Fact] + public async Task NearMedia_DiversitySelection_BalanceOmitted_LeavesBalanceUnset() + { + // Act + await _collection.Query.NearMedia( + m => m.Image(TestMediaBytes).Build(), + diversitySelection: new Diversity.MMR(Limit: 1), + cancellationToken: TestContext.Current.CancellationToken + ); + + // Assert + var request = _getRequest(); + Assert.NotNull(request); + Assert.NotNull(request.NearImage.Selection); + Assert.True(request.NearImage.Selection.Mmr.HasLimit); + Assert.False(request.NearImage.Selection.Mmr.HasBalance); + } + + /// + /// Tests that near media without diversity selection leaves selection unset + /// + [Fact] + public async Task NearMedia_NoDiversitySelection_LeavesSelectionUnset() + { + // Act + await _collection.Query.NearMedia( + m => m.Image(TestMediaBytes).Build(), + cancellationToken: TestContext.Current.CancellationToken + ); + + // Assert + var request = _getRequest(); + Assert.NotNull(request); + Assert.Null(request.NearImage.Selection); + } + + #endregion + + #region Generate + + /// + /// Tests that generate near vector diversity selection sets selection on the request + /// + [Fact] + public async Task Generate_NearVector_DiversitySelection_SetsSelection() + { + // Act + await _collection.Generate.NearVector( + new float[] { 1f, 0f, 0f }, + diversitySelection: new Diversity.MMR(Limit: 4, Balance: 0.25f), + singlePrompt: "Describe {title}", + cancellationToken: TestContext.Current.CancellationToken + ); + + // Assert + var request = _getRequest(); + Assert.NotNull(request); + Assert.NotNull(request.NearVector.Selection); + Assert.Equal(4u, request.NearVector.Selection.Mmr.Limit); + Assert.Equal(0.25f, request.NearVector.Selection.Mmr.Balance); + } + + /// + /// Tests that generate near object diversity selection sets selection on the request + /// + [Fact] + public async Task Generate_NearObject_DiversitySelection_SetsSelection() + { + // Act + await _collection.Generate.NearObject( + TestObjectID, + diversitySelection: new Diversity.MMR(Limit: 3, Balance: 0.1f), + singlePrompt: "Describe {title}", + cancellationToken: TestContext.Current.CancellationToken + ); + + // Assert + var request = _getRequest(); + Assert.NotNull(request); + Assert.NotNull(request.NearObject.Selection); + Assert.Equal(3u, request.NearObject.Selection.Mmr.Limit); + Assert.Equal(0.1f, request.NearObject.Selection.Mmr.Balance); + } + + /// + /// Tests that generate near text diversity selection sets selection on the request + /// + [Fact] + public async Task Generate_NearText_DiversitySelection_SetsSelection() + { + // Act + await _collection.Generate.NearText( + "banana", + diversitySelection: new Diversity.MMR(Limit: 6), + singlePrompt: "Describe {title}", + cancellationToken: TestContext.Current.CancellationToken + ); + + // Assert + var request = _getRequest(); + Assert.NotNull(request); + Assert.NotNull(request.NearText.Selection); + Assert.Equal(6u, request.NearText.Selection.Mmr.Limit); + Assert.False(request.NearText.Selection.Mmr.HasBalance); + } + + /// + /// Tests that generate near media diversity selection sets selection on the request + /// + [Fact] + public async Task Generate_NearMedia_DiversitySelection_SetsSelection() + { + // Act + await _collection.Generate.NearMedia( + m => m.Image(TestMediaBytes).Build(), + diversitySelection: new Diversity.MMR(Limit: 2, Balance: 0.8f), + singlePrompt: "Describe {title}", + cancellationToken: TestContext.Current.CancellationToken + ); + + // Assert + var request = _getRequest(); + Assert.NotNull(request); + Assert.NotNull(request.NearImage.Selection); + Assert.Equal(2u, request.NearImage.Selection.Mmr.Limit); + Assert.Equal(0.8f, request.NearImage.Selection.Mmr.Balance); + } + + /// + /// Tests that generate near vector without diversity selection leaves selection unset + /// + [Fact] + public async Task Generate_NearVector_NoDiversitySelection_LeavesSelectionUnset() + { + // Act + await _collection.Generate.NearVector( + new float[] { 1f, 0f, 0f }, + singlePrompt: "Describe {title}", + cancellationToken: TestContext.Current.CancellationToken + ); + + // Assert + var request = _getRequest(); + Assert.NotNull(request); + Assert.Null(request.NearVector.Selection); + } + + #endregion + + #region Typed + + /// + /// Tests that typed near vector diversity selection sets selection on the request + /// + [Fact] + public async Task Typed_NearVector_DiversitySelection_SetsSelection() + { + // Arrange + var typedQueryClient = new TypedQueryClient
(_collection.Query); + + // Act + await typedQueryClient.NearVector( + new float[] { 1f, 0f, 0f }, + diversitySelection: new Diversity.MMR(Limit: 2, Balance: 1.0f), + cancellationToken: TestContext.Current.CancellationToken + ); + + // Assert + var request = _getRequest(); + Assert.NotNull(request); + Assert.NotNull(request.NearVector.Selection); + Assert.Equal(2u, request.NearVector.Selection.Mmr.Limit); + Assert.Equal(1.0f, request.NearVector.Selection.Mmr.Balance); + } + + /// + /// Tests that typed near object diversity selection sets selection on the request + /// + [Fact] + public async Task Typed_NearObject_DiversitySelection_SetsSelection() + { + // Arrange + var typedQueryClient = new TypedQueryClient
(_collection.Query); + + // Act + await typedQueryClient.NearObject( + TestObjectID, + diversitySelection: new Diversity.MMR(Limit: 5), + cancellationToken: TestContext.Current.CancellationToken + ); + + // Assert + var request = _getRequest(); + Assert.NotNull(request); + Assert.NotNull(request.NearObject.Selection); + Assert.Equal(5u, request.NearObject.Selection.Mmr.Limit); + Assert.False(request.NearObject.Selection.Mmr.HasBalance); + } + + /// + /// Tests that typed near text diversity selection sets selection on the request + /// + [Fact] + public async Task Typed_NearText_DiversitySelection_SetsSelection() + { + // Arrange + var typedQueryClient = new TypedQueryClient
(_collection.Query); + + // Act + await typedQueryClient.NearText( + "banana", + diversitySelection: new Diversity.MMR(Balance: 0.3f), + cancellationToken: TestContext.Current.CancellationToken + ); + + // Assert + var request = _getRequest(); + Assert.NotNull(request); + Assert.NotNull(request.NearText.Selection); + Assert.False(request.NearText.Selection.Mmr.HasLimit); + Assert.Equal(0.3f, request.NearText.Selection.Mmr.Balance); + } + + /// + /// Tests that typed near media diversity selection sets selection on the request + /// + [Fact] + public async Task Typed_NearMedia_DiversitySelection_SetsSelection() + { + // Arrange + var typedQueryClient = new TypedQueryClient
(_collection.Query); + + // Act + await typedQueryClient.NearMedia( + m => m.Image(TestMediaBytes).Build(), + diversitySelection: new Diversity.MMR(Limit: 3, Balance: 0.7f), + cancellationToken: TestContext.Current.CancellationToken + ); + + // Assert + var request = _getRequest(); + Assert.NotNull(request); + Assert.NotNull(request.NearImage.Selection); + Assert.Equal(3u, request.NearImage.Selection.Mmr.Limit); + Assert.Equal(0.7f, request.NearImage.Selection.Mmr.Balance); + } + + /// + /// Tests that typed near vector without diversity selection leaves selection unset + /// + [Fact] + public async Task Typed_NearVector_NoDiversitySelection_LeavesSelectionUnset() + { + // Arrange + var typedQueryClient = new TypedQueryClient
(_collection.Query); + + // Act + await typedQueryClient.NearVector( + new float[] { 1f, 0f, 0f }, + cancellationToken: TestContext.Current.CancellationToken + ); + + // Assert + var request = _getRequest(); + Assert.NotNull(request); + Assert.Null(request.NearVector.Selection); + } + + #endregion + + #region Typed generate + + /// + /// Tests that typed generate near vector diversity selection sets selection on the request + /// + [Fact] + public async Task Typed_Generate_NearVector_DiversitySelection_SetsSelection() + { + // Arrange + var typedGenerateClient = new TypedGenerateClient
(_collection.Generate); + + // Act + await typedGenerateClient.NearVector( + new float[] { 1f, 0f, 0f }, + diversitySelection: new Diversity.MMR(Limit: 6), + singlePrompt: "Describe {title}", + cancellationToken: TestContext.Current.CancellationToken + ); + + // Assert + var request = _getRequest(); + Assert.NotNull(request); + Assert.NotNull(request.NearVector.Selection); + Assert.Equal(6u, request.NearVector.Selection.Mmr.Limit); + Assert.False(request.NearVector.Selection.Mmr.HasBalance); + } + + /// + /// Tests that typed generate near object diversity selection sets selection on the request + /// + [Fact] + public async Task Typed_Generate_NearObject_DiversitySelection_SetsSelection() + { + // Arrange + var typedGenerateClient = new TypedGenerateClient
(_collection.Generate); + + // Act + await typedGenerateClient.NearObject( + TestObjectID, + diversitySelection: new Diversity.MMR(Limit: 1, Balance: 0.05f), + singlePrompt: "Describe {title}", + cancellationToken: TestContext.Current.CancellationToken + ); + + // Assert + var request = _getRequest(); + Assert.NotNull(request); + Assert.NotNull(request.NearObject.Selection); + Assert.Equal(1u, request.NearObject.Selection.Mmr.Limit); + Assert.Equal(0.05f, request.NearObject.Selection.Mmr.Balance); + } + + /// + /// Tests that typed generate near text diversity selection sets selection on the request + /// + [Fact] + public async Task Typed_Generate_NearText_DiversitySelection_SetsSelection() + { + // Arrange + var typedGenerateClient = new TypedGenerateClient
(_collection.Generate); + + // Act + await typedGenerateClient.NearText( + "banana", + diversitySelection: new Diversity.MMR(Limit: 7, Balance: 0.45f), + singlePrompt: "Describe {title}", + cancellationToken: TestContext.Current.CancellationToken + ); + + // Assert + var request = _getRequest(); + Assert.NotNull(request); + Assert.NotNull(request.NearText.Selection); + Assert.Equal(7u, request.NearText.Selection.Mmr.Limit); + Assert.Equal(0.45f, request.NearText.Selection.Mmr.Balance); + } + + /// + /// Tests that typed generate near media diversity selection sets selection on the request + /// + [Fact] + public async Task Typed_Generate_NearMedia_DiversitySelection_SetsSelection() + { + // Arrange + var typedGenerateClient = new TypedGenerateClient
(_collection.Generate); + + // Act + await typedGenerateClient.NearMedia( + m => m.Image(TestMediaBytes).Build(), + diversitySelection: new Diversity.MMR(Balance: 0.15f), + singlePrompt: "Describe {title}", + cancellationToken: TestContext.Current.CancellationToken + ); + + // Assert + var request = _getRequest(); + Assert.NotNull(request); + Assert.NotNull(request.NearImage.Selection); + Assert.False(request.NearImage.Selection.Mmr.HasLimit); + Assert.Equal(0.15f, request.NearImage.Selection.Mmr.Balance); + } + + /// + /// Tests that typed generate near vector without diversity selection leaves selection unset + /// + [Fact] + public async Task Typed_Generate_NearVector_NoDiversitySelection_LeavesSelectionUnset() + { + // Arrange + var typedGenerateClient = new TypedGenerateClient
(_collection.Generate); + + // Act + await typedGenerateClient.NearVector( + new float[] { 1f, 0f, 0f }, + singlePrompt: "Describe {title}", + cancellationToken: TestContext.Current.CancellationToken + ); + + // Assert + var request = _getRequest(); + Assert.NotNull(request); + Assert.Null(request.NearVector.Selection); + } + + #endregion +} diff --git a/src/Weaviate.Client/GenerateClient.NearMedia.cs b/src/Weaviate.Client/GenerateClient.NearMedia.cs index 607f663d..fbb7b0ad 100644 --- a/src/Weaviate.Client/GenerateClient.NearMedia.cs +++ b/src/Weaviate.Client/GenerateClient.NearMedia.cs @@ -28,6 +28,7 @@ public partial class GenerateClient /// Filters to apply to the search. /// Maximum number of results to return. /// Number of results to skip. + /// Diversity selection to apply to the results. /// Automatic result cutoff threshold. /// Re-ranking configuration. /// Single prompt for generative AI. @@ -44,6 +45,7 @@ public async Task NearMedia( Filter? filters = null, uint? limit = null, uint? offset = null, + Diversity? diversitySelection = null, uint? autoLimit = null, Rerank? rerank = null, SinglePrompt? singlePrompt = null, @@ -65,6 +67,7 @@ public async Task NearMedia( distance: input.Distance, limit: limit, offset: offset, + diversitySelection: diversitySelection, autoLimit: autoLimit, filters: filters, groupBy: null, @@ -100,6 +103,7 @@ public async Task NearMedia( /// Filters to apply to the search. /// Maximum number of results to return. /// Number of results to skip. + /// Diversity selection to apply to the results. /// Automatic result cutoff threshold. /// Re-ranking configuration. /// Single prompt for generative AI. @@ -117,6 +121,7 @@ public async Task NearMedia( Filter? filters = null, uint? limit = null, uint? offset = null, + Diversity? diversitySelection = null, uint? autoLimit = null, Rerank? rerank = null, SinglePrompt? singlePrompt = null, @@ -138,6 +143,7 @@ public async Task NearMedia( distance: input.Distance, limit: limit, offset: offset, + diversitySelection: diversitySelection, autoLimit: autoLimit, filters: filters, groupBy: groupBy, diff --git a/src/Weaviate.Client/GenerateClient.NearObject.cs b/src/Weaviate.Client/GenerateClient.NearObject.cs index e1035d82..5b79b81f 100644 --- a/src/Weaviate.Client/GenerateClient.NearObject.cs +++ b/src/Weaviate.Client/GenerateClient.NearObject.cs @@ -16,6 +16,7 @@ public partial class GenerateClient /// Distance threshold /// Maximum number of results /// Offset for pagination + /// The diversity selection /// Auto-limit threshold /// Filters to apply /// Rerank configuration @@ -35,6 +36,7 @@ public async Task NearObject( double? distance = null, uint? limit = null, uint? offset = null, + Diversity? diversitySelection = null, uint? autoLimit = null, Filter? filters = null, Rerank? rerank = null, @@ -56,6 +58,7 @@ public async Task NearObject( distance: distance, limit: limit, offset: offset, + diversitySelection: diversitySelection, autoLimit: autoLimit, filters: filters, groupBy: null, @@ -84,6 +87,7 @@ public async Task NearObject( /// Distance threshold /// Maximum number of results /// Offset for pagination + /// The diversity selection /// Auto-limit threshold /// Filters to apply /// Rerank configuration @@ -104,6 +108,7 @@ public async Task NearObject( double? distance = null, uint? limit = null, uint? offset = null, + Diversity? diversitySelection = null, uint? autoLimit = null, Filter? filters = null, Rerank? rerank = null, @@ -125,6 +130,7 @@ public async Task NearObject( distance: distance, limit: limit, offset: offset, + diversitySelection: diversitySelection, autoLimit: autoLimit, filters: filters, groupBy: groupBy, diff --git a/src/Weaviate.Client/GenerateClient.NearText.cs b/src/Weaviate.Client/GenerateClient.NearText.cs index 544f0603..c32a0d2f 100644 --- a/src/Weaviate.Client/GenerateClient.NearText.cs +++ b/src/Weaviate.Client/GenerateClient.NearText.cs @@ -18,6 +18,7 @@ public partial class GenerateClient /// Move away from concept /// Maximum number of results /// Offset for pagination + /// The diversity selection /// Auto-cut threshold /// Filters to apply /// Rerank configuration @@ -38,6 +39,7 @@ public async Task NearText( Move? moveAway = null, uint? limit = null, uint? offset = null, + Diversity? diversitySelection = null, uint? autoLimit = null, Filter? filters = null, Rerank? rerank = null, @@ -60,6 +62,7 @@ public async Task NearText( moveTo: moveTo, moveAway: moveAway, offset: offset, + diversitySelection: diversitySelection, autoLimit: autoLimit, targetVector: null, filters: filters, @@ -88,6 +91,7 @@ public async Task NearText( /// Move away from concept /// Maximum number of results /// Offset for pagination + /// The diversity selection /// Auto-cut threshold /// Filters to apply /// Rerank configuration @@ -109,6 +113,7 @@ public async Task NearText( Move? moveAway = null, uint? limit = null, uint? offset = null, + Diversity? diversitySelection = null, uint? autoLimit = null, Filter? filters = null, Rerank? rerank = null, @@ -132,6 +137,7 @@ public async Task NearText( moveAway: moveAway, limit: limit, offset: offset, + diversitySelection: diversitySelection, autoLimit: autoLimit, filters: filters, tenant: _collectionClient.Tenant, @@ -156,6 +162,7 @@ public async Task NearText( /// Filters to apply to the search. /// Maximum number of results to return. /// Number of results to skip. + /// Diversity selection to apply to the results. /// Automatic result cutoff threshold. /// Re-ranking configuration. /// Single prompt for generative AI. @@ -172,6 +179,7 @@ public async Task NearText( Filter? filters = null, uint? limit = null, uint? offset = null, + Diversity? diversitySelection = null, uint? autoLimit = null, Rerank? rerank = null, SinglePrompt? singlePrompt = null, @@ -193,6 +201,7 @@ public async Task NearText( moveTo: query.MoveTo, moveAway: query.MoveAway, offset: offset, + diversitySelection: diversitySelection, autoLimit: autoLimit, targetVector: query.TargetVectors, filters: filters, @@ -218,6 +227,7 @@ public async Task NearText( /// Filters to apply to the search. /// Maximum number of results to return. /// Number of results to skip. + /// Diversity selection to apply to the results. /// Automatic result cutoff threshold. /// Re-ranking configuration. /// Single prompt for generative AI. @@ -235,6 +245,7 @@ public async Task NearText( Filter? filters = null, uint? limit = null, uint? offset = null, + Diversity? diversitySelection = null, uint? autoLimit = null, Rerank? rerank = null, SinglePrompt? singlePrompt = null, @@ -257,6 +268,7 @@ public async Task NearText( moveAway: query.MoveAway, limit: limit, offset: offset, + diversitySelection: diversitySelection, autoLimit: autoLimit, filters: filters, tenant: _collectionClient.Tenant, @@ -281,6 +293,7 @@ public async Task NearText( /// Filters to apply to the search. /// Maximum number of results to return. /// Number of results to skip. + /// Diversity selection to apply to the results. /// Automatic result cutoff threshold. /// Re-ranking configuration. /// Single prompt for generative AI. @@ -297,6 +310,7 @@ public async Task NearText( Filter? filters = null, uint? limit = null, uint? offset = null, + Diversity? diversitySelection = null, uint? autoLimit = null, Rerank? rerank = null, SinglePrompt? singlePrompt = null, @@ -313,6 +327,7 @@ await NearText( filters, limit, offset, + diversitySelection, autoLimit, rerank, singlePrompt, @@ -333,6 +348,7 @@ await NearText( /// Filters to apply to the search. /// Maximum number of results to return. /// Number of results to skip. + /// Diversity selection to apply to the results. /// Automatic result cutoff threshold. /// Re-ranking configuration. /// Single prompt for generative AI. @@ -350,6 +366,7 @@ public async Task NearText( Filter? filters = null, uint? limit = null, uint? offset = null, + Diversity? diversitySelection = null, uint? autoLimit = null, Rerank? rerank = null, SinglePrompt? singlePrompt = null, @@ -367,6 +384,7 @@ await NearText( filters, limit, offset, + diversitySelection, autoLimit, rerank, singlePrompt, diff --git a/src/Weaviate.Client/GenerateClient.NearVector.cs b/src/Weaviate.Client/GenerateClient.NearVector.cs index d68013af..9d675cd2 100644 --- a/src/Weaviate.Client/GenerateClient.NearVector.cs +++ b/src/Weaviate.Client/GenerateClient.NearVector.cs @@ -16,6 +16,7 @@ public async Task NearVector( Filter? filters = null, float? certainty = null, float? distance = null, + Diversity? diversitySelection = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, @@ -35,6 +36,7 @@ await _client.GrpcClient.SearchNearVector( distance: distance, certainty: certainty, offset: offset, + diversitySelection: diversitySelection, autoLimit: autoLimit, limit: limit, filters: filters, @@ -59,6 +61,7 @@ public async Task NearVector( Filter? filters = null, float? certainty = null, float? distance = null, + Diversity? diversitySelection = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, @@ -80,6 +83,7 @@ await _client.GrpcClient.SearchNearVector( distance: distance, certainty: certainty, offset: offset, + diversitySelection: diversitySelection, autoLimit: autoLimit, limit: limit, tenant: _collectionClient.Tenant, @@ -102,6 +106,7 @@ public async Task NearVector( Filter? filters = null, float? certainty = null, float? distance = null, + Diversity? diversitySelection = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, @@ -120,6 +125,7 @@ await NearVector( filters, certainty, distance, + diversitySelection, autoLimit, limit, offset, @@ -143,6 +149,7 @@ public async Task NearVector( Filter? filters = null, float? certainty = null, float? distance = null, + Diversity? diversitySelection = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, @@ -162,6 +169,7 @@ await NearVector( filters, certainty, distance, + diversitySelection, autoLimit, limit, offset, @@ -181,6 +189,7 @@ await NearVector( /// /// Near-vector input containing vector, certainty, and distance. /// Filters to apply to the search. + /// Diversity selection to apply to the results. /// Automatic result cutoff threshold. /// Maximum number of results to return. /// Number of results to skip. @@ -197,6 +206,7 @@ await NearVector( public async Task NearVector( NearVectorInput query, Filter? filters = null, + Diversity? diversitySelection = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, @@ -215,6 +225,7 @@ await NearVector( filters: filters, certainty: query.Certainty, distance: query.Distance, + diversitySelection: diversitySelection, autoLimit: autoLimit, limit: limit, offset: offset, @@ -235,6 +246,7 @@ await NearVector( /// Near-vector input containing vector, certainty, and distance. /// Group-by configuration. /// Filters to apply to the search. + /// Diversity selection to apply to the results. /// Automatic result cutoff threshold. /// Maximum number of results to return. /// Number of results to skip. @@ -252,6 +264,7 @@ public async Task NearVector( NearVectorInput query, GroupByRequest groupBy, Filter? filters = null, + Diversity? diversitySelection = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, @@ -271,6 +284,7 @@ await NearVector( filters: filters, certainty: query.Certainty, distance: query.Distance, + diversitySelection: diversitySelection, autoLimit: autoLimit, limit: limit, offset: offset, @@ -290,6 +304,7 @@ await NearVector( /// /// /// Filters to apply to the search. + /// Diversity selection to apply to the results. /// Automatic result cutoff threshold. /// Maximum number of results to return. /// Number of results to skip. @@ -306,6 +321,7 @@ await NearVector( public async Task NearVector( NearVectorInput.FactoryFn vectors, Filter? filters = null, + Diversity? diversitySelection = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, @@ -322,6 +338,7 @@ public async Task NearVector( await NearVector( vectors(VectorInputBuilderFactories.CreateNearVectorBuilder()), filters, + diversitySelection, autoLimit, limit, offset, @@ -342,6 +359,7 @@ await NearVector( /// /// Group-by configuration. /// Filters to apply to the search. + /// Diversity selection to apply to the results. /// Automatic result cutoff threshold. /// Maximum number of results to return. /// Number of results to skip. @@ -359,6 +377,7 @@ public async Task NearVector( NearVectorInput.FactoryFn vectors, GroupByRequest groupBy, Filter? filters = null, + Diversity? diversitySelection = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, @@ -376,6 +395,7 @@ await NearVector( vectors(VectorInputBuilderFactories.CreateNearVectorBuilder()), groupBy, filters, + diversitySelection, autoLimit, limit, offset, diff --git a/src/Weaviate.Client/Models/Search.cs b/src/Weaviate.Client/Models/Search.cs index 46f16d7f..254bd9fd 100644 --- a/src/Weaviate.Client/Models/Search.cs +++ b/src/Weaviate.Client/Models/Search.cs @@ -99,7 +99,9 @@ public record Or(int MinimumMatch) : BM25Operator("Or"); } /// -/// The diversity selection applied to search results. Requires Weaviate 1.38.6+. +/// The diversity selection applied to search results. Requires Weaviate 1.37.0+ on the +/// near-vector, near-object, near-text and near-media searches, and Weaviate 1.38.6+ on +/// hybrid search. /// public abstract record Diversity { diff --git a/src/Weaviate.Client/PublicAPI.Unshipped.txt b/src/Weaviate.Client/PublicAPI.Unshipped.txt index fb336e28..b285349d 100644 --- a/src/Weaviate.Client/PublicAPI.Unshipped.txt +++ b/src/Weaviate.Client/PublicAPI.Unshipped.txt @@ -121,3 +121,151 @@ Weaviate.Client.Typed.TypedQueryClient.Hybrid(string! query, float? alpha = n Weaviate.Client.Typed.TypedQueryClient.Hybrid(string! query, Weaviate.Client.Models.GroupByRequest! groupBy, float? alpha = null, string![]? queryProperties = null, Weaviate.Client.Models.HybridFusion? fusionType = null, float? maxVectorDistance = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.BM25Operator? bm25Operator = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! Weaviate.Client.Typed.TypedQueryClient.Hybrid(string? query, Weaviate.Client.Models.HybridVectorInput? vectors, float? alpha = null, string![]? queryProperties = null, Weaviate.Client.Models.HybridFusion? fusionType = null, float? maxVectorDistance = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.BM25Operator? bm25Operator = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>!>! Weaviate.Client.Typed.TypedQueryClient.Hybrid(string? query, Weaviate.Client.Models.HybridVectorInput? vectors, Weaviate.Client.Models.GroupByRequest! groupBy, float? alpha = null, string![]? queryProperties = null, Weaviate.Client.Models.HybridFusion? fusionType = null, float? maxVectorDistance = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.BM25Operator? bm25Operator = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +*REMOVED*Weaviate.Client.GenerateClient.NearMedia(Weaviate.Client.NearMediaInput.FactoryFn! media, Weaviate.Client.Models.Filter? filters = null, uint? limit = null, uint? offset = null, uint? autoLimit = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +*REMOVED*Weaviate.Client.GenerateClient.NearMedia(Weaviate.Client.NearMediaInput.FactoryFn! media, Weaviate.Client.Models.GroupByRequest! groupBy, Weaviate.Client.Models.Filter? filters = null, uint? limit = null, uint? offset = null, uint? autoLimit = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +*REMOVED*Weaviate.Client.GenerateClient.NearObject(System.Guid nearObject, Weaviate.Client.Models.GroupByRequest! groupBy, double? certainty = null, double? distance = null, uint? limit = null, uint? offset = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Models.TargetVectors.FactoryFn? targetVectors = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +*REMOVED*Weaviate.Client.GenerateClient.NearObject(System.Guid nearObject, double? certainty = null, double? distance = null, uint? limit = null, uint? offset = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Models.TargetVectors.FactoryFn? targetVectors = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +*REMOVED*Weaviate.Client.GenerateClient.NearText(Weaviate.Client.Internal.AutoArray! query, Weaviate.Client.Models.GroupByRequest! groupBy, float? certainty = null, float? distance = null, Weaviate.Client.Models.Move? moveTo = null, Weaviate.Client.Models.Move? moveAway = null, uint? limit = null, uint? offset = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +*REMOVED*Weaviate.Client.GenerateClient.NearText(Weaviate.Client.Internal.AutoArray! query, float? certainty = null, float? distance = null, Weaviate.Client.Models.Move? moveTo = null, Weaviate.Client.Models.Move? moveAway = null, uint? limit = null, uint? offset = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +*REMOVED*Weaviate.Client.GenerateClient.NearText(Weaviate.Client.Models.NearTextInput! query, Weaviate.Client.Models.Filter? filters = null, uint? limit = null, uint? offset = null, uint? autoLimit = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +*REMOVED*Weaviate.Client.GenerateClient.NearText(Weaviate.Client.Models.NearTextInput! query, Weaviate.Client.Models.GroupByRequest! groupBy, Weaviate.Client.Models.Filter? filters = null, uint? limit = null, uint? offset = null, uint? autoLimit = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +*REMOVED*Weaviate.Client.GenerateClient.NearText(Weaviate.Client.Models.NearTextInput.FactoryFn! query, Weaviate.Client.Models.Filter? filters = null, uint? limit = null, uint? offset = null, uint? autoLimit = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +*REMOVED*Weaviate.Client.GenerateClient.NearText(Weaviate.Client.Models.NearTextInput.FactoryFn! query, Weaviate.Client.Models.GroupByRequest! groupBy, Weaviate.Client.Models.Filter? filters = null, uint? limit = null, uint? offset = null, uint? autoLimit = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +*REMOVED*Weaviate.Client.GenerateClient.NearVector(Weaviate.Client.Models.NearVectorInput! query, Weaviate.Client.Models.Filter? filters = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +*REMOVED*Weaviate.Client.GenerateClient.NearVector(Weaviate.Client.Models.NearVectorInput! query, Weaviate.Client.Models.GroupByRequest! groupBy, Weaviate.Client.Models.Filter? filters = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +*REMOVED*Weaviate.Client.GenerateClient.NearVector(Weaviate.Client.Models.NearVectorInput.FactoryFn! vectors, Weaviate.Client.Models.Filter? filters = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +*REMOVED*Weaviate.Client.GenerateClient.NearVector(Weaviate.Client.Models.NearVectorInput.FactoryFn! vectors, Weaviate.Client.Models.GroupByRequest! groupBy, Weaviate.Client.Models.Filter? filters = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +*REMOVED*Weaviate.Client.GenerateClient.NearVector(Weaviate.Client.Models.VectorSearchInput! vectors, Weaviate.Client.Models.Filter? filters = null, float? certainty = null, float? distance = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +*REMOVED*Weaviate.Client.GenerateClient.NearVector(Weaviate.Client.Models.VectorSearchInput! vectors, Weaviate.Client.Models.GroupByRequest! groupBy, Weaviate.Client.Models.Filter? filters = null, float? certainty = null, float? distance = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +*REMOVED*Weaviate.Client.GenerateClient.NearVector(Weaviate.Client.Models.VectorSearchInput.FactoryFn! vectors, Weaviate.Client.Models.Filter? filters = null, float? certainty = null, float? distance = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +*REMOVED*Weaviate.Client.GenerateClient.NearVector(Weaviate.Client.Models.VectorSearchInput.FactoryFn! vectors, Weaviate.Client.Models.GroupByRequest! groupBy, Weaviate.Client.Models.Filter? filters = null, float? certainty = null, float? distance = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +*REMOVED*Weaviate.Client.QueryClient.NearMedia(Weaviate.Client.NearMediaInput.FactoryFn! query, Weaviate.Client.Models.Filter? filters = null, uint? limit = null, uint? offset = null, uint? autoLimit = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +*REMOVED*Weaviate.Client.QueryClient.NearMedia(Weaviate.Client.NearMediaInput.FactoryFn! query, Weaviate.Client.Models.GroupByRequest! groupBy, Weaviate.Client.Models.Filter? filters = null, uint? limit = null, uint? offset = null, uint? autoLimit = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +*REMOVED*Weaviate.Client.QueryClient.NearMedia(byte[]! media, Weaviate.Client.Models.NearMediaType mediaType, Weaviate.Client.Models.GroupByRequest! groupBy, double? certainty = null, double? distance = null, uint? limit = null, uint? offset = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.TargetVectors.FactoryFn? targets = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +*REMOVED*Weaviate.Client.QueryClient.NearMedia(byte[]! media, Weaviate.Client.Models.NearMediaType mediaType, double? certainty = null, double? distance = null, uint? limit = null, uint? offset = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.TargetVectors.FactoryFn? targets = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +*REMOVED*Weaviate.Client.QueryClient.NearObject(System.Guid nearObject, Weaviate.Client.Models.GroupByRequest! groupBy, double? certainty = null, double? distance = null, uint? limit = null, uint? offset = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.TargetVectors.FactoryFn? targets = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +*REMOVED*Weaviate.Client.QueryClient.NearObject(System.Guid nearObject, double? certainty = null, double? distance = null, uint? limit = null, uint? offset = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.TargetVectors.FactoryFn? targets = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +*REMOVED*Weaviate.Client.QueryClient.NearText(Weaviate.Client.Internal.AutoArray! query, Weaviate.Client.Models.GroupByRequest! groupBy, float? certainty = null, float? distance = null, Weaviate.Client.Models.Move? moveTo = null, Weaviate.Client.Models.Move? moveAway = null, uint? limit = null, uint? offset = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +*REMOVED*Weaviate.Client.QueryClient.NearText(Weaviate.Client.Internal.AutoArray! query, float? certainty = null, float? distance = null, Weaviate.Client.Models.Move? moveTo = null, Weaviate.Client.Models.Move? moveAway = null, uint? limit = null, uint? offset = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +*REMOVED*Weaviate.Client.QueryClient.NearText(Weaviate.Client.Models.NearTextInput.FactoryFn! query, Weaviate.Client.Models.Filter? filters = null, uint? limit = null, uint? offset = null, uint? autoLimit = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +*REMOVED*Weaviate.Client.QueryClient.NearText(Weaviate.Client.Models.NearTextInput.FactoryFn! query, Weaviate.Client.Models.GroupByRequest! groupBy, Weaviate.Client.Models.Filter? filters = null, uint? limit = null, uint? offset = null, uint? autoLimit = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +*REMOVED*Weaviate.Client.QueryClient.NearVector(Weaviate.Client.Models.NearVectorInput! query, Weaviate.Client.Models.Filter? filters = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +*REMOVED*Weaviate.Client.QueryClient.NearVector(Weaviate.Client.Models.NearVectorInput! query, Weaviate.Client.Models.GroupByRequest! groupBy, Weaviate.Client.Models.Filter? filters = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +*REMOVED*Weaviate.Client.QueryClient.NearVector(Weaviate.Client.Models.NearVectorInput.FactoryFn! vectors, Weaviate.Client.Models.Filter? filters = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +*REMOVED*Weaviate.Client.QueryClient.NearVector(Weaviate.Client.Models.NearVectorInput.FactoryFn! vectors, Weaviate.Client.Models.GroupByRequest! groupBy, Weaviate.Client.Models.Filter? filters = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +*REMOVED*Weaviate.Client.QueryClient.NearVector(Weaviate.Client.Models.VectorSearchInput! vectors, Weaviate.Client.Models.Filter? filters = null, float? certainty = null, float? distance = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +*REMOVED*Weaviate.Client.QueryClient.NearVector(Weaviate.Client.Models.VectorSearchInput! vectors, Weaviate.Client.Models.GroupByRequest! groupBy, Weaviate.Client.Models.Filter? filters = null, float? certainty = null, float? distance = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +*REMOVED*Weaviate.Client.QueryClient.NearVector(Weaviate.Client.Models.VectorSearchInput.FactoryFn! vectors, Weaviate.Client.Models.Filter? filters = null, float? certainty = null, float? distance = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +*REMOVED*Weaviate.Client.QueryClient.NearVector(Weaviate.Client.Models.VectorSearchInput.FactoryFn! vectors, Weaviate.Client.Models.GroupByRequest! groupBy, Weaviate.Client.Models.Filter? filters = null, float? certainty = null, float? distance = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +*REMOVED*Weaviate.Client.Typed.TypedGenerateClient.NearMedia(Weaviate.Client.NearMediaInput.FactoryFn! media, Weaviate.Client.Models.Filter? filters = null, uint? limit = null, uint? offset = null, uint? autoLimit = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +*REMOVED*Weaviate.Client.Typed.TypedGenerateClient.NearMedia(Weaviate.Client.NearMediaInput.FactoryFn! media, Weaviate.Client.Models.GroupByRequest! groupBy, Weaviate.Client.Models.Filter? filters = null, uint? limit = null, uint? offset = null, uint? autoLimit = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +*REMOVED*Weaviate.Client.Typed.TypedGenerateClient.NearObject(System.Guid nearObject, Weaviate.Client.Models.GroupByRequest! groupBy, double? certainty = null, double? distance = null, uint? limit = null, uint? offset = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Models.TargetVectors.FactoryFn? targetVectors = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +*REMOVED*Weaviate.Client.Typed.TypedGenerateClient.NearObject(System.Guid nearObject, double? certainty = null, double? distance = null, uint? limit = null, uint? offset = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Models.TargetVectors.FactoryFn? targetVectors = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +*REMOVED*Weaviate.Client.Typed.TypedGenerateClient.NearText(Weaviate.Client.Internal.AutoArray! query, Weaviate.Client.Models.GroupByRequest! groupBy, float? certainty = null, float? distance = null, Weaviate.Client.Models.Move? moveTo = null, Weaviate.Client.Models.Move? moveAway = null, uint? limit = null, uint? offset = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +*REMOVED*Weaviate.Client.Typed.TypedGenerateClient.NearText(Weaviate.Client.Internal.AutoArray! query, float? certainty = null, float? distance = null, Weaviate.Client.Models.Move? moveTo = null, Weaviate.Client.Models.Move? moveAway = null, uint? limit = null, uint? offset = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +*REMOVED*Weaviate.Client.Typed.TypedGenerateClient.NearText(Weaviate.Client.Models.NearTextInput! query, Weaviate.Client.Models.Filter? filters = null, uint? limit = null, uint? offset = null, uint? autoLimit = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +*REMOVED*Weaviate.Client.Typed.TypedGenerateClient.NearText(Weaviate.Client.Models.NearTextInput! query, Weaviate.Client.Models.GroupByRequest! groupBy, Weaviate.Client.Models.Filter? filters = null, uint? limit = null, uint? offset = null, uint? autoLimit = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +*REMOVED*Weaviate.Client.Typed.TypedGenerateClient.NearText(Weaviate.Client.Models.NearTextInput.FactoryFn! query, Weaviate.Client.Models.Filter? filters = null, uint? limit = null, uint? offset = null, uint? autoLimit = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +*REMOVED*Weaviate.Client.Typed.TypedGenerateClient.NearText(Weaviate.Client.Models.NearTextInput.FactoryFn! query, Weaviate.Client.Models.GroupByRequest! groupBy, Weaviate.Client.Models.Filter? filters = null, uint? limit = null, uint? offset = null, uint? autoLimit = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +*REMOVED*Weaviate.Client.Typed.TypedGenerateClient.NearVector(Weaviate.Client.Models.NearVectorInput! vectors, Weaviate.Client.Models.Filter? filters = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +*REMOVED*Weaviate.Client.Typed.TypedGenerateClient.NearVector(Weaviate.Client.Models.NearVectorInput! vectors, Weaviate.Client.Models.GroupByRequest! groupBy, Weaviate.Client.Models.Filter? filters = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +*REMOVED*Weaviate.Client.Typed.TypedGenerateClient.NearVector(Weaviate.Client.Models.NearVectorInput.FactoryFn! vectors, Weaviate.Client.Models.Filter? filters = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +*REMOVED*Weaviate.Client.Typed.TypedGenerateClient.NearVector(Weaviate.Client.Models.NearVectorInput.FactoryFn! vectors, Weaviate.Client.Models.GroupByRequest! groupBy, Weaviate.Client.Models.Filter? filters = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +*REMOVED*Weaviate.Client.Typed.TypedGenerateClient.NearVector(Weaviate.Client.Models.VectorSearchInput! vectors, Weaviate.Client.Models.Filter? filters = null, float? certainty = null, float? distance = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +*REMOVED*Weaviate.Client.Typed.TypedGenerateClient.NearVector(Weaviate.Client.Models.VectorSearchInput! vectors, Weaviate.Client.Models.GroupByRequest! groupBy, Weaviate.Client.Models.Filter? filters = null, float? distance = null, float? certainty = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +*REMOVED*Weaviate.Client.Typed.TypedGenerateClient.NearVector(Weaviate.Client.Models.VectorSearchInput.FactoryFn! vectors, Weaviate.Client.Models.Filter? filters = null, float? certainty = null, float? distance = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +*REMOVED*Weaviate.Client.Typed.TypedGenerateClient.NearVector(Weaviate.Client.Models.VectorSearchInput.FactoryFn! vectors, Weaviate.Client.Models.GroupByRequest! groupBy, Weaviate.Client.Models.Filter? filters = null, float? certainty = null, float? distance = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +*REMOVED*Weaviate.Client.Typed.TypedQueryClient.NearMedia(Weaviate.Client.NearMediaInput.FactoryFn! media, Weaviate.Client.Models.Filter? filters = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>!>! +*REMOVED*Weaviate.Client.Typed.TypedQueryClient.NearMedia(Weaviate.Client.NearMediaInput.FactoryFn! media, Weaviate.Client.Models.GroupByRequest! groupBy, Weaviate.Client.Models.Filter? filters = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +*REMOVED*Weaviate.Client.Typed.TypedQueryClient.NearObject(System.Guid nearObject, Weaviate.Client.Models.GroupByRequest! groupBy, double? certainty = null, double? distance = null, uint? limit = null, uint? offset = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.TargetVectors.FactoryFn? targets = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +*REMOVED*Weaviate.Client.Typed.TypedQueryClient.NearObject(System.Guid nearObject, double? certainty = null, double? distance = null, uint? limit = null, uint? offset = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.TargetVectors.FactoryFn? targets = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>!>! +*REMOVED*Weaviate.Client.Typed.TypedQueryClient.NearText(Weaviate.Client.Internal.AutoArray! query, Weaviate.Client.Models.GroupByRequest! groupBy, float? certainty = null, float? distance = null, Weaviate.Client.Models.Move? moveTo = null, Weaviate.Client.Models.Move? moveAway = null, uint? limit = null, uint? offset = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +*REMOVED*Weaviate.Client.Typed.TypedQueryClient.NearText(Weaviate.Client.Internal.AutoArray! query, float? certainty = null, float? distance = null, Weaviate.Client.Models.Move? moveTo = null, Weaviate.Client.Models.Move? moveAway = null, uint? limit = null, uint? offset = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>!>! +*REMOVED*Weaviate.Client.Typed.TypedQueryClient.NearText(Weaviate.Client.Models.NearTextInput! query, Weaviate.Client.Models.Filter? filters = null, uint? limit = null, uint? offset = null, uint? autoLimit = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>!>! +*REMOVED*Weaviate.Client.Typed.TypedQueryClient.NearText(Weaviate.Client.Models.NearTextInput! query, Weaviate.Client.Models.GroupByRequest! groupBy, Weaviate.Client.Models.Filter? filters = null, uint? limit = null, uint? offset = null, uint? autoLimit = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +*REMOVED*Weaviate.Client.Typed.TypedQueryClient.NearText(Weaviate.Client.Models.NearTextInput.FactoryFn! query, Weaviate.Client.Models.Filter? filters = null, uint? limit = null, uint? offset = null, uint? autoLimit = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>!>! +*REMOVED*Weaviate.Client.Typed.TypedQueryClient.NearText(Weaviate.Client.Models.NearTextInput.FactoryFn! query, Weaviate.Client.Models.GroupByRequest! groupBy, Weaviate.Client.Models.Filter? filters = null, uint? limit = null, uint? offset = null, uint? autoLimit = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +*REMOVED*Weaviate.Client.Typed.TypedQueryClient.NearVector(Weaviate.Client.Models.NearVectorInput! query, Weaviate.Client.Models.Filter? filters = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>!>! +*REMOVED*Weaviate.Client.Typed.TypedQueryClient.NearVector(Weaviate.Client.Models.NearVectorInput! query, Weaviate.Client.Models.GroupByRequest! groupBy, Weaviate.Client.Models.Filter? filters = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +*REMOVED*Weaviate.Client.Typed.TypedQueryClient.NearVector(Weaviate.Client.Models.NearVectorInput.FactoryFn! vectors, Weaviate.Client.Models.Filter? filters = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>!>! +*REMOVED*Weaviate.Client.Typed.TypedQueryClient.NearVector(Weaviate.Client.Models.NearVectorInput.FactoryFn! vectors, Weaviate.Client.Models.GroupByRequest! groupBy, Weaviate.Client.Models.Filter? filters = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +*REMOVED*Weaviate.Client.Typed.TypedQueryClient.NearVector(Weaviate.Client.Models.VectorSearchInput! vectors, Weaviate.Client.Models.Filter? filters = null, float? certainty = null, float? distance = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>!>! +*REMOVED*Weaviate.Client.Typed.TypedQueryClient.NearVector(Weaviate.Client.Models.VectorSearchInput! vectors, Weaviate.Client.Models.GroupByRequest! groupBy, Weaviate.Client.Models.Filter? filters = null, float? distance = null, float? certainty = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +*REMOVED*Weaviate.Client.Typed.TypedQueryClient.NearVector(Weaviate.Client.Models.VectorSearchInput.FactoryFn! vectors, Weaviate.Client.Models.Filter? filters = null, float? certainty = null, float? distance = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>!>! +*REMOVED*Weaviate.Client.Typed.TypedQueryClient.NearVector(Weaviate.Client.Models.VectorSearchInput.FactoryFn! vectors, Weaviate.Client.Models.GroupByRequest! groupBy, Weaviate.Client.Models.Filter? filters = null, float? certainty = null, float? distance = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +*REMOVED*static Weaviate.Client.QueryClientNearTextExtensions.NearText(this Weaviate.Client.QueryClient! client, Weaviate.Client.Models.NearTextInput! query, Weaviate.Client.Models.Filter? filters = null, uint? limit = null, uint? offset = null, uint? autoLimit = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +*REMOVED*static Weaviate.Client.QueryClientNearTextExtensions.NearText(this Weaviate.Client.QueryClient! client, Weaviate.Client.Models.NearTextInput! query, Weaviate.Client.Models.GroupByRequest! groupBy, Weaviate.Client.Models.Filter? filters = null, uint? limit = null, uint? offset = null, uint? autoLimit = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +Weaviate.Client.GenerateClient.NearMedia(Weaviate.Client.NearMediaInput.FactoryFn! media, Weaviate.Client.Models.Filter? filters = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +Weaviate.Client.GenerateClient.NearMedia(Weaviate.Client.NearMediaInput.FactoryFn! media, Weaviate.Client.Models.GroupByRequest! groupBy, Weaviate.Client.Models.Filter? filters = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +Weaviate.Client.GenerateClient.NearObject(System.Guid nearObject, Weaviate.Client.Models.GroupByRequest! groupBy, double? certainty = null, double? distance = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Models.TargetVectors.FactoryFn? targetVectors = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +Weaviate.Client.GenerateClient.NearObject(System.Guid nearObject, double? certainty = null, double? distance = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Models.TargetVectors.FactoryFn? targetVectors = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +Weaviate.Client.GenerateClient.NearText(Weaviate.Client.Internal.AutoArray! query, Weaviate.Client.Models.GroupByRequest! groupBy, float? certainty = null, float? distance = null, Weaviate.Client.Models.Move? moveTo = null, Weaviate.Client.Models.Move? moveAway = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +Weaviate.Client.GenerateClient.NearText(Weaviate.Client.Internal.AutoArray! query, float? certainty = null, float? distance = null, Weaviate.Client.Models.Move? moveTo = null, Weaviate.Client.Models.Move? moveAway = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +Weaviate.Client.GenerateClient.NearText(Weaviate.Client.Models.NearTextInput! query, Weaviate.Client.Models.Filter? filters = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +Weaviate.Client.GenerateClient.NearText(Weaviate.Client.Models.NearTextInput! query, Weaviate.Client.Models.GroupByRequest! groupBy, Weaviate.Client.Models.Filter? filters = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +Weaviate.Client.GenerateClient.NearText(Weaviate.Client.Models.NearTextInput.FactoryFn! query, Weaviate.Client.Models.Filter? filters = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +Weaviate.Client.GenerateClient.NearText(Weaviate.Client.Models.NearTextInput.FactoryFn! query, Weaviate.Client.Models.GroupByRequest! groupBy, Weaviate.Client.Models.Filter? filters = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +Weaviate.Client.GenerateClient.NearVector(Weaviate.Client.Models.NearVectorInput! query, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +Weaviate.Client.GenerateClient.NearVector(Weaviate.Client.Models.NearVectorInput! query, Weaviate.Client.Models.GroupByRequest! groupBy, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +Weaviate.Client.GenerateClient.NearVector(Weaviate.Client.Models.NearVectorInput.FactoryFn! vectors, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +Weaviate.Client.GenerateClient.NearVector(Weaviate.Client.Models.NearVectorInput.FactoryFn! vectors, Weaviate.Client.Models.GroupByRequest! groupBy, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +Weaviate.Client.GenerateClient.NearVector(Weaviate.Client.Models.VectorSearchInput! vectors, Weaviate.Client.Models.Filter? filters = null, float? certainty = null, float? distance = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +Weaviate.Client.GenerateClient.NearVector(Weaviate.Client.Models.VectorSearchInput! vectors, Weaviate.Client.Models.GroupByRequest! groupBy, Weaviate.Client.Models.Filter? filters = null, float? certainty = null, float? distance = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +Weaviate.Client.GenerateClient.NearVector(Weaviate.Client.Models.VectorSearchInput.FactoryFn! vectors, Weaviate.Client.Models.Filter? filters = null, float? certainty = null, float? distance = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +Weaviate.Client.GenerateClient.NearVector(Weaviate.Client.Models.VectorSearchInput.FactoryFn! vectors, Weaviate.Client.Models.GroupByRequest! groupBy, Weaviate.Client.Models.Filter? filters = null, float? certainty = null, float? distance = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +Weaviate.Client.QueryClient.NearMedia(Weaviate.Client.NearMediaInput.FactoryFn! query, Weaviate.Client.Models.Filter? filters = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +Weaviate.Client.QueryClient.NearMedia(Weaviate.Client.NearMediaInput.FactoryFn! query, Weaviate.Client.Models.GroupByRequest! groupBy, Weaviate.Client.Models.Filter? filters = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +Weaviate.Client.QueryClient.NearMedia(byte[]! media, Weaviate.Client.Models.NearMediaType mediaType, Weaviate.Client.Models.GroupByRequest! groupBy, double? certainty = null, double? distance = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.TargetVectors.FactoryFn? targets = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +Weaviate.Client.QueryClient.NearMedia(byte[]! media, Weaviate.Client.Models.NearMediaType mediaType, double? certainty = null, double? distance = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.TargetVectors.FactoryFn? targets = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +Weaviate.Client.QueryClient.NearObject(System.Guid nearObject, Weaviate.Client.Models.GroupByRequest! groupBy, double? certainty = null, double? distance = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.TargetVectors.FactoryFn? targets = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +Weaviate.Client.QueryClient.NearObject(System.Guid nearObject, double? certainty = null, double? distance = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.TargetVectors.FactoryFn? targets = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +Weaviate.Client.QueryClient.NearText(Weaviate.Client.Internal.AutoArray! query, Weaviate.Client.Models.GroupByRequest! groupBy, float? certainty = null, float? distance = null, Weaviate.Client.Models.Move? moveTo = null, Weaviate.Client.Models.Move? moveAway = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +Weaviate.Client.QueryClient.NearText(Weaviate.Client.Internal.AutoArray! query, float? certainty = null, float? distance = null, Weaviate.Client.Models.Move? moveTo = null, Weaviate.Client.Models.Move? moveAway = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +Weaviate.Client.QueryClient.NearText(Weaviate.Client.Models.NearTextInput.FactoryFn! query, Weaviate.Client.Models.Filter? filters = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +Weaviate.Client.QueryClient.NearText(Weaviate.Client.Models.NearTextInput.FactoryFn! query, Weaviate.Client.Models.GroupByRequest! groupBy, Weaviate.Client.Models.Filter? filters = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +Weaviate.Client.QueryClient.NearVector(Weaviate.Client.Models.NearVectorInput! query, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +Weaviate.Client.QueryClient.NearVector(Weaviate.Client.Models.NearVectorInput! query, Weaviate.Client.Models.GroupByRequest! groupBy, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +Weaviate.Client.QueryClient.NearVector(Weaviate.Client.Models.NearVectorInput.FactoryFn! vectors, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +Weaviate.Client.QueryClient.NearVector(Weaviate.Client.Models.NearVectorInput.FactoryFn! vectors, Weaviate.Client.Models.GroupByRequest! groupBy, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +Weaviate.Client.QueryClient.NearVector(Weaviate.Client.Models.VectorSearchInput! vectors, Weaviate.Client.Models.Filter? filters = null, float? certainty = null, float? distance = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +Weaviate.Client.QueryClient.NearVector(Weaviate.Client.Models.VectorSearchInput! vectors, Weaviate.Client.Models.GroupByRequest! groupBy, Weaviate.Client.Models.Filter? filters = null, float? certainty = null, float? distance = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +Weaviate.Client.QueryClient.NearVector(Weaviate.Client.Models.VectorSearchInput.FactoryFn! vectors, Weaviate.Client.Models.Filter? filters = null, float? certainty = null, float? distance = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +Weaviate.Client.QueryClient.NearVector(Weaviate.Client.Models.VectorSearchInput.FactoryFn! vectors, Weaviate.Client.Models.GroupByRequest! groupBy, Weaviate.Client.Models.Filter? filters = null, float? certainty = null, float? distance = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +Weaviate.Client.Typed.TypedGenerateClient.NearMedia(Weaviate.Client.NearMediaInput.FactoryFn! media, Weaviate.Client.Models.Filter? filters = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +Weaviate.Client.Typed.TypedGenerateClient.NearMedia(Weaviate.Client.NearMediaInput.FactoryFn! media, Weaviate.Client.Models.GroupByRequest! groupBy, Weaviate.Client.Models.Filter? filters = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +Weaviate.Client.Typed.TypedGenerateClient.NearObject(System.Guid nearObject, Weaviate.Client.Models.GroupByRequest! groupBy, double? certainty = null, double? distance = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Models.TargetVectors.FactoryFn? targetVectors = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +Weaviate.Client.Typed.TypedGenerateClient.NearObject(System.Guid nearObject, double? certainty = null, double? distance = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Models.TargetVectors.FactoryFn? targetVectors = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +Weaviate.Client.Typed.TypedGenerateClient.NearText(Weaviate.Client.Internal.AutoArray! query, Weaviate.Client.Models.GroupByRequest! groupBy, float? certainty = null, float? distance = null, Weaviate.Client.Models.Move? moveTo = null, Weaviate.Client.Models.Move? moveAway = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +Weaviate.Client.Typed.TypedGenerateClient.NearText(Weaviate.Client.Internal.AutoArray! query, float? certainty = null, float? distance = null, Weaviate.Client.Models.Move? moveTo = null, Weaviate.Client.Models.Move? moveAway = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +Weaviate.Client.Typed.TypedGenerateClient.NearText(Weaviate.Client.Models.NearTextInput! query, Weaviate.Client.Models.Filter? filters = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +Weaviate.Client.Typed.TypedGenerateClient.NearText(Weaviate.Client.Models.NearTextInput! query, Weaviate.Client.Models.GroupByRequest! groupBy, Weaviate.Client.Models.Filter? filters = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +Weaviate.Client.Typed.TypedGenerateClient.NearText(Weaviate.Client.Models.NearTextInput.FactoryFn! query, Weaviate.Client.Models.Filter? filters = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +Weaviate.Client.Typed.TypedGenerateClient.NearText(Weaviate.Client.Models.NearTextInput.FactoryFn! query, Weaviate.Client.Models.GroupByRequest! groupBy, Weaviate.Client.Models.Filter? filters = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +Weaviate.Client.Typed.TypedGenerateClient.NearVector(Weaviate.Client.Models.NearVectorInput! vectors, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +Weaviate.Client.Typed.TypedGenerateClient.NearVector(Weaviate.Client.Models.NearVectorInput! vectors, Weaviate.Client.Models.GroupByRequest! groupBy, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +Weaviate.Client.Typed.TypedGenerateClient.NearVector(Weaviate.Client.Models.NearVectorInput.FactoryFn! vectors, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +Weaviate.Client.Typed.TypedGenerateClient.NearVector(Weaviate.Client.Models.NearVectorInput.FactoryFn! vectors, Weaviate.Client.Models.GroupByRequest! groupBy, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +Weaviate.Client.Typed.TypedGenerateClient.NearVector(Weaviate.Client.Models.VectorSearchInput! vectors, Weaviate.Client.Models.Filter? filters = null, float? certainty = null, float? distance = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +Weaviate.Client.Typed.TypedGenerateClient.NearVector(Weaviate.Client.Models.VectorSearchInput! vectors, Weaviate.Client.Models.GroupByRequest! groupBy, Weaviate.Client.Models.Filter? filters = null, float? distance = null, float? certainty = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +Weaviate.Client.Typed.TypedGenerateClient.NearVector(Weaviate.Client.Models.VectorSearchInput.FactoryFn! vectors, Weaviate.Client.Models.Filter? filters = null, float? certainty = null, float? distance = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +Weaviate.Client.Typed.TypedGenerateClient.NearVector(Weaviate.Client.Models.VectorSearchInput.FactoryFn! vectors, Weaviate.Client.Models.GroupByRequest! groupBy, Weaviate.Client.Models.Filter? filters = null, float? certainty = null, float? distance = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.SinglePrompt? singlePrompt = null, Weaviate.Client.Models.GroupedTask? groupedTask = null, Weaviate.Client.Models.GenerativeProvider? provider = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +Weaviate.Client.Typed.TypedQueryClient.NearMedia(Weaviate.Client.NearMediaInput.FactoryFn! media, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>!>! +Weaviate.Client.Typed.TypedQueryClient.NearMedia(Weaviate.Client.NearMediaInput.FactoryFn! media, Weaviate.Client.Models.GroupByRequest! groupBy, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +Weaviate.Client.Typed.TypedQueryClient.NearObject(System.Guid nearObject, Weaviate.Client.Models.GroupByRequest! groupBy, double? certainty = null, double? distance = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.TargetVectors.FactoryFn? targets = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +Weaviate.Client.Typed.TypedQueryClient.NearObject(System.Guid nearObject, double? certainty = null, double? distance = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Models.TargetVectors.FactoryFn? targets = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>!>! +Weaviate.Client.Typed.TypedQueryClient.NearText(Weaviate.Client.Internal.AutoArray! query, Weaviate.Client.Models.GroupByRequest! groupBy, float? certainty = null, float? distance = null, Weaviate.Client.Models.Move? moveTo = null, Weaviate.Client.Models.Move? moveAway = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +Weaviate.Client.Typed.TypedQueryClient.NearText(Weaviate.Client.Internal.AutoArray! query, float? certainty = null, float? distance = null, Weaviate.Client.Models.Move? moveTo = null, Weaviate.Client.Models.Move? moveAway = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>!>! +Weaviate.Client.Typed.TypedQueryClient.NearText(Weaviate.Client.Models.NearTextInput! query, Weaviate.Client.Models.Filter? filters = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>!>! +Weaviate.Client.Typed.TypedQueryClient.NearText(Weaviate.Client.Models.NearTextInput! query, Weaviate.Client.Models.GroupByRequest! groupBy, Weaviate.Client.Models.Filter? filters = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +Weaviate.Client.Typed.TypedQueryClient.NearText(Weaviate.Client.Models.NearTextInput.FactoryFn! query, Weaviate.Client.Models.Filter? filters = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>!>! +Weaviate.Client.Typed.TypedQueryClient.NearText(Weaviate.Client.Models.NearTextInput.FactoryFn! query, Weaviate.Client.Models.GroupByRequest! groupBy, Weaviate.Client.Models.Filter? filters = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +Weaviate.Client.Typed.TypedQueryClient.NearVector(Weaviate.Client.Models.NearVectorInput! query, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>!>! +Weaviate.Client.Typed.TypedQueryClient.NearVector(Weaviate.Client.Models.NearVectorInput! query, Weaviate.Client.Models.GroupByRequest! groupBy, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +Weaviate.Client.Typed.TypedQueryClient.NearVector(Weaviate.Client.Models.NearVectorInput.FactoryFn! vectors, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>!>! +Weaviate.Client.Typed.TypedQueryClient.NearVector(Weaviate.Client.Models.NearVectorInput.FactoryFn! vectors, Weaviate.Client.Models.GroupByRequest! groupBy, Weaviate.Client.Models.Filter? filters = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +Weaviate.Client.Typed.TypedQueryClient.NearVector(Weaviate.Client.Models.VectorSearchInput! vectors, Weaviate.Client.Models.Filter? filters = null, float? certainty = null, float? distance = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>!>! +Weaviate.Client.Typed.TypedQueryClient.NearVector(Weaviate.Client.Models.VectorSearchInput! vectors, Weaviate.Client.Models.GroupByRequest! groupBy, Weaviate.Client.Models.Filter? filters = null, float? distance = null, float? certainty = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +Weaviate.Client.Typed.TypedQueryClient.NearVector(Weaviate.Client.Models.VectorSearchInput.FactoryFn! vectors, Weaviate.Client.Models.Filter? filters = null, float? certainty = null, float? distance = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>!>! +Weaviate.Client.Typed.TypedQueryClient.NearVector(Weaviate.Client.Models.VectorSearchInput.FactoryFn! vectors, Weaviate.Client.Models.GroupByRequest! groupBy, Weaviate.Client.Models.Filter? filters = null, float? certainty = null, float? distance = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task!>! +static Weaviate.Client.QueryClientNearTextExtensions.NearText(this Weaviate.Client.QueryClient! client, Weaviate.Client.Models.NearTextInput! query, Weaviate.Client.Models.Filter? filters = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! +static Weaviate.Client.QueryClientNearTextExtensions.NearText(this Weaviate.Client.QueryClient! client, Weaviate.Client.Models.NearTextInput! query, Weaviate.Client.Models.GroupByRequest! groupBy, Weaviate.Client.Models.Filter? filters = null, uint? limit = null, uint? offset = null, Weaviate.Client.Models.Diversity? diversitySelection = null, uint? autoLimit = null, Weaviate.Client.Models.Rerank? rerank = null, Weaviate.Client.Internal.AutoArray? returnProperties = null, System.Collections.Generic.IList? returnReferences = null, Weaviate.Client.Models.MetadataQuery? returnMetadata = null, Weaviate.Client.Models.VectorQuery? includeVectors = null, System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) -> System.Threading.Tasks.Task! diff --git a/src/Weaviate.Client/QueryClient.NearMedia.cs b/src/Weaviate.Client/QueryClient.NearMedia.cs index dd8d67d3..20f1be9c 100644 --- a/src/Weaviate.Client/QueryClient.NearMedia.cs +++ b/src/Weaviate.Client/QueryClient.NearMedia.cs @@ -29,6 +29,7 @@ public partial class QueryClient /// Filters to apply to the search. /// Maximum number of results to return. /// Number of results to skip. + /// Diversity selection to apply to the results. /// Automatic result cutoff threshold. /// Re-ranking configuration. /// Properties to return in the response. @@ -42,6 +43,7 @@ public async Task NearMedia( Filter? filters = null, uint? limit = null, uint? offset = null, + Diversity? diversitySelection = null, uint? autoLimit = null, Rerank? rerank = null, AutoArray? returnProperties = null, @@ -60,6 +62,7 @@ public async Task NearMedia( distance: input.Distance, limit: limit, offset: offset, + diversitySelection: diversitySelection, autoLimit: autoLimit, filters: filters, groupBy: null, @@ -92,6 +95,7 @@ public async Task NearMedia( /// Filters to apply to the search. /// Maximum number of results to return. /// Number of results to skip. + /// Diversity selection to apply to the results. /// Automatic result cutoff threshold. /// Re-ranking configuration. /// Properties to return in the response. @@ -106,6 +110,7 @@ public async Task NearMedia( Filter? filters = null, uint? limit = null, uint? offset = null, + Diversity? diversitySelection = null, uint? autoLimit = null, Rerank? rerank = null, AutoArray? returnProperties = null, @@ -124,6 +129,7 @@ public async Task NearMedia( distance: input.Distance, limit: limit, offset: offset, + diversitySelection: diversitySelection, autoLimit: autoLimit, filters: filters, groupBy: groupBy, @@ -151,6 +157,7 @@ public async Task NearMedia( /// Maximum distance threshold. /// Maximum number of results to return. /// Number of results to skip. + /// Diversity selection to apply to the results. /// Automatic result cutoff threshold. /// Filters to apply to the search. /// Re-ranking configuration. @@ -168,6 +175,7 @@ public async Task NearMedia( double? distance = null, uint? limit = null, uint? offset = null, + Diversity? diversitySelection = null, uint? autoLimit = null, Filter? filters = null, Rerank? rerank = null, @@ -186,6 +194,7 @@ await _grpc.SearchNearMedia( distance: distance, limit: limit, offset: offset, + diversitySelection: diversitySelection, autoLimit: autoLimit, filters: filters, groupBy: null, @@ -213,6 +222,7 @@ await _grpc.SearchNearMedia( /// Maximum distance threshold. /// Maximum number of results to return. /// Number of results to skip. + /// Diversity selection to apply to the results. /// Automatic result cutoff threshold. /// Filters to apply to the search. /// Re-ranking configuration. @@ -231,6 +241,7 @@ public async Task NearMedia( double? distance = null, uint? limit = null, uint? offset = null, + Diversity? diversitySelection = null, uint? autoLimit = null, Filter? filters = null, Rerank? rerank = null, @@ -249,6 +260,7 @@ await _grpc.SearchNearMedia( distance: distance, limit: limit, offset: offset, + diversitySelection: diversitySelection, autoLimit: autoLimit, filters: filters, groupBy: groupBy, diff --git a/src/Weaviate.Client/QueryClient.NearObject.cs b/src/Weaviate.Client/QueryClient.NearObject.cs index 1f960831..72d07930 100644 --- a/src/Weaviate.Client/QueryClient.NearObject.cs +++ b/src/Weaviate.Client/QueryClient.NearObject.cs @@ -16,6 +16,7 @@ public partial class QueryClient /// The distance /// The limit /// The offset + /// The diversity selection /// The auto limit /// The filters /// The rerank @@ -32,6 +33,7 @@ public async Task NearObject( double? distance = null, uint? limit = null, uint? offset = null, + Diversity? diversitySelection = null, uint? autoLimit = null, Filter? filters = null, Rerank? rerank = null, @@ -49,6 +51,7 @@ await _grpc.SearchNearObject( distance: distance, limit: limit, offset: offset, + diversitySelection: diversitySelection, autoLimit: autoLimit, filters: filters, groupBy: null, @@ -74,6 +77,7 @@ await _grpc.SearchNearObject( /// The distance /// The limit /// The offset + /// The diversity selection /// The auto limit /// The filters /// The rerank @@ -91,6 +95,7 @@ public async Task NearObject( double? distance = null, uint? limit = null, uint? offset = null, + Diversity? diversitySelection = null, uint? autoLimit = null, Filter? filters = null, Rerank? rerank = null, @@ -108,6 +113,7 @@ await _grpc.SearchNearObject( distance: distance, limit: limit, offset: offset, + diversitySelection: diversitySelection, autoLimit: autoLimit, filters: filters, groupBy: groupBy, diff --git a/src/Weaviate.Client/QueryClient.NearText.cs b/src/Weaviate.Client/QueryClient.NearText.cs index 8371bcec..10599f99 100644 --- a/src/Weaviate.Client/QueryClient.NearText.cs +++ b/src/Weaviate.Client/QueryClient.NearText.cs @@ -16,6 +16,7 @@ public partial class QueryClient /// Move-away configuration. /// Maximum number of results to return. /// Number of results to skip. + /// Diversity selection to apply to the results. /// Automatic result cutoff threshold. /// Filters to apply to the search. /// Re-ranking configuration. @@ -33,6 +34,7 @@ public async Task NearText( Move? moveAway = null, uint? limit = null, uint? offset = null, + Diversity? diversitySelection = null, uint? autoLimit = null, Filter? filters = null, Rerank? rerank = null, @@ -51,6 +53,7 @@ await _grpc.SearchNearText( moveTo: moveTo, moveAway: moveAway, offset: offset, + diversitySelection: diversitySelection, autoLimit: autoLimit, targetVector: null, filters: filters, @@ -73,6 +76,7 @@ await _grpc.SearchNearText( /// Move-away configuration. /// Maximum number of results to return. /// Number of results to skip. + /// Diversity selection to apply to the results. /// Automatic result cutoff threshold. /// Filters to apply to the search. /// Re-ranking configuration. @@ -91,6 +95,7 @@ public async Task NearText( Move? moveAway = null, uint? limit = null, uint? offset = null, + Diversity? diversitySelection = null, uint? autoLimit = null, Filter? filters = null, Rerank? rerank = null, @@ -110,6 +115,7 @@ await _grpc.SearchNearText( moveAway: moveAway, limit: limit, offset: offset, + diversitySelection: diversitySelection, autoLimit: autoLimit, filters: filters, tenant: _collectionClient.Tenant, @@ -139,6 +145,7 @@ await _grpc.SearchNearText( /// Filters to apply to the search. /// Maximum number of results to return. /// Number of results to skip. + /// Diversity selection to apply to the results. /// Automatic result cutoff threshold. /// Re-ranking configuration. /// Properties to return in the response. @@ -152,6 +159,7 @@ public async Task NearText( Filter? filters = null, uint? limit = null, uint? offset = null, + Diversity? diversitySelection = null, uint? autoLimit = null, Rerank? rerank = null, AutoArray? returnProperties = null, @@ -171,6 +179,7 @@ public async Task NearText( moveTo: input.MoveTo, moveAway: input.MoveAway, offset: offset, + diversitySelection: diversitySelection, autoLimit: autoLimit, targetVector: input.TargetVectors, filters: filters, @@ -194,6 +203,7 @@ public async Task NearText( /// Filters to apply to the search. /// Maximum number of results to return. /// Number of results to skip. + /// Diversity selection to apply to the results. /// Automatic result cutoff threshold. /// Re-ranking configuration. /// Properties to return in the response. @@ -208,6 +218,7 @@ public async Task NearText( Filter? filters = null, uint? limit = null, uint? offset = null, + Diversity? diversitySelection = null, uint? autoLimit = null, Rerank? rerank = null, AutoArray? returnProperties = null, @@ -228,6 +239,7 @@ public async Task NearText( moveAway: input.MoveAway, limit: limit, offset: offset, + diversitySelection: diversitySelection, autoLimit: autoLimit, filters: filters, tenant: _collectionClient.Tenant, @@ -257,6 +269,7 @@ public static async Task NearText( Filter? filters = null, uint? limit = null, uint? offset = null, + Diversity? diversitySelection = null, uint? autoLimit = null, Rerank? rerank = null, AutoArray? returnProperties = null, @@ -274,6 +287,7 @@ public static async Task NearText( filters: filters, limit: limit, offset: offset, + diversitySelection: diversitySelection, autoLimit: autoLimit, rerank: rerank, returnProperties: returnProperties, @@ -293,6 +307,7 @@ public static async Task NearText( moveAway: query.MoveAway, limit: limit, offset: offset, + diversitySelection: diversitySelection, autoLimit: autoLimit, filters: filters, rerank: rerank, @@ -314,6 +329,7 @@ public static async Task NearText( Filter? filters = null, uint? limit = null, uint? offset = null, + Diversity? diversitySelection = null, uint? autoLimit = null, Rerank? rerank = null, AutoArray? returnProperties = null, @@ -332,6 +348,7 @@ public static async Task NearText( filters: filters, limit: limit, offset: offset, + diversitySelection: diversitySelection, autoLimit: autoLimit, rerank: rerank, returnProperties: returnProperties, @@ -352,6 +369,7 @@ public static async Task NearText( moveAway: query.MoveAway, limit: limit, offset: offset, + diversitySelection: diversitySelection, autoLimit: autoLimit, filters: filters, rerank: rerank, diff --git a/src/Weaviate.Client/QueryClient.NearVector.cs b/src/Weaviate.Client/QueryClient.NearVector.cs index 1a96371a..f83dfa8d 100644 --- a/src/Weaviate.Client/QueryClient.NearVector.cs +++ b/src/Weaviate.Client/QueryClient.NearVector.cs @@ -16,6 +16,7 @@ public partial class QueryClient /// The filters /// The certainty /// The distance + /// The diversity selection /// The auto limit /// The limit /// The offset @@ -31,6 +32,7 @@ public async Task NearVector( Filter? filters = null, float? certainty = null, float? distance = null, + Diversity? diversitySelection = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, @@ -47,6 +49,7 @@ await _grpc.SearchNearVector( distance: distance, certainty: certainty, offset: offset, + diversitySelection: diversitySelection, autoLimit: autoLimit, limit: limit, filters: filters, @@ -69,6 +72,7 @@ await _grpc.SearchNearVector( /// The filters /// The certainty /// The distance + /// The diversity selection /// The auto limit /// The limit /// The offset @@ -85,6 +89,7 @@ public async Task NearVector( Filter? filters = null, float? certainty = null, float? distance = null, + Diversity? diversitySelection = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, @@ -103,6 +108,7 @@ await _grpc.SearchNearVector( distance: distance, certainty: certainty, offset: offset, + diversitySelection: diversitySelection, autoLimit: autoLimit, limit: limit, tenant: _collectionClient.Tenant, @@ -123,6 +129,7 @@ await _grpc.SearchNearVector( /// The filters /// The certainty /// The distance + /// The diversity selection /// The auto limit /// The limit /// The offset @@ -138,6 +145,7 @@ public async Task NearVector( Filter? filters = null, float? certainty = null, float? distance = null, + Diversity? diversitySelection = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, @@ -153,6 +161,7 @@ await NearVector( filters, certainty, distance, + diversitySelection, autoLimit, limit, offset, @@ -173,6 +182,7 @@ await NearVector( /// The filters /// The certainty /// The distance + /// The diversity selection /// The auto limit /// The limit /// The offset @@ -189,6 +199,7 @@ public async Task NearVector( Filter? filters = null, float? certainty = null, float? distance = null, + Diversity? diversitySelection = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, @@ -205,6 +216,7 @@ await NearVector( filters, certainty, distance, + diversitySelection, autoLimit, limit, offset, @@ -222,6 +234,7 @@ await NearVector( /// /// Near-vector input containing vector, certainty, and distance. /// Filters to apply to the search. + /// Diversity selection to apply to the results. /// Automatic result cutoff threshold. /// Maximum number of results to return. /// Number of results to skip. @@ -235,6 +248,7 @@ await NearVector( public async Task NearVector( NearVectorInput query, Filter? filters = null, + Diversity? diversitySelection = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, @@ -250,6 +264,7 @@ await NearVector( filters: filters, certainty: query.Certainty, distance: query.Distance, + diversitySelection: diversitySelection, autoLimit: autoLimit, limit: limit, offset: offset, @@ -268,6 +283,7 @@ await NearVector( /// Near-vector input containing vector, certainty, and distance. /// Group-by configuration. /// Filters to apply to the search. + /// Diversity selection to apply to the results. /// Automatic result cutoff threshold. /// Maximum number of results to return. /// Number of results to skip. @@ -282,6 +298,7 @@ public async Task NearVector( NearVectorInput query, GroupByRequest groupBy, Filter? filters = null, + Diversity? diversitySelection = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, @@ -298,6 +315,7 @@ await NearVector( filters: filters, certainty: query.Certainty, distance: query.Distance, + diversitySelection: diversitySelection, autoLimit: autoLimit, limit: limit, offset: offset, @@ -321,6 +339,7 @@ await NearVector( /// /// /// Filters to apply to the search. + /// Diversity selection to apply to the results. /// Automatic result cutoff threshold. /// Maximum number of results to return. /// Number of results to skip. @@ -334,6 +353,7 @@ await NearVector( public async Task NearVector( NearVectorInput.FactoryFn vectors, Filter? filters = null, + Diversity? diversitySelection = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, @@ -347,6 +367,7 @@ public async Task NearVector( await NearVector( vectors(VectorInputBuilderFactories.CreateNearVectorBuilder()), filters, + diversitySelection, autoLimit, limit, offset, @@ -365,6 +386,7 @@ await NearVector( /// /// Group-by configuration. /// Filters to apply to the search. + /// Diversity selection to apply to the results. /// Automatic result cutoff threshold. /// Maximum number of results to return. /// Number of results to skip. @@ -379,6 +401,7 @@ public async Task NearVector( NearVectorInput.FactoryFn vectors, GroupByRequest groupBy, Filter? filters = null, + Diversity? diversitySelection = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, @@ -393,6 +416,7 @@ await NearVector( vectors(VectorInputBuilderFactories.CreateNearVectorBuilder()), groupBy, filters, + diversitySelection, autoLimit, limit, offset, diff --git a/src/Weaviate.Client/Typed/TypedGenerateClient.NearMedia.cs b/src/Weaviate.Client/Typed/TypedGenerateClient.NearMedia.cs index 7b8fdbbd..311e57c4 100644 --- a/src/Weaviate.Client/Typed/TypedGenerateClient.NearMedia.cs +++ b/src/Weaviate.Client/Typed/TypedGenerateClient.NearMedia.cs @@ -29,6 +29,7 @@ public partial class TypedGenerateClient /// Filters to apply to the search. /// Maximum number of results to return. /// Number of results to skip. + /// Diversity selection to apply to the results. /// Automatic result cutoff threshold. /// Re-ranking configuration. /// Single prompt for generative AI. @@ -45,6 +46,7 @@ public async Task> NearMedia( Filter? filters = null, uint? limit = null, uint? offset = null, + Diversity? diversitySelection = null, uint? autoLimit = null, Rerank? rerank = null, SinglePrompt? singlePrompt = null, @@ -62,6 +64,7 @@ public async Task> NearMedia( filters: filters, limit: limit, offset: offset, + diversitySelection: diversitySelection, autoLimit: autoLimit, rerank: rerank, singlePrompt: singlePrompt, @@ -92,6 +95,7 @@ public async Task> NearMedia( /// Filters to apply to the search. /// Maximum number of results to return. /// Number of results to skip. + /// Diversity selection to apply to the results. /// Automatic result cutoff threshold. /// Re-ranking configuration. /// Single prompt for generative AI. @@ -109,6 +113,7 @@ public async Task> NearMedia( Filter? filters = null, uint? limit = null, uint? offset = null, + Diversity? diversitySelection = null, uint? autoLimit = null, Rerank? rerank = null, SinglePrompt? singlePrompt = null, @@ -127,6 +132,7 @@ public async Task> NearMedia( filters: filters, limit: limit, offset: offset, + diversitySelection: diversitySelection, autoLimit: autoLimit, rerank: rerank, singlePrompt: singlePrompt, diff --git a/src/Weaviate.Client/Typed/TypedGenerateClient.NearObject.cs b/src/Weaviate.Client/Typed/TypedGenerateClient.NearObject.cs index fa91ee61..302bf888 100644 --- a/src/Weaviate.Client/Typed/TypedGenerateClient.NearObject.cs +++ b/src/Weaviate.Client/Typed/TypedGenerateClient.NearObject.cs @@ -17,6 +17,7 @@ public partial class TypedGenerateClient /// Distance threshold /// Maximum number of results /// Offset for pagination + /// The diversity selection /// Auto-limit threshold /// Filters to apply /// Rerank configuration @@ -36,6 +37,7 @@ public async Task> NearObject( double? distance = null, uint? limit = null, uint? offset = null, + Diversity? diversitySelection = null, uint? autoLimit = null, Filter? filters = null, Rerank? rerank = null, @@ -56,6 +58,7 @@ public async Task> NearObject( distance: distance, limit: limit, offset: offset, + diversitySelection: diversitySelection, autoLimit: autoLimit, filters: filters, rerank: rerank, @@ -81,6 +84,7 @@ public async Task> NearObject( /// Distance threshold /// Maximum number of results /// Offset for pagination + /// The diversity selection /// Auto-limit threshold /// Filters to apply /// Rerank configuration @@ -101,6 +105,7 @@ public async Task> NearObject( double? distance = null, uint? limit = null, uint? offset = null, + Diversity? diversitySelection = null, uint? autoLimit = null, Filter? filters = null, Rerank? rerank = null, @@ -122,6 +127,7 @@ public async Task> NearObject( distance: distance, limit: limit, offset: offset, + diversitySelection: diversitySelection, autoLimit: autoLimit, filters: filters, rerank: rerank, diff --git a/src/Weaviate.Client/Typed/TypedGenerateClient.NearText.cs b/src/Weaviate.Client/Typed/TypedGenerateClient.NearText.cs index 6681962b..f614f95a 100644 --- a/src/Weaviate.Client/Typed/TypedGenerateClient.NearText.cs +++ b/src/Weaviate.Client/Typed/TypedGenerateClient.NearText.cs @@ -19,6 +19,7 @@ public partial class TypedGenerateClient /// Move away from concept /// Maximum number of results /// Offset for pagination + /// The diversity selection /// Auto-cut threshold /// Filters to apply /// Rerank configuration @@ -39,6 +40,7 @@ public async Task> NearText( Move? moveAway = null, uint? limit = null, uint? offset = null, + Diversity? diversitySelection = null, uint? autoLimit = null, Filter? filters = null, Rerank? rerank = null, @@ -60,6 +62,7 @@ public async Task> NearText( moveAway: moveAway, limit: limit, offset: offset, + diversitySelection: diversitySelection, autoLimit: autoLimit, filters: filters, rerank: rerank, @@ -86,6 +89,7 @@ public async Task> NearText( /// Move away from concept /// Maximum number of results /// Offset for pagination + /// The diversity selection /// Auto-cut threshold /// Filters to apply /// Rerank configuration @@ -107,6 +111,7 @@ public async Task> NearText( Move? moveAway = null, uint? limit = null, uint? offset = null, + Diversity? diversitySelection = null, uint? autoLimit = null, Filter? filters = null, Rerank? rerank = null, @@ -129,6 +134,7 @@ public async Task> NearText( moveAway: moveAway, limit: limit, offset: offset, + diversitySelection: diversitySelection, autoLimit: autoLimit, filters: filters, rerank: rerank, @@ -151,6 +157,7 @@ public async Task> NearText( /// Filters to apply to the search. /// Maximum number of results to return. /// Number of results to skip. + /// Diversity selection to apply to the results. /// Automatic result cutoff threshold. /// Re-ranking configuration. /// Single prompt for generative AI. @@ -167,6 +174,7 @@ public async Task> NearText( Filter? filters = null, uint? limit = null, uint? offset = null, + Diversity? diversitySelection = null, uint? autoLimit = null, Rerank? rerank = null, SinglePrompt? singlePrompt = null, @@ -184,6 +192,7 @@ public async Task> NearText( filters, limit, offset, + diversitySelection, autoLimit, rerank, singlePrompt, @@ -206,6 +215,7 @@ public async Task> NearText( /// Filters to apply to the search. /// Maximum number of results to return. /// Number of results to skip. + /// Diversity selection to apply to the results. /// Automatic result cutoff threshold. /// Re-ranking configuration. /// Single prompt for generative AI. @@ -223,6 +233,7 @@ public async Task> NearText( Filter? filters = null, uint? limit = null, uint? offset = null, + Diversity? diversitySelection = null, uint? autoLimit = null, Rerank? rerank = null, SinglePrompt? singlePrompt = null, @@ -241,6 +252,7 @@ public async Task> NearText( filters, limit, offset, + diversitySelection, autoLimit, rerank, singlePrompt, @@ -262,6 +274,7 @@ public async Task> NearText( /// Filters to apply to the search. /// Maximum number of results to return. /// Number of results to skip. + /// Diversity selection to apply to the results. /// Automatic result cutoff threshold. /// Re-ranking configuration. /// Single prompt for generative AI. @@ -278,6 +291,7 @@ public Task> NearText( Filter? filters = null, uint? limit = null, uint? offset = null, + Diversity? diversitySelection = null, uint? autoLimit = null, Rerank? rerank = null, SinglePrompt? singlePrompt = null, @@ -294,6 +308,7 @@ public Task> NearText( filters, limit, offset, + diversitySelection, autoLimit, rerank, singlePrompt, @@ -314,6 +329,7 @@ public Task> NearText( /// Filters to apply to the search. /// Maximum number of results to return. /// Number of results to skip. + /// Diversity selection to apply to the results. /// Automatic result cutoff threshold. /// Re-ranking configuration. /// Single prompt for generative AI. @@ -331,6 +347,7 @@ public Task> NearText( Filter? filters = null, uint? limit = null, uint? offset = null, + Diversity? diversitySelection = null, uint? autoLimit = null, Rerank? rerank = null, SinglePrompt? singlePrompt = null, @@ -348,6 +365,7 @@ public Task> NearText( filters, limit, offset, + diversitySelection, autoLimit, rerank, singlePrompt, diff --git a/src/Weaviate.Client/Typed/TypedGenerateClient.NearVector.cs b/src/Weaviate.Client/Typed/TypedGenerateClient.NearVector.cs index 9ebbe36a..0ac25157 100644 --- a/src/Weaviate.Client/Typed/TypedGenerateClient.NearVector.cs +++ b/src/Weaviate.Client/Typed/TypedGenerateClient.NearVector.cs @@ -16,6 +16,7 @@ public partial class TypedGenerateClient /// Filters to apply /// Certainty threshold /// Distance threshold + /// The diversity selection /// Auto-cut threshold /// Maximum number of results /// Offset for pagination @@ -34,6 +35,7 @@ public async Task> NearVector( Filter? filters = null, float? certainty = null, float? distance = null, + Diversity? diversitySelection = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, @@ -53,6 +55,7 @@ public async Task> NearVector( filters: filters, certainty: certainty, distance: distance, + diversitySelection: diversitySelection, autoLimit: autoLimit, limit: limit, offset: offset, @@ -77,6 +80,7 @@ public async Task> NearVector( /// Filters to apply /// Distance threshold /// Certainty threshold + /// The diversity selection /// Auto-cut threshold /// Maximum number of results /// Offset for pagination @@ -96,6 +100,7 @@ public async Task> NearVector( Filter? filters = null, float? distance = null, float? certainty = null, + Diversity? diversitySelection = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, @@ -116,6 +121,7 @@ public async Task> NearVector( filters: filters, distance: distance, certainty: certainty, + diversitySelection: diversitySelection, autoLimit: autoLimit, limit: limit, offset: offset, @@ -139,6 +145,7 @@ public async Task> NearVector( /// Filters to apply /// Certainty threshold /// Distance threshold + /// The diversity selection /// Auto-cut threshold /// Maximum number of results /// Offset for pagination @@ -157,6 +164,7 @@ public Task> NearVector( Filter? filters = null, float? certainty = null, float? distance = null, + Diversity? diversitySelection = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, @@ -175,6 +183,7 @@ public Task> NearVector( filters, certainty, distance, + diversitySelection, autoLimit, limit, offset, @@ -197,6 +206,7 @@ public Task> NearVector( /// Filters to apply /// Certainty threshold /// Distance threshold + /// The diversity selection /// Auto-cut threshold /// Maximum number of results /// Offset for pagination @@ -216,6 +226,7 @@ public Task> NearVector( Filter? filters = null, float? certainty = null, float? distance = null, + Diversity? diversitySelection = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, @@ -235,6 +246,7 @@ public Task> NearVector( filters, certainty, distance, + diversitySelection, autoLimit, limit, offset, @@ -254,6 +266,7 @@ public Task> NearVector( /// /// Near-vector input containing vector, certainty, and distance. /// Filters to apply to the search. + /// Diversity selection to apply to the results. /// Automatic result cutoff threshold. /// Maximum number of results to return. /// Number of results to skip. @@ -270,6 +283,7 @@ public Task> NearVector( public Task> NearVector( NearVectorInput vectors, Filter? filters = null, + Diversity? diversitySelection = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, @@ -288,6 +302,7 @@ public Task> NearVector( certainty: vectors.Certainty, distance: vectors.Distance, filters: filters, + diversitySelection: diversitySelection, autoLimit: autoLimit, limit: limit, offset: offset, @@ -308,6 +323,7 @@ public Task> NearVector( /// Near-vector input containing vector, certainty, and distance. /// Group-by configuration. /// Filters to apply to the search. + /// Diversity selection to apply to the results. /// Automatic result cutoff threshold. /// Maximum number of results to return. /// Number of results to skip. @@ -325,6 +341,7 @@ public Task> NearVector( NearVectorInput vectors, GroupByRequest groupBy, Filter? filters = null, + Diversity? diversitySelection = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, @@ -344,6 +361,7 @@ public Task> NearVector( distance: vectors.Distance, groupBy: groupBy, filters: filters, + diversitySelection: diversitySelection, autoLimit: autoLimit, limit: limit, offset: offset, @@ -363,6 +381,7 @@ public Task> NearVector( /// /// Lambda builder for creating NearVectorInput with target vectors. /// Filters to apply to the search. + /// Diversity selection to apply to the results. /// Automatic result cutoff threshold. /// Maximum number of results to return. /// Number of results to skip. @@ -379,6 +398,7 @@ public Task> NearVector( public Task> NearVector( NearVectorInput.FactoryFn vectors, Filter? filters = null, + Diversity? diversitySelection = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, @@ -395,6 +415,7 @@ public Task> NearVector( NearVector( vectors(VectorInputBuilderFactories.CreateNearVectorBuilder()), filters, + diversitySelection, autoLimit, limit, offset, @@ -415,6 +436,7 @@ public Task> NearVector( /// Lambda builder for creating NearVectorInput with target vectors. /// Group-by configuration. /// Filters to apply to the search. + /// Diversity selection to apply to the results. /// Automatic result cutoff threshold. /// Maximum number of results to return. /// Number of results to skip. @@ -432,6 +454,7 @@ public Task> NearVector( NearVectorInput.FactoryFn vectors, GroupByRequest groupBy, Filter? filters = null, + Diversity? diversitySelection = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, @@ -449,6 +472,7 @@ public Task> NearVector( vectors(VectorInputBuilderFactories.CreateNearVectorBuilder()), groupBy, filters, + diversitySelection, autoLimit, limit, offset, diff --git a/src/Weaviate.Client/Typed/TypedQueryClient.NearMedia.cs b/src/Weaviate.Client/Typed/TypedQueryClient.NearMedia.cs index 82fb45ab..aafa01ed 100644 --- a/src/Weaviate.Client/Typed/TypedQueryClient.NearMedia.cs +++ b/src/Weaviate.Client/Typed/TypedQueryClient.NearMedia.cs @@ -21,6 +21,7 @@ public partial class TypedQueryClient /// /// Lambda builder for creating NearMediaInput with media data and target vectors. /// Filters to apply to the search. + /// Diversity selection to apply to the results. /// Automatic result cutoff threshold. /// Maximum number of results to return. /// Number of results to skip. @@ -34,6 +35,7 @@ public partial class TypedQueryClient public async Task>> NearMedia( NearMediaInput.FactoryFn media, Filter? filters = null, + Diversity? diversitySelection = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, @@ -50,6 +52,7 @@ public async Task>> NearMedia( filters: filters, limit: limit, offset: offset, + diversitySelection: diversitySelection, autoLimit: autoLimit, rerank: rerank, returnProperties: returnProperties, @@ -74,6 +77,7 @@ public async Task>> NearMedia( /// Lambda builder for creating NearMediaInput with media data and target vectors. /// Group-by configuration. /// Filters to apply to the search. + /// Diversity selection to apply to the results. /// Automatic result cutoff threshold. /// Maximum number of results to return. /// Number of results to skip. @@ -88,6 +92,7 @@ public async Task> NearMedia( NearMediaInput.FactoryFn media, GroupByRequest groupBy, Filter? filters = null, + Diversity? diversitySelection = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, @@ -105,6 +110,7 @@ public async Task> NearMedia( filters: filters, limit: limit, offset: offset, + diversitySelection: diversitySelection, autoLimit: autoLimit, rerank: rerank, returnProperties: returnProperties, diff --git a/src/Weaviate.Client/Typed/TypedQueryClient.NearObject.cs b/src/Weaviate.Client/Typed/TypedQueryClient.NearObject.cs index 40c89091..12828592 100644 --- a/src/Weaviate.Client/Typed/TypedQueryClient.NearObject.cs +++ b/src/Weaviate.Client/Typed/TypedQueryClient.NearObject.cs @@ -17,6 +17,7 @@ public partial class TypedQueryClient /// Maximum distance threshold. /// Maximum number of results to return. /// Number of results to skip. + /// Diversity selection to apply to the results. /// Automatic result limit threshold. /// Filters to apply to the search. /// Re-ranking configuration. @@ -33,6 +34,7 @@ public async Task>> NearObject( double? distance = null, uint? limit = null, uint? offset = null, + Diversity? diversitySelection = null, uint? autoLimit = null, Filter? filters = null, Rerank? rerank = null, @@ -50,6 +52,7 @@ public async Task>> NearObject( distance: distance, limit: limit, offset: offset, + diversitySelection: diversitySelection, autoLimit: autoLimit, filters: filters, rerank: rerank, @@ -72,6 +75,7 @@ public async Task>> NearObject( /// Maximum distance threshold. /// Maximum number of results to return. /// Number of results to skip. + /// Diversity selection to apply to the results. /// Automatic result limit threshold. /// Filters to apply to the search. /// Re-ranking configuration. @@ -89,6 +93,7 @@ public async Task> NearObject( double? distance = null, uint? limit = null, uint? offset = null, + Diversity? diversitySelection = null, uint? autoLimit = null, Filter? filters = null, Rerank? rerank = null, @@ -107,6 +112,7 @@ public async Task> NearObject( distance: distance, limit: limit, offset: offset, + diversitySelection: diversitySelection, autoLimit: autoLimit, filters: filters, rerank: rerank, diff --git a/src/Weaviate.Client/Typed/TypedQueryClient.NearText.cs b/src/Weaviate.Client/Typed/TypedQueryClient.NearText.cs index 6f303f7d..b0ded580 100644 --- a/src/Weaviate.Client/Typed/TypedQueryClient.NearText.cs +++ b/src/Weaviate.Client/Typed/TypedQueryClient.NearText.cs @@ -19,6 +19,7 @@ public partial class TypedQueryClient /// Move the query vector away from these concepts. /// Maximum number of results to return. /// Number of results to skip. + /// Diversity selection to apply to the results. /// Automatic result cutoff threshold. /// Filters to apply to the search. /// Re-ranking configuration. @@ -36,6 +37,7 @@ public partial class TypedQueryClient Move? moveAway = null, uint? limit = null, uint? offset = null, + Diversity? diversitySelection = null, uint? autoLimit = null, Filter? filters = null, Rerank? rerank = null, @@ -54,6 +56,7 @@ public partial class TypedQueryClient moveAway: moveAway, limit: limit, offset: offset, + diversitySelection: diversitySelection, autoLimit: autoLimit, filters: filters, rerank: rerank, @@ -77,6 +80,7 @@ public partial class TypedQueryClient /// Move the query vector away from these concepts. /// Maximum number of results to return. /// Number of results to skip. + /// Diversity selection to apply to the results. /// Automatic result cutoff threshold. /// Filters to apply to the search. /// Re-ranking configuration. @@ -95,6 +99,7 @@ public async Task> NearText( Move? moveAway = null, uint? limit = null, uint? offset = null, + Diversity? diversitySelection = null, uint? autoLimit = null, Filter? filters = null, Rerank? rerank = null, @@ -114,6 +119,7 @@ public async Task> NearText( moveAway: moveAway, limit: limit, offset: offset, + diversitySelection: diversitySelection, autoLimit: autoLimit, filters: filters, rerank: rerank, @@ -133,6 +139,7 @@ public async Task> NearText( /// Filters to apply to the search. /// Maximum number of results to return. /// Number of results to skip. + /// Diversity selection to apply to the results. /// Automatic result cutoff threshold. /// Re-ranking configuration. /// Properties to return in the response. @@ -146,6 +153,7 @@ public async Task>> NearText( Filter? filters = null, uint? limit = null, uint? offset = null, + Diversity? diversitySelection = null, uint? autoLimit = null, Rerank? rerank = null, AutoArray? returnProperties = null, @@ -160,6 +168,7 @@ public async Task>> NearText( filters: filters, limit: limit, offset: offset, + diversitySelection: diversitySelection, autoLimit: autoLimit, rerank: rerank, returnProperties: returnProperties, @@ -179,6 +188,7 @@ public async Task>> NearText( /// Filters to apply to the search. /// Maximum number of results to return. /// Number of results to skip. + /// Diversity selection to apply to the results. /// Automatic result cutoff threshold. /// Re-ranking configuration. /// Properties to return in the response. @@ -193,6 +203,7 @@ public async Task> NearText( Filter? filters = null, uint? limit = null, uint? offset = null, + Diversity? diversitySelection = null, uint? autoLimit = null, Rerank? rerank = null, AutoArray? returnProperties = null, @@ -208,6 +219,7 @@ public async Task> NearText( filters: filters, limit: limit, offset: offset, + diversitySelection: diversitySelection, autoLimit: autoLimit, rerank: rerank, returnProperties: returnProperties, @@ -226,6 +238,7 @@ public async Task> NearText( /// Filters to apply to the search. /// Maximum number of results to return. /// Number of results to skip. + /// Diversity selection to apply to the results. /// Automatic result cutoff threshold. /// Re-ranking configuration. /// Properties to return in the response. @@ -239,6 +252,7 @@ public Task>> NearText( Filter? filters = null, uint? limit = null, uint? offset = null, + Diversity? diversitySelection = null, uint? autoLimit = null, Rerank? rerank = null, AutoArray? returnProperties = null, @@ -252,6 +266,7 @@ public Task>> NearText( filters, limit, offset, + diversitySelection, autoLimit, rerank, returnProperties, @@ -269,6 +284,7 @@ public Task>> NearText( /// Filters to apply to the search. /// Maximum number of results to return. /// Number of results to skip. + /// Diversity selection to apply to the results. /// Automatic result cutoff threshold. /// Re-ranking configuration. /// Properties to return in the response. @@ -283,6 +299,7 @@ public Task> NearText( Filter? filters = null, uint? limit = null, uint? offset = null, + Diversity? diversitySelection = null, uint? autoLimit = null, Rerank? rerank = null, AutoArray? returnProperties = null, @@ -297,6 +314,7 @@ public Task> NearText( filters, limit, offset, + diversitySelection, autoLimit, rerank, returnProperties, diff --git a/src/Weaviate.Client/Typed/TypedQueryClient.NearVector.cs b/src/Weaviate.Client/Typed/TypedQueryClient.NearVector.cs index 2f9cc2dd..0694e62c 100644 --- a/src/Weaviate.Client/Typed/TypedQueryClient.NearVector.cs +++ b/src/Weaviate.Client/Typed/TypedQueryClient.NearVector.cs @@ -16,6 +16,7 @@ public partial class TypedQueryClient /// Filters to apply to the search. /// Minimum certainty threshold (0-1). /// Maximum distance threshold. + /// Diversity selection to apply to the results. /// Automatic result cutoff threshold. /// Maximum number of results to return. /// Number of results to skip. @@ -31,6 +32,7 @@ public async Task>> NearVector( Filter? filters = null, float? certainty = null, float? distance = null, + Diversity? diversitySelection = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, @@ -47,6 +49,7 @@ public async Task>> NearVector( filters: filters, certainty: certainty, distance: distance, + diversitySelection: diversitySelection, autoLimit: autoLimit, limit: limit, offset: offset, @@ -68,6 +71,7 @@ public async Task>> NearVector( /// Filters to apply to the search. /// Maximum distance threshold. /// Minimum certainty threshold (0-1). + /// Diversity selection to apply to the results. /// Automatic result cutoff threshold. /// Maximum number of results to return. /// Number of results to skip. @@ -84,6 +88,7 @@ public async Task> NearVector( Filter? filters = null, float? distance = null, float? certainty = null, + Diversity? diversitySelection = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, @@ -101,6 +106,7 @@ public async Task> NearVector( filters: filters, distance: distance, certainty: certainty, + diversitySelection: diversitySelection, autoLimit: autoLimit, limit: limit, offset: offset, @@ -121,6 +127,7 @@ public async Task> NearVector( /// Filters to apply to the search. /// Minimum certainty threshold (0-1). /// Maximum distance threshold. + /// Diversity selection to apply to the results. /// Automatic result cutoff threshold. /// Maximum number of results to return. /// Number of results to skip. @@ -136,6 +143,7 @@ public Task>> NearVector( Filter? filters = null, float? certainty = null, float? distance = null, + Diversity? diversitySelection = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, @@ -151,6 +159,7 @@ public Task>> NearVector( filters, certainty, distance, + diversitySelection, autoLimit, limit, offset, @@ -170,6 +179,7 @@ public Task>> NearVector( /// Filters to apply to the search. /// Minimum certainty threshold (0-1). /// Maximum distance threshold. + /// Diversity selection to apply to the results. /// Automatic result cutoff threshold. /// Maximum number of results to return. /// Number of results to skip. @@ -186,6 +196,7 @@ public Task> NearVector( Filter? filters = null, float? certainty = null, float? distance = null, + Diversity? diversitySelection = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, @@ -202,6 +213,7 @@ public Task> NearVector( filters, distance, certainty, + diversitySelection, autoLimit, limit, offset, @@ -218,6 +230,7 @@ public Task> NearVector( /// /// Near-vector input containing vector, certainty, and distance. /// Filters to apply to the search. + /// Diversity selection to apply to the results. /// Automatic result cutoff threshold. /// Maximum number of results to return. /// Number of results to skip. @@ -231,6 +244,7 @@ public Task> NearVector( public Task>> NearVector( NearVectorInput query, Filter? filters = null, + Diversity? diversitySelection = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, @@ -246,6 +260,7 @@ public Task>> NearVector( filters: filters, certainty: query.Certainty, distance: query.Distance, + diversitySelection: diversitySelection, autoLimit: autoLimit, limit: limit, offset: offset, @@ -263,6 +278,7 @@ public Task>> NearVector( /// Near-vector input containing vector, certainty, and distance. /// Group-by configuration. /// Filters to apply to the search. + /// Diversity selection to apply to the results. /// Automatic result cutoff threshold. /// Maximum number of results to return. /// Number of results to skip. @@ -277,6 +293,7 @@ public Task> NearVector( NearVectorInput query, GroupByRequest groupBy, Filter? filters = null, + Diversity? diversitySelection = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, @@ -293,6 +310,7 @@ public Task> NearVector( filters: filters, certainty: query.Certainty, distance: query.Distance, + diversitySelection: diversitySelection, autoLimit: autoLimit, limit: limit, offset: offset, @@ -309,6 +327,7 @@ public Task> NearVector( /// /// /// Filters to apply to the search. + /// Diversity selection to apply to the results. /// Automatic result cutoff threshold. /// Maximum number of results to return. /// Number of results to skip. @@ -322,6 +341,7 @@ public Task> NearVector( public Task>> NearVector( NearVectorInput.FactoryFn vectors, Filter? filters = null, + Diversity? diversitySelection = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, @@ -335,6 +355,7 @@ public Task>> NearVector( NearVector( vectors(VectorInputBuilderFactories.CreateNearVectorBuilder()), filters, + diversitySelection, autoLimit, limit, offset, @@ -352,6 +373,7 @@ public Task>> NearVector( /// /// Group-by configuration. /// Filters to apply to the search. + /// Diversity selection to apply to the results. /// Automatic result cutoff threshold. /// Maximum number of results to return. /// Number of results to skip. @@ -366,6 +388,7 @@ public Task> NearVector( NearVectorInput.FactoryFn vectors, GroupByRequest groupBy, Filter? filters = null, + Diversity? diversitySelection = null, uint? autoLimit = null, uint? limit = null, uint? offset = null, @@ -380,6 +403,7 @@ public Task> NearVector( vectors(VectorInputBuilderFactories.CreateNearVectorBuilder()), groupBy, filters, + diversitySelection, autoLimit, limit, offset, diff --git a/src/Weaviate.Client/gRPC/Search.Builders.cs b/src/Weaviate.Client/gRPC/Search.Builders.cs index 31ced27c..aea18e5c 100644 --- a/src/Weaviate.Client/gRPC/Search.Builders.cs +++ b/src/Weaviate.Client/gRPC/Search.Builders.cs @@ -686,6 +686,7 @@ internal static ( /// The move to /// The move away /// The target vector + /// The diversity selection /// The near text private static V1.NearTextSearch BuildNearText( string[] query, @@ -693,7 +694,8 @@ private static V1.NearTextSearch BuildNearText( double? certainty, Move? moveTo, Move? moveAway, - TargetVectors? targetVector = null + TargetVectors? targetVector = null, + Diversity? diversitySelection = null ) { var nearText = new V1.NearTextSearch @@ -736,6 +738,12 @@ private static V1.NearTextSearch BuildNearText( nearText.Certainty = certainty.Value; } + var selection = BuildSelection(diversitySelection); + if (selection is not null) + { + nearText.Selection = selection; + } + return nearText; } @@ -745,11 +753,13 @@ private static V1.NearTextSearch BuildNearText( /// The vectors /// The certainty /// The distance + /// The diversity selection /// The near vector private static V1.NearVector BuildNearVector( VectorSearchInput vectors, double? certainty, - double? distance + double? distance, + Diversity? diversitySelection = null ) { V1.NearVector nearVector = new(); @@ -779,6 +789,12 @@ private static V1.NearVector BuildNearVector( nearVector.Vectors.Add(vectorsLocal); } + var selection = BuildSelection(diversitySelection); + if (selection is not null) + { + nearVector.Selection = selection; + } + return nearVector; } @@ -1023,23 +1039,40 @@ private V1.Hybrid BuildHybrid( MinimumOrTokensMatch = (bm25Operator as BM25Operator.Or)?.MinimumMatch ?? 1, }; } - if (diversitySelection is Diversity.MMR mmr) + var selection = BuildSelection(diversitySelection); + if (selection is not null) { - var mmrGrpc = new V1.Selection.Types.MMR(); - if (mmr.Limit.HasValue) - { - mmrGrpc.Limit = mmr.Limit.Value; - } - if (mmr.Balance.HasValue) - { - mmrGrpc.Balance = mmr.Balance.Value; - } - hybrid.Selection = new V1.Selection { Mmr = mmrGrpc }; + hybrid.Selection = selection; } return hybrid; } + /// + /// Builds the selection using the specified diversity selection + /// + /// The diversity selection + /// The selection, or null when no diversity selection was requested + private static V1.Selection? BuildSelection(Diversity? diversitySelection) + { + if (diversitySelection is not Diversity.MMR mmr) + { + return null; + } + + var mmrGrpc = new V1.Selection.Types.MMR(); + if (mmr.Limit.HasValue) + { + mmrGrpc.Limit = mmr.Limit.Value; + } + if (mmr.Balance.HasValue) + { + mmrGrpc.Balance = mmr.Balance.Value; + } + + return new V1.Selection { Mmr = mmrGrpc }; + } + /// /// Builds the near object using the specified object id /// @@ -1047,12 +1080,14 @@ private V1.Hybrid BuildHybrid( /// The certainty /// The distance /// The target vector + /// The diversity selection /// The near object private static V1.NearObject BuildNearObject( Guid objectID, double? certainty, double? distance, - TargetVectors? targetVector + TargetVectors? targetVector, + Diversity? diversitySelection = null ) { var nearObject = new V1.NearObject { Id = objectID.ToString() }; @@ -1069,6 +1104,12 @@ private static V1.NearObject BuildNearObject( nearObject.Targets = targetVector ?? new V1.Targets(); + var selection = BuildSelection(diversitySelection); + if (selection is not null) + { + nearObject.Selection = selection; + } + return nearObject; } } diff --git a/src/Weaviate.Client/gRPC/Search.cs b/src/Weaviate.Client/gRPC/Search.cs index 0569f0d7..854b7bc2 100644 --- a/src/Weaviate.Client/gRPC/Search.cs +++ b/src/Weaviate.Client/gRPC/Search.cs @@ -109,6 +109,7 @@ internal partial class WeaviateGrpcClient /// The distance /// The certainty /// The limit + /// The diversity selection /// The auto limit /// The offset /// The filters @@ -130,6 +131,7 @@ internal partial class WeaviateGrpcClient float? distance = null, float? certainty = null, uint? limit = null, + Diversity? diversitySelection = null, uint? autoLimit = null, uint? offset = null, Filter? filters = null, @@ -164,7 +166,7 @@ internal partial class WeaviateGrpcClient includeVectors: includeVectors ); - request.NearVector = BuildNearVector(vectors, certainty, distance); + request.NearVector = BuildNearVector(vectors, certainty, distance, diversitySelection); return await Search(request, cancellationToken); } @@ -178,6 +180,7 @@ internal partial class WeaviateGrpcClient /// The certainty /// The limit /// The offset + /// The diversity selection /// The auto limit /// The filters /// The move to @@ -202,6 +205,7 @@ internal partial class WeaviateGrpcClient float? certainty = null, uint? limit = null, uint? offset = null, + Diversity? diversitySelection = null, uint? autoLimit = null, Filter? filters = null, Move? moveTo = null, @@ -245,7 +249,8 @@ internal partial class WeaviateGrpcClient certainty, moveTo, moveAway, - targetVector + targetVector, + diversitySelection ); return await Search(request, cancellationToken); @@ -428,6 +433,7 @@ internal partial class WeaviateGrpcClient /// The distance /// The limit /// The offset + /// The diversity selection /// The auto limit /// The filters /// The group by @@ -450,6 +456,7 @@ internal partial class WeaviateGrpcClient double? distance, uint? limit, uint? offset, + Diversity? diversitySelection, uint? autoLimit, Filter? filters, GroupByRequest? groupBy, @@ -485,7 +492,13 @@ internal partial class WeaviateGrpcClient includeVectors: includeVectors ); - request.NearObject = BuildNearObject(objectID, certainty, distance, targetVector); + request.NearObject = BuildNearObject( + objectID, + certainty, + distance, + targetVector, + diversitySelection + ); return await Search(request, cancellationToken); } @@ -500,6 +513,7 @@ internal partial class WeaviateGrpcClient /// The distance /// The limit /// The offset + /// The diversity selection /// The auto limit /// The filters /// The group by @@ -524,6 +538,7 @@ internal partial class WeaviateGrpcClient double? distance, uint? limit, uint? offset, + Diversity? diversitySelection, uint? autoLimit, Filter? filters, GroupByRequest? groupBy, @@ -559,6 +574,8 @@ internal partial class WeaviateGrpcClient includeVectors: includeVectors ); + var selection = BuildSelection(diversitySelection); + switch (mediaType) { case NearMediaType.Image: @@ -578,6 +595,11 @@ internal partial class WeaviateGrpcClient request.NearImage.Targets = targetVector ?? new V1.Targets(); + if (selection is not null) + { + request.NearImage.Selection = selection; + } + break; case NearMediaType.Video: request.NearVideo = new V1.NearVideoSearch @@ -595,6 +617,11 @@ internal partial class WeaviateGrpcClient } request.NearVideo.Targets = targetVector ?? new V1.Targets(); + + if (selection is not null) + { + request.NearVideo.Selection = selection; + } break; case NearMediaType.Audio: request.NearAudio = new V1.NearAudioSearch @@ -612,6 +639,11 @@ internal partial class WeaviateGrpcClient } request.NearAudio.Targets = targetVector ?? new V1.Targets(); + + if (selection is not null) + { + request.NearAudio.Selection = selection; + } break; case NearMediaType.Depth: request.NearDepth = new V1.NearDepthSearch @@ -629,6 +661,11 @@ internal partial class WeaviateGrpcClient } request.NearDepth.Targets = targetVector ?? new V1.Targets(); + + if (selection is not null) + { + request.NearDepth.Selection = selection; + } break; case NearMediaType.Thermal: request.NearThermal = new V1.NearThermalSearch @@ -646,6 +683,11 @@ internal partial class WeaviateGrpcClient } request.NearThermal.Targets = targetVector ?? new V1.Targets(); + + if (selection is not null) + { + request.NearThermal.Selection = selection; + } break; case NearMediaType.IMU: request.NearImu = new V1.NearIMUSearch { Imu = Convert.ToBase64String(media) }; @@ -660,6 +702,11 @@ internal partial class WeaviateGrpcClient } request.NearImu.Targets = targetVector ?? new V1.Targets(); + + if (selection is not null) + { + request.NearImu.Selection = selection; + } break; default: throw new ArgumentException("Unsupported media type for near media search.");