v1

latestOpenAPI 3.1.02026-07-26106201349.6 KB

Create embeddings

post/embeddings

Request body

modelstring required

The model to use for generating embeddings.

prompt_templatestring

Template string for processing input data before embedding. When provided, fields from the input object are substituted using Jinja2. For example, simple substitution is done using {field_name} syntax. The resulting string(s) are then embedded. For array inputs, each object generates a separate string.

Additionally, we expose truncate_tokens(string) function to the template that allows to truncate the string based on token lengths instead of characters

dimensionsinteger

The number of dimensions the resulting output embeddings should have. Only supported in nomic-ai/nomic-embed-text-v1.5 and later models.

return_logitsinteger[]

If provided, returns raw model logits (pre-softmax scores) for specified token or class indices. If an empty list is provided, returns logits for all available tokens/classes. Otherwise, only the specified indices are returned.

When used with normalize=true, softmax is applied to create probability distributions. Softmax is applied only to the selected tokens, so output probabilities will always add up to 1.

normalizeboolean

Controls normalization of the output. When return_logits is not provided, embeddings are L2 normalized (unit vectors). When return_logits is provided, softmax is applied to the selected logits to create probability distributions.

Example request

{
  "input": "This is a test.",
  "model": "nomic-ai/nomic-embed-text-v1.5",
  "prompt_template": "Embed this text: {text}",
  "dimensions": 768,
  "return_logits": [
    0,
    1,
    2
  ]
}

Response

OK

modelstring required

The name of the model used to generate the embedding.

object'list' required

The object type, which is always "list".