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.dev361
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.dev361.tar.gz | 35.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| chromadb-0.1.dev361-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 68.1 kB
Release files / chromadb-0.1.dev361.tar.gz
| Download URL | chromadb-0.1.dev361.tar.gz |
|---|---|
| Size | 35.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
c734eef094681687845d60f0f1acc55ee4c03895c1392859e37a096d61eb052e
|
|
BLAKE2b-256 checksum How to use checksums |
2486e71e7d2f8aebc81a4404481eb5aa93ee1c78cc892e513edb89da6bb5567b
|
| 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.dev361-py3-none-any.whl
| Download URL | chromadb-0.1.dev361-py3-none-any.whl |
|---|---|
| Size | 32.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
33c01f29ea87b56203cbbbf3702db3915cda9647f9a7a09203af25deaac8bf70
|
|
BLAKE2b-256 checksum How to use checksums |
a2dc23321e45522520279e4d74fb39cf82bc574f4d0295d7b3b390057f302683
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.10.8
|