Discover / RAG & Knowledge

Chroma

by chroma-coreRust

Open-source embedding database for building LLM apps.

Toolstable

Maturity: stable because 4y old, 1.5.9 released 90d ago. Derived from release and commit history, not a rating.

Stars
29k
Forks
2.4k
Downloads / mo
12.8M
Last commit
2026-07-31
License
Apache-2.0
Open issues
756

Market and trust evidence

Edition not yet matched

No exact skills.sh identity match is available for this repository. Repository adoption and freshness remain visible above; install momentum is not inferred.

Trust analysis is a screening signal, not a security warranty. Read the ranking and trust methodology.

In practice

Written by AI from this repository’s README · medium confidence

Prototyping retrieval means wiring tokenization, embedding and indexing together before you can query anything.

Use it when

Use it when you want the shortest path from documents to semantic queries in Python or JavaScript.

Not the right pick when

The default client is in memory for prototyping, so production use means client-server mode or the hosted service.

Capabilities

  • in memory client for easy prototyping with persistence available
  • client-server mode started with chroma run
  • automatic tokenization, embedding and indexing of documents
  • metadata and document content filters on queries
  • Python and JavaScript client packages released on a weekly cadence

Cost: Open source with a paid cloud option

Install

Derived from the published package name in the repository, not from a model.

Video walkthroughs

Third-party YouTube uploads matched to this tool by title, channel and repository name on 2026-08-03. Not made, reviewed or endorsed by SkillPilot. View counts and publish months are as of the match date and the month is approximate. Nothing loads from YouTube until you press play.

What the repository ships

Ships CLAUDE.mdHas docsHas examplesDocker imageCI configured

Detected from the actual files in the repository root.

Latest release 1.5.9

Published 2026-05-05

Version: 1.5.9

Git ref: refs/tags/1.5.9

Build Date: 2026-05-05T05:55

PIP Package: chroma-1.5.9.tar.gz

Github Container Registry Image: :1.5.9

DockerHub Image: :1.5.9

What's Changed

  • ENH: block functions on topology dbs by @rescrv in https://github.com/chroma-core/chroma/pull/6836
  • ENH: Add Tilt fault injection CLI by @rescrv in https://github.com/chroma-core/chroma/pull/6881
  • [CHORE] Debug TimeoutError in test_add.py by @rescrv in https://github.com/chroma-core/chroma/pull/6905
  • [ENH]: Enable rebuilds for sharded collections by @tanujnay112 in https://github.com/chroma-core/chroma/pull/6916
  • [ENH]: Group by support with sharding by @sanketkedia in https://github.com/chroma-core/chroma/pull/6909
  • [CHORE]: Denormalize tenant and database into collection_compaction_cursors table by @tanujnay112 in https://github.com/chroma-core/chroma/pull/6940
  • [CHORE] Use normalized record sets for test add by @rescrv in https://github.com/chroma-core/chroma/pull/6935
  • [ENH]: Add workflow to build and publish service container images by @jasonvigil in https://github.com/chroma-core/chroma/pull/6944
  • [ENH] - Updates language around Chroma Cloud to be more representative. by @tjkrusinskichroma in https://github.com/chroma-core/chroma/pull/6952
  • [ENH]: Add change stream to collection compaction cursors by @tanujnay112 in https://github.com/chroma-core/chroma/pull/6955
  • [BUG] Switch to storing DOCKERHUB_USERNAME as var by @jasonvigil in https://github.com/chroma-core/chroma/pull/6962
  • [CHORE]: Standardize Tilt CI image build on root docker-bake.hcl by @jasonvigil in https://github.com/chroma-core/chroma/pull/6958
  • [BUG]: Rename database on soft delete by @tanujnay112 in https://github.com/chroma-core/chroma/pull/6943
  • Revert "[CHORE]: Standardize Tilt CI image build on root docker-bake.hcl" by @jasonvigil in https://github.com/chroma-core/chroma/pull/6965
  • ENH: name and size all worker threads by @rescrv in https://github.com/chroma-core/chroma/pull/6936
  • BUG: simplify flaky indexing progress test by @rescrv in https://github.com/chroma-core/chroma/pull/6968
  • [CHORE] stabilize Tilt dev environment configs by @rescrv in https://github.com/chroma-core/chroma/pull/6937
  • BUG: use correct version file per collection in ancestor walk by @rescrv in https://github.com/chroma-core/chroma/pull/6970
  • [ENH] Add SparsePostingBlock by @HammadB in https://github.com/chroma-core/chroma/pull/6823
  • [ENH] Add basic maxscore writer/reader by @HammadB in https://github.com/chroma-core/chroma/pull/6825
  • [ENH] Add maxscore lazy cursor by @HammadB in https://github.com/chroma-core/chroma/pull/6829
  • [ENH] Add SIMD for maxscore by @Sicheng-Pan in https://github.com/chroma-core/chroma/pull/6865
  • [ENH] Benchmark maxscore by @Sicheng-Pan in https://github.com/chroma-core/chroma/pull/6866
  • [ENH] Add maxscore option in schema by @Sicheng-Pan in https://github.com/chroma-core/chroma/pull/6878
  • [ENH] Add maxscore index to metadata segment by @Sicheng-Pan in https://github.com/chroma-core/chroma/pull/6880
  • [ENH] Wire maxscore reader in search by @Sicheng-Pan in https://github.com/chroma-core/chroma/pull/6899
  • [PERF] Batch load lazy cursor by @Sicheng-Pan in https://github.com/chroma-core/chroma/pull/6974
  • ENH: add MCMR support for log GC by @rescrv in https://github.com/chroma-core/chroma/pull/6946
  • ENH: parameterize multi-region config by @rescrv in https://github.com/chroma-core/chroma/pull/6951
  • [CHORE] fix merge conflict in main by @rescrv in https://github.com/chroma-core/chroma/pull/6986
  • [ENH]: Refactor offset_id to be a mutable AtomicU32 in record by @tanujnay112 in https://github.com/chroma-core/chroma/pull/6922
  • ENH: add spanner-cli wrapper binary by @rescrv in https://github.com/chroma-core/chroma/pull/6959
  • BUG: preserve legacy hnsw: metadata keys by @rescrv in https://github.com/chroma-core/chroma/pull/6953

