Amazon Bedrock
Chroma provides a convinient wrapper for Amazon Bedrock embedding API. This embedding function runs remotely on Amazon's servers, and requires an Amazon client session.
To use Amazon Bedrock embedding API, you must have boto3
Python package installed and create an instance of boto3.Session
with your AWS credentials. To use:
import boto3
import chromadb.utils.embedding_functions as embedding_functions
session = boto3.Session(
aws_access_key_id=aws_access_key_id,
aws_secret_access_key=aws_secret_access_key,
region_name=region_name,
)
bedrock = embedding_functions.AmazonBedrockEmbeddingFunction(session=session)
bedrock(["document1","document2"])
By default, the embedding function uses the amazon.titan-embed-text-v1
for the model, but you can specify a different model name with model_name
parameter. For example:
bedrock = embedding_functions.AmazonBedrockEmbeddingFunction(
session=session, model_name="cohere.embed-multilingual-v3")
bedrock(["こんにちは", "你们好"])