Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

Add a Chroma provider (CommunityToolkit.VectorData.Chroma)

Aperta
#57 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
52/100
Tipo di issue
Funzionalità
Chiarezza
Specificata chiaramente
Stato di attività
Attiva
Stack tecnologico
csharp, docker
Ambito
databases

Direzione di ricerca

Start by comparing the existing Qdrant provider structure in this repository with the reference implementation at ChromaDotNet/ChromaDB.VectorData. Then read the conformance-test requirements in the issue and the mevd.yml matrix; the requested additions are MEVD/src/Chroma, MEVD/test/Chroma.UnitTests, and MEVD/test/Chroma.ConformanceTests. Done means the provider and tests are included in the matrix and the conformance tests run against Chroma with Testcontainers.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

Summary

Add a Chroma provider for Microsoft.Extensions.VectorData as CommunityToolkit.VectorData.Chroma, in MEVD/src/Chroma with its unit and conformance tests, like the other providers of this repository.

Chroma is listed as planned for .NET in the vector store tables of Semantic Kernel and Agent Framework.

Background

In microsoft/semantic-kernel#12510, @roji wrote that a Chroma provider first needed an up-to-date low-level .NET client. ChromaDotNet.Client (repository) continues ChromaDB.Client and is tested against Chroma 0.4.10 to 1.5.9 and Chroma Cloud.

The provider

A working provider is at ChromaDotNet/ChromaDB.VectorData, published as ChromaDotNet.VectorData. It started as a copy of the Qdrant provider of this repository and keeps its structure.

  • The Microsoft.Extensions.VectorData conformance tests pass against Chroma 1.5.0, 1.5.9 and the latest release, and on Chroma Cloud, hybrid search included. The test bases for multiple vectors and records without vectors are excluded: Chroma stores exactly one embedding per record.
  • Limits that come from Chroma: metadata has no null values, so filtering on null is not supported; GetAsync with a filter does not support ordering; comparisons work on numbers only.

Change

A pull request that adds MEVD/src/Chroma, MEVD/test/Chroma.UnitTests and MEVD/test/Chroma.ConformanceTests with the namespaces, package metadata and test layout of the other providers. The conformance tests start Chroma with Testcontainers, so the mevd.yml matrix runs them with the other providers.

Once CommunityToolkit.VectorData.Chroma is published, ChromaDotNet.VectorData is deprecated in its favor on NuGet. We keep maintaining the provider here.

Lingua principale
C#
Stelle
8
Fork
6
Merge medio
3g 12h
PR unite (30g)
3

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di CommunityToolkit/AI

Tutte le issue di CommunityToolkit/AI

Issue simili

Altre issue su C#

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.