mirror of
https://github.com/lancedb/lancedb.git
synced 2026-10-29 23:06:51 +00:00
Cohere retired `embed-english-v2.0`, `embed-english-light-v2.0` and `embed-multilingual-v2.0` on April 4, 2026 ([deprecations](https://docs.cohere.com/docs/deprecations), which lists `embed-english-v3.0`, `embed-multilingual-v3.0` and `embed-v4.0` as the embedding alternatives). `CohereEmbeddingFunction` still defaulted to `embed-multilingual-v2.0`, so every call without an explicit `name` fails. The default is now `embed-multilingual-v3.0`, the multilingual v3 model, and the retired models are removed from the docstring and the Cohere integration page (the page also listed `embed-english-v2.0` as the default, which did not match the code). The docs example, its generated snippet, the docs test and the slow Cohere test use the new name. This changes the default vector size: `ndims()` returns 1024 for `embed-multilingual-v3.0`, where the old default gave 768. Tables created from a schema that uses `cohere.ndims()` get 1024-dimension vectors from now on. A table that already holds 768-dimension vectors from the retired model needs a re-embed with a current model, since the old model can no longer be called. The `ndims()` entries for the v2 names are left as they are. Test: `test_cohere_default_model_is_not_a_retired_v2_model` in `python/python/tests/test_embeddings.py` checks the default name and that `ndims()` is 1024. The repository's pytest session could not be run for this change (its `conftest.py` needs a newer native module than the released wheel); the body of that test was run against the released `lancedb` 0.40.0 with this version of `cohere.py` in place, where it passes, and it returns `embed-multilingual-v2.0` / 768 without the change. ruff check and format are clean on the touched Python files. No Cohere request was made. This change was made with Claude Code. 🤖 Generated with [Claude Code](https://claude.com/claude-code) --------- Co-authored-by: Claude Sonnet 5.5 <noreply@anthropic.com> Co-authored-by: Xuanwo <github@xuanwo.io>
60 lines
2.6 KiB
Plaintext
60 lines
2.6 KiB
Plaintext
---
|
|
title: Cohere
|
|
sidebarTitle: Cohere
|
|
---
|
|
|
|
import { PyEmbeddingCohereUsage } from '/snippets/integrations.mdx';
|
|
|
|
Using cohere API requires cohere package, which can be installed using `pip install cohere`. Cohere embeddings are used to generate embeddings for text data. The embeddings can be used for various tasks like semantic search, clustering, and classification.
|
|
You also need to set the `COHERE_API_KEY` environment variable to use the Cohere API.
|
|
|
|
```shell
|
|
export COHERE_API_KEY="your-api-key"
|
|
```
|
|
|
|
Supported models are:
|
|
|
|
- embed-english-v3.0
|
|
- embed-multilingual-v3.0
|
|
- embed-english-light-v3.0
|
|
- embed-multilingual-light-v3.0
|
|
|
|
The v2.0 models (`embed-english-v2.0`, `embed-english-light-v2.0` and `embed-multilingual-v2.0`) were retired by Cohere on April 4, 2026.
|
|
|
|
The previous default, `embed-multilingual-v2.0`, produced 768-dimensional vectors.
|
|
The new default, `embed-multilingual-v3.0`, produces 1024-dimensional vectors.
|
|
Existing tables containing vectors from a v2.0 model must be re-embedded with an
|
|
active model into a table whose vector column has the matching dimension.
|
|
|
|
|
|
Supported parameters (to be passed in `create` method) are:
|
|
|
|
| Parameter | Type | Default Value | Description |
|
|
|---|---|--------|---------|
|
|
| `name` | `str` | `"embed-multilingual-v3.0"` | The model ID of the cohere model to use. Supported base models for Text Embeddings: embed-english-v3.0, embed-multilingual-v3.0, embed-english-light-v3.0, embed-multilingual-light-v3.0 |
|
|
| `source_input_type` | `str` | `"search_document"` | The type of input data to be used for the source column. |
|
|
| `query_input_type` | `str` | `"search_query"` | The type of input data to be used for the query. |
|
|
|
|
Cohere supports following input types:
|
|
|
|
| Input Type | Description |
|
|
|-------------------------|---------------------------------------|
|
|
| "`search_document`" | Used for embeddings stored in a vector|
|
|
| | database for search use-cases. |
|
|
| "`search_query`" | Used for embeddings of search queries |
|
|
| | run against a vector DB |
|
|
| "`semantic_similarity`" | Specifies the given text will be used |
|
|
| | for Semantic Textual Similarity (STS) |
|
|
| "`classification`" | Used for embeddings passed through a |
|
|
| | text classifier. |
|
|
| "`clustering`" | Used for the embeddings run through a |
|
|
| | clustering algorithm |
|
|
|
|
Usage Example:
|
|
|
|
<CodeGroup>
|
|
<CodeBlock filename="Python" language="Python" icon="python">
|
|
{PyEmbeddingCohereUsage}
|
|
</CodeBlock>
|
|
</CodeGroup>
|