OpenAI
Select a language
- Python
- JavaScript
Chroma provides a convenient wrapper around OpenAI's embedding API. This embedding function runs remotely on OpenAI's servers, and requires an API key. You can get an API key by signing up for an account at OpenAI.
This embedding function relies on the openai
python package, which you can install with pip install openai
.
openai_ef = embedding_functions.OpenAIEmbeddingFunction(
api_key="YOUR_API_KEY",
model_name="text-embedding-ada-002"
)
To use the OpenAI embedding models on other platforms such as Azure, you can use the api_base
and api_type
parameters:
openai_ef = embedding_functions.OpenAIEmbeddingFunction(
api_key="YOUR_API_KEY",
api_base="YOUR_API_BASE_PATH",
api_type="azure",
api_version="YOUR_API_VERSION",
model_name="text-embedding-ada-002"
)
const {OpenAIEmbeddingFunction} = require('chromadb');
const embedder = new OpenAIEmbeddingFunction({openai_api_key: "apiKey"})
// use directly
const embeddings = embedder.generate(["document1","document2"])
// pass documents to query for .add and .query
const collection = await client.createCollection({name: "name", embeddingFunction: embedder})
const collection = await client.getCollection({name: "name", embeddingFunction: embedder})
You can pass in an optional model_name
argument, which lets you choose which OpenAI embeddings model to use. By default, Chroma uses text-embedding-ada-002
. You can see a list of all available models here.