Repository navigation
2.10.0
Minor release of ChromaDotNet.Client and ChromaDotNet.Client.DependencyInjection: what an integration like Microsoft.Extensions.VectorData needs, done in the client.
dotnet add package ChromaDotNet.Client
Added
- Collections by name:
GetCollectionClient(name)follows the collection with that name, also after it is created again elsewhere.DeleteCollectionIfExistsAsync. - Updates and upserts: a null value or an empty list deletes the key, with the sparse vectors of its text.
ChromaRecords.NullDocumentsDeletedeletes the documents.WithDocumentCopyKey(key)copies each document into a metadata key, for awherefilter on the whole text. - Filters:
ChromaWhereOperator.Not,AllandNone, andChromaWhereDocumentOperator.Not.ChromaWhereOperatoralso filters ids and documents. - BM25:
ChromaCollectionSchema.WithBm25Index(sourceKey),FindBm25IndexAsync, andChromaRank.HybridRrffor hybrid search on Chroma Cloud. - Also:
ChromaQuery.OffsetandExpectedSpace,ChromaMetadataConvert,ChromaCloudQuotas.
Changed
InandNotInwithout values no longer throw anArgumentException: they areNoneandAll.GetOrCreateCollectionAsyncthrows when the collection exists with another space.- A query whose ids include some without a record leaves them out, as Chroma Cloud does, instead of failing on Chroma 1.x.
Tested
The whole suite on Chroma 1.5.9, 1.0.0, 0.6.3, 0.4.23 and Chroma Cloud, with the .NET 8 and .NET Standard 2.0 builds. The CI runs it against Chroma 0.4.10 to latest. See the compatibility table.