The Cohere Platform

Cohere offers an API to add cutting-edge language processing to any system. Cohere trains massive language models and puts them behind a simple API. Moreover, through training, users can create massive models customized to their use case and trained on their data. This way, Cohere handles the complexities of collecting massive amounts of text data, the ever-evolving neural network architectures, distributed training, and serving models around the clock.

Cohere offers access to both generation models (through the generate endpoint) and  
  representation models (through the embed endpoint which returns an embedding vector for the input text).

Cohere offers access to both generation models (through the generate endpoint) and
representation models (through the embed endpoint which returns an embedding vector for the input text).

Two major categories of large language models are generative language models (like GPT2 and GPT3) and representation language models (like BERT). Cohere offers variants of both types.

Use Cases

Here are a few examples of language understanding systems that can be built on top of large language models.

Summarize

Large language models present a breakthrough in text generation. For the first time in history, we have software programs that can write text that sounds like it’s written by humans. These capabilities open doors to use cases like summarization or paraphrasing.

Language models can be instructed to generate useful summaries or paraphrases of input text by guiding them using a task description in the prompt.

Language models can be instructed to generate useful summaries or paraphrases of input text by guiding them using a task description in the prompt.

A summarization prompt in the Cohere playground shows this output (in bold):

  Example summarization prompt and generation. Stop sequence is specified as the period to limit the output to one sentence.

Example summarization prompt and generation. Stop sequence is specified as the period to limit the output to one sentence.

Large language models can be adapted to new tasks with impressive speed. For tasks which appear in the training data (i.e. documents on the web), language models can successfully summarize text without being shown any examples at all.

Two strategies you can experiment with generative language models are <a href="/prompt-engineering">prompt engineering</a> and <a href="/training-a-generative-model">training</a> (which creates a custom model based on your dataset).

Two strategies you can experiment with generative language models are prompt engineering and training (which creates a custom model based on your dataset).

Summarization uses the Co.summarize endpoint.

📘

New to Cohere?

Get Started now and get unprecedented access to world-class Generation and Representation models with billions of parameters.

Classify

Classification is one of the most common use cases in language processing. Building systems on top of language models can automate language-based tasks and save time and energy.

Developers can build classifiers on top of Cohere’s language models. These classifiers can automate language tasks and workflows.

Developers can build classifiers on top of Cohere’s language models. These classifiers can automate language tasks and workflows.

There's more than one way to build a classifier on top of Cohere's language models. It's worth experimenting to see which method works best for your use case. The simpler methods can get you quick results, while the more advanced methods need more data and will lead to better results.

On the simpler side are methods like using the Classify endpoint for classification. More industrial-grade classifiers can be built by fitting a classifier on top of the embed endpoint (see: Embedding endpoint for classification).

Semantic Similarity

Think of how many repeated questions have to be answered by a customer service agent every day. Language models are capable of judging text similarity and determining if an incoming question is similar to questions already answered in the FAQ section.

A similarity score can be computed through our embeddings by calculating the  
  <a href="https://en.wikipedia.org/wiki/Cosine_similarity" target="_blank">cosine similarity</a> of two embeddings.

A similarity score can be computed through our embeddings by calculating the
cosine similarity of two embeddings.

There are multiple things your system can do once it receives the similarity scores — one possible next action is to simply show the answer to the most similar question (if above a certain similarity threshold). Another possible next action is to make that suggestion to a customer service agent.