Skip to main content
Generate vector embeddings from text using Cohere’s enterprise-grade embedding models. Cohere embeddings excel at multilingual semantic search, clustering, and classification tasks.

Samples

Generate an embedding

Create a vector embedding:
SELECT ai.cohere_embed(
    'embed-english-v3.0',
    'PostgreSQL is a powerful database'
);

Specify input type

Optimize embeddings for your use case:
-- For search queries
SELECT ai.cohere_embed(
    'embed-english-v3.0',
    'best database for time-series',
    input_type => 'search_query'
);

-- For documents to be searched
SELECT ai.cohere_embed(
    'embed-english-v3.0',
    'PostgreSQL is a relational database',
    input_type => 'search_document'
);

Store embeddings in a table

Generate and store embeddings for your data:
UPDATE documents
SET embedding = ai.cohere_embed(
    'embed-english-v3.0',
    content,
    input_type => 'search_document'
)
WHERE embedding IS NULL;

Multilingual embeddings

Use multilingual models for non-English content:
SELECT ai.cohere_embed(
    'embed-multilingual-v3.0',
    'La base de datos PostgreSQL es poderosa',
    input_type => 'search_document'
);

Arguments

NameTypeDefaultRequiredDescription
modelTEXT-The Cohere embedding model to use (e.g., embed-english-v3.0)
input_textTEXT-Text to embed
api_keyTEXTNULLCohere API key. If not provided, uses configured secret
api_key_nameTEXTNULLName of the secret containing the API key
input_typeTEXTNULLType of input: search_query, search_document, classification, clustering
truncate_long_inputsTEXTNULLHow to handle long inputs: START, END, NONE
verboseBOOLEANFALSEEnable verbose logging for debugging

Returns

vector: A pgvector compatible vector containing the embedding.