Pre-release
This release is a pre-release and may not be stable for production use.
Chroma
Chroma is the open-source embedding database. Chroma makes it easy to build LLM apps by making knowledge, facts, and skills pluggable for LLMs.
ChatGPT for ______
For example, the "Chat your data" use case:
- Add documents to your database. You can pass in your own embeddings, embedding function, or let Chroma embed them for you.
- Query relevant documents with natural language.
- Compose documents into the context window of an LLM like
GTP3for additional summarization or analysis.
Features
- Simple: Fully typed, fully tested, fully documented == happiness
- Integrations:
🦜️🔗 Langchainand🦙 gpt-index - Dev, Test, Prod: the same API runs in your python notebook and up to a cluster
- Feature-rich: Queries, filtering, density estimation and more
- Fast: 50-100x faster than other popular solutions
- Free: Apache 2.0 Licensed
Get up and running
pip install chromadb
import chromadb
client = chromadb.Client()
collection = client.create_collection("all-my-documents")
collection.add(
embeddings=[[1.5, 2.9, 3.4], [9.8, 2.3, 2.9]],
metadatas=[{"source": "notion"}, {"source": "google-docs"}],
ids=["n/102", "gd/972"],
)
results = collection.query(
query_texts=["How do I do ..."],
n_results=3
)
Get involved
Chroma is a rapidly developing project. We welcome PR contributors and ideas for how to improve the project.
- Join the conversation on Discord
- Review the roadmap and contribute your ideas
- Grab an issue and open a PR
Embeddings?
What are embeddings?
- Read the guide from OpenAI
- Literal: Embedding something turns it from image/text/audio into a list of numbers. 🖼️/📄 =>
[1.2, 2.1, ....]. This process makes documents "understandable" to a machine learning model. - By analogy: An embedding represents the essence of a document. This enables documents and queries with the same essence to be "near" each other and therefore easy to find.
- Technical: An embedding is the latent-space position of a document at a layer of a deep neural network. For models trained specifically to embed data, this is the last layer.
- A small example: If you search your photos for "famous bridge in San Francisco". Through embedding the photo and it's metadata - it should return photos of the Golden Gate Bridge.
License
Metadata
Release files for chromadb 0.1.dev363
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| chromadb-0.1.dev363.tar.gz | 35.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| chromadb-0.1.dev363-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 68.1 kB
Release files / chromadb-0.1.dev363.tar.gz
| Download URL | chromadb-0.1.dev363.tar.gz |
|---|---|
| Size | 35.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
dbd0990692be8985dc3ea0fe0929365d92e12a03b9bde7c900248f2a228cb239
|
|
BLAKE2b-256 checksum How to use checksums |
9f4be9b9862069bf5fb79820365b8e81a933b6cb890cacd2a830af38e728752f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.10.8
|
Release files / chromadb-0.1.dev363-py3-none-any.whl
| Download URL | chromadb-0.1.dev363-py3-none-any.whl |
|---|---|
| Size | 32.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
15d0cf3dfd234623e9858b4d9a34ee357198198dcd80c46f97845232f40eccfa
|
|
BLAKE2b-256 checksum How to use checksums |
180ab65e561266ea034a11f0823994ed8bb77edf61de720d1d5ca86027fda418
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.10.8
|