semantic search

Build better search for any language

Semantic Search provides powerful semantic search capabilities that find text, documents, and articles based on meaning, not just keywords.

Code sample that runs the Cohere API embed endpoint for search with only a few lines
Using Cohere to search what the tallest mountain in the world is

What’s possible with Semantic Search

Vector search: English

Semantic Search finds what you need, fast. Go beyond keywords and find docs, reviews, and more that are similar based on meaning.
Read the article

Vector search: Multilingual

Cohere offers high-performance multilingual search capability to help businesses scale globally. Search and return results in any language.
Read the article

"At ML6, we see that multilingualism remains a major challenge in an English-centric NLP landscape — especially in Europe. Naturally, we are actively on the lookout for solutions and have been impressed by what we’ve seen from Cohere thus far!"

Matthias FeysCo-Founder & CTO
ML6

Simple APIs, powerful results

No matter your level of experience with ML/AI, the Cohere Platform makes it easy to add search to your applications.

1import cohere  #Install with: pip install cohere
2import hnswlib #Install with: pip install hnswlib
3co = cohere.Client('{apiKey}') 
4
5docs = [
6   'Cohere offers NLP foundation models as an easy to use service.',
7   'Semantic search is based on vectors, it works for 100+ languages.',
8   'Our generate model is powered by a large language model.'
9]
10
11#Get your document embeddings
12doc_embs = co.embed(texts=docs, model='embed-english-v3.0', input_type=search_documents).embeddings
13
14#Create a search index
15index = hnswlib.Index(space='ip', dim=1024)
16index.init_index(max_elements=len(doc_embs), ef_construction=512, M=64)
17index.add_items(doc_embs, list(range(len(doc_embs))))
18
19#Search
20query = "What is semantic search"
21query_emb = co.embed(texts=[query], model='embed-english-v3.0', input_type=search_query).embeddings
22doc_ids = index.knn_query(query_emb, k=1)[0][0]
23
24for doc_id in doc_ids:
25    print(docs[doc_id])
1Semantic search is based on vectors, it works for 100+ languages.

Why Semantic Search

1

High search relevance in any language

Our search functionality provides accurate and relevant results regardless of the language used in the search query. Search and retrieve documents in any language with our multilingual capabilities.

2

Easy-to-use API

Our user-friendly API allows for seamless integration into your applications. Use our managed service or host it yourself, it works the same way.

3

Flexible and affordable

Our search capabilities can be deployed on various platforms and customized to fit your specific domain needs. Plus, we keep our pricing competitive and cost-effective.

Semantic Search resources

Semantic search documentation

Learn how to implement semantic search using Cohere’s embedding models.

View the docs

Get started with Cohere today!

Reach out to us and let’s discuss your search needs.