Skip to main content

Chroma.

Project description

logo

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:

  1. Add documents to your database. You can pass in your own embeddings, embedding function, or let Chroma embed them for you.
  2. Query relevant documents with natural language.
  3. Compose documents into the context window of an LLM like GTP3 for additional summarization or analysis.

Features

  • Simple: Fully typed, fully tested, fully documented == happiness
  • Integrations: 🦜️🔗 Langchain and 🦙 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.

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

Apache 2.0

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

chromadb-0.1.dev365.tar.gz (34.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

chromadb-0.1.dev365-py3-none-any.whl (30.8 kB view details)

Uploaded Python 3

File details

Details for the file chromadb-0.1.dev365.tar.gz.

File metadata

  • Download URL: chromadb-0.1.dev365.tar.gz
  • Upload date:
  • Size: 34.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.9

File hashes

Hashes for chromadb-0.1.dev365.tar.gz
Algorithm Hash digest
SHA256 2d7fcd55c0c5f25c3295a384ac938735ac6a6fb14a721c072a44865e74d8138c
MD5 85f3bf1fe17cf25448c2f6733b825316
BLAKE2b-256 97f5528ca88e0f6e263f86cafc94f3eb523a8a262445e01b54634d0544ef70ce

See more details on using hashes here.

File details

Details for the file chromadb-0.1.dev365-py3-none-any.whl.

File metadata

  • Download URL: chromadb-0.1.dev365-py3-none-any.whl
  • Upload date:
  • Size: 30.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.9

File hashes

Hashes for chromadb-0.1.dev365-py3-none-any.whl
Algorithm Hash digest
SHA256 9c581313e0e3615065f3497e7252c582b448be507ec6c2ccfbc557368f07a819
MD5 afce5d7b223556d15f6405600847bc2b
BLAKE2b-256 c2cfc6a07b273a72b0fa858d89fc03585656431920dc880bf4aea91370242bac

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page