CohereEmbeddings#

class langchain_cohere.embeddings.CohereEmbeddings[source]#

Bases: BaseModel, Embeddings

Implements the Embeddings interface with Cohere’s text representation language models.

Find out more about us at https://cohere.com and https://huggingface.co/CohereForAI

This implementation uses the Embed API - see https://docs.cohere.com/reference/embed

To use this you’ll need to a Cohere API key - either pass it to cohere_api_key parameter or set the COHERE_API_KEY environment variable.

API keys are available on https://cohere.com - it’s free to sign up and trial API keys work with this implementation.

Basic Example:
cohere_embeddings = CohereEmbeddings(model="embed-english-light-v3.0")
text = "This is a test document."

query_result = cohere_embeddings.embed_query(text)
print(query_result)

doc_result = cohere_embeddings.embed_documents([text])
print(doc_result)

Create a new model by parsing and validating input data from keyword arguments.

Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.

self is explicitly positional-only to allow self as a field name.

param async_client: Any [Required]#

Cohere async client.

param base_url: str | None = None#

Override the default Cohere API URL.

param client: Any [Required]#

Cohere client.

param cohere_api_key: SecretStr | None [Optional]#
param embedding_types: Sequence[str] = ['float']#

Specifies the types of embeddings you want to get back

param max_retries: int = 3#

Maximum number of retries to make when generating.

param model: str | None = None#

Model name to use. It is mandatory to specify the model name.

param request_timeout: float | None = None#

Timeout in seconds for the Cohere API request.

param truncate: str | None = None#

Truncate embeddings that are too long from start or end (“NONE”|”START”|”END”)

param user_agent: str = 'langchain:partner'#

Identifier for the application making the request.

async aembed(texts: List[str], *, input_type: Literal['search_document', 'search_query', 'classification', 'clustering', 'image'] | Any | None = None) List[List[float]][source]#
Parameters:
  • texts (List[str])

  • input_type (Literal['search_document', 'search_query', 'classification', 'clustering', 'image'] | ~typing.Any | None)

Return type:

List[List[float]]

async aembed_documents(texts: List[str]) List[List[float]][source]#

Async call out to Cohere’s embedding endpoint.

Parameters:

texts (List[str]) – The list of texts to embed.

Returns:

List of embeddings, one for each text.

Return type:

List[List[float]]

async aembed_query(text: str) List[float][source]#

Async call out to Cohere’s embedding endpoint.

Parameters:

text (str) – The text to embed.

Returns:

Embeddings for the text.

Return type:

List[float]

aembed_with_retry(**kwargs: Any) Any[source]#

Use tenacity to retry the embed call.

Parameters:

kwargs (Any)

Return type:

Any

embed(texts: List[str], *, input_type: Literal['search_document', 'search_query', 'classification', 'clustering', 'image'] | Any | None = None) List[List[float]][source]#
Parameters:
  • texts (List[str])

  • input_type (Literal['search_document', 'search_query', 'classification', 'clustering', 'image'] | ~typing.Any | None)

Return type:

List[List[float]]

embed_documents(texts: List[str]) List[List[float]][source]#

Embed a list of document texts.

Parameters:

texts (List[str]) – The list of texts to embed.

Returns:

List of embeddings, one for each text.

Return type:

List[List[float]]

embed_query(text: str) List[float][source]#

Call out to Cohere’s embedding endpoint.

Parameters:

text (str) – The text to embed.

Returns:

Embeddings for the text.

Return type:

List[float]

embed_with_retry(**kwargs: Any) Any[source]#

Use tenacity to retry the embed call.

Parameters:

kwargs (Any)

Return type:

Any

Examples using CohereEmbeddings