Skip to content

Embedding

Overview

The Embedding node calls an embedding model API and converts a text string into a fixed-dimensional float vector. The resulting vector is attached to the workflow data object under output_field so that downstream nodes — most commonly vector_search or a custom code node — can consume it without making a second API call. Use this node when the same embedding needs to feed multiple branches, or when you want explicit control over which model produces the representation.

Configuration

FieldTypeRequiredDefaultDescription
model_keystringYesIdentifier of the embedding model to use (e.g. "text-embedding-3-small", "text-embedding-3-large", "text-embedding-ada-002"). Must be registered in the platform's model registry.
input_pathstringNo"$.text"JSONPath expression pointing to the text field within the incoming data object. Defaults to the top-level text property.
output_fieldstringNo"embedding"Name of the field added to the output object that holds the embedding vector (array of floats).
encoding_formatstringNo"float"Encoding format for the returned vector. One of "float" (array of 32-bit floats) or "base64" (base64-encoded binary, smaller payload).
dimensionsintegerNoDesired output dimensionality. Only supported by models that allow variable dimensions (e.g. text-embedding-3-*). Omit to use the model's default.

Inputs

PortTypeDescription
inputobjectData object containing the text to embed. The field referenced by input_path is extracted and sent to the embedding API.
textstringShorthand input: a bare string to embed. When connected, input_path is ignored.

Outputs

PortTypeDescription
outputobjectThe original input object with output_field added (or overwritten). The embedding value is an array of floats (or a base64 string when encoding_format is "base64").
embeddingarray of numbersThe raw embedding vector, emitted separately for easy wiring into vector_search's query_embedding port.
usageobjectToken usage information: { prompt_tokens: number, total_tokens: number }.

Example

json
{
  "nodeType": "embedding",
  "config": {
    "model_key": "text-embedding-3-small",
    "input_path": "$.query",
    "output_field": "query_embedding",
    "encoding_format": "float",
    "dimensions": 512
  }
}

Notes

  • Embedding calls count against your connected AI provider's token quota; monitor usage via the usage output port or the platform's cost dashboard.
  • When feeding the result directly into vector_search, wire the embedding output port to vector_search's query_embedding port to avoid a second embedding call.
  • The dimensionality of the stored vectors in a collection must match the dimensionality produced by this node; mismatched dimensions cause the search query to fail.
  • For batch processing, prefer the loop_map node to embed multiple texts in parallel rather than serialising calls through a single Embedding node.