*

Tags

README

Chroma

Chroma

<p align="center">

<b>Chroma - the open-source data infrastructure for AI</b>. <br />

</p>

<p align="center">

<a href="https://discord.gg/MMeYNTmh3x" target="_blank">

<img src="https://img.shields.io/discord/1073293645303795742?cacheSeconds=3600" alt="Discord">

</a> |

<a href="https://github.com/chroma-core/chroma/blob/master/LICENSE" target="_blank">

<img src="https://img.shields.io/badge/License-Apache_2.0-blue.svg" alt="License">

</a> |

<a href="https://docs.trychroma.com/" target="_blank">

Docs

</a> |

<a href="https://www.trychroma.com/" target="_blank">

Homepage

</a>

</p>


pip install chromadb # python client
# for javascript, npm install chromadb!
# for client-server mode, chroma run --path /chroma_db_path

Chroma Cloud

Our hosted service, Chroma Cloud, powers serverless vector, hybrid, and full-text search. It's extremely fast, cost-effective, scalable and painless. Create a DB and try it out in under 30 seconds with $5 of free credits.

Get started with Chroma Cloud

API

The core API is only 4 functions (run our 💡 Google Colab):


import chromadb
# setup Chroma in-memory, for easy prototyping. Can add persistence easily!
client = chromadb.Client()

# Create collection. get_collection, get_or_create_collection, delete_collection also available!
collection = client.create_collection("all-my-documents")

# Add docs to the collection. Can also update and delete. Row-based API coming soon!
collection.add(
    documents=["This is document1", "This is document2"], # we handle tokenization, embedding, and indexing automatically. You can skip that and add your own embeddings as well
    metadatas=[{"source": "notion"}, {"source": "google-docs"}], # filter on these!
    ids=["doc1", "doc2"], # unique for each doc
)

# Query/search 2 most similar results. You can also .get by id
results = collection.query(
    query_texts=["This is a query document"],
    n_results=2,
    # where={"metadata_field": "is_equal_to_this"}, # optional filter
    # where_document={"$contains":"search_string"}  # optional filter
)

Learn about all features on our Docs

Get involved

Chroma is a rapidly developing project. We welcome PR contributors and ideas for how to improve the project.

Release Cadence

We currently release new tagged versions of the pypi and npm packages on Mondays. Hotfixes go out at any time during the week.

License

Apache 2.0

Related tools