Intfloat: E5-Large-v2
intfloat E5-Large-v2 encodes English queries and passages as 1024-dimensional vectors. Its 24-layer model uses query/passage roles, mean pooling and a 512-token input limit for search, semantic similarity and numerical text features.
About the model
This description covers the model’s capabilities. Available in Ailoot inputs, outputs and options are listed for the selected method below.
E5-Large-v2 is intfloat’s twenty-four-layer English text embedding model with a 1024-dimensional output. It is designed to represent queries and passages numerically for retrieval and other embedding tasks. The E5 preparation convention is part of its training: the input text carries a role prefix, and the encoded token representations are pooled into one vector for that text.
Keep the query and passage roles explicit
For asymmetric retrieval, start the question with “query:” and the corpus text with “passage:”. These roles distinguish what the user is looking for from the material that might answer it. For a symmetric comparison, paraphrase search, clustering or classification features, the maker recommends “query:” for the texts being embedded.
A practical collection can index English support explanations. Prepare a question such as “query: What should I check before replacing the connector?” and pair it with source passages describing the checks and exceptions. The passage text keeps its corresponding prefix. Store the source identifier and original wording beside each vector so the result can return the material a user needs to read.
The prefixes are not decorative labels to remove from one side of the task. The manufacturer states that omitting them degrades retrieval performance because the model was trained with that preparation. Apply the chosen role consistently when building the corpus and when later embedding a query.
Mean pooling and normalised vectors
The official encoding example averages the token representations while excluding padding positions with the attention mask. It then normalises the resulting vector. A dot product between normalised query and passage vectors supplies cosine similarity for ordering candidates. This mean-pooling recipe belongs to E5-Large-v2; a first-token pooling recipe from a different family is a separate preparation choice.
The 1024 output values form the embedding, not a written answer or a direct category label. A search stage compares those values with compatible corpus representations, and a later stage uses the selected passage text. If vectors serve as clustering or classifier features, retain the association between each vector and the input record whose features it represents.
English text within the window
The model card specifies English-only text and truncation of long inputs to at most 512 tokens. Keep each document passage coherent inside that window, including the role prefix and useful source context. A long manual should be prepared as sections whose titles, conditions and instructions can be understood when retrieved separately.
For example, a clause describing a setting may need the definition of that setting and an exception in the next sentence. Preserve that small unit together rather than splitting purely at a character count. Keep the parent document and source version with the passage so an update replaces the correct material.
Read the ranking as retrieval evidence
The maker explains that the ordering of cosine scores matters more than their absolute values. A score should not be interpreted as a calibrated probability that a passage answers the question. Check known answer-bearing passages and nearby irrelevant material when choosing how many results to retain or where to filter a candidate set.
The useful output is a corpus or query representation, a semantic comparison signal or numerical features for another task. This exact English Large v2 checkpoint remains separate from E5-Base-v2 and Multilingual-E5-Large. Matching dimensions alone do not make their vectors a documented common embedding space.
Ailoot Ultra · Embeddings POST /v1/embeddings intfloat/e5-large-v2
intfloat/e5-large-v2Overview
intfloat E5-Large-v2 encodes English queries and passages as 1024-dimensional vectors. Its 24-layer model uses query/passage roles, mean pooling and a 512-token input limit for search, semantic similarity and numerical text features.
- Accepted inputs
- Text · token_ids
- Results
- embedding
Available in Ailoot · inputs & methods
Ailoot Ultra · Embeddings POST /v1/embeddings
- Input types
text,token_ids- Output types
embedding- Output format
- json
| Field | Type | Requirement | Values & limits | Default |
|---|---|---|---|---|
Fieldmodel | Typestring | RequirementRequired | Values & limits intfloat/e5-large-v2 | Default— |
Fieldinput | Typestring|string[]|integer[]|integer[][] | RequirementRequired | Values & limits Minimum items: 1 Conditions: Nonempty homogeneous batch. Token IDs are nonnegative integers. Input budget: Maximum: 512 · Text unit: UTF8 bytes · Token unit: token-array elements | Default— |
Fieldencoding_format | Typestring | RequirementOptional | Values & limits float | Defaultfloat |
Fielddimensions | Typeinteger | RequirementNot supported | Values & limits Minimum: 1 | Default— |
Fielduser | Typejson_value | RequirementOptional | Values & limits Conditions: Source allows this JSON metadata field; exact upstream semantics are model-specific. | Default— |
Fieldsession_id | Typejson_value | RequirementOptional | Values & limits Conditions: Source allows this JSON metadata field; exact upstream semantics are model-specific. | Default— |
Fieldtrace | Typejson_value | RequirementOptional | Values & limits Conditions: Source allows this JSON metadata field; exact upstream semantics are model-specific. | Default— |
Fieldprovider | Typeobject | RequirementOptional | Values & limits Conditions: provider.options rejected | Default— |
Input material combinations
text_to_embedding
Method parameters and lifecycle
| Parameter | Contract |
|---|---|
Parametercontent_type | Contractapplication/json |
Parameterrequired | Contractmodel, input |
Parameterinput_shapes | Contractstring, string[], nonnegative_integer_token_array, nonnegative_integer_token_array[] |
Parameterencoding_format | Contractfloat |
Parameterdimensions_override | Contractfalse |
Parametermax_input_budget_units | Contract512 |
Parametermultimodal_objects | Contractfalse |
Parametermaterial_types | Contracttext, token_ids |
Lifecycle: synchronous_json
Keep every vector index and dimension.
Multimodal model name does not admit image objects on this exact path.
Pricing
Tariff references do not add request options. Supported parameters are listed for the selected method.
- Fast mode
- Not specified When fast mode is selected
- Flex mode
- Not specified When flex mode is selected
- Maximum reasoning effort
- Not specified When maximum reasoning effort uses the default adjustment
Ailoot rates
Prices by configuration
| Configuration | Rate schedule | Charge |
|---|---|---|
| ConfigurationBase token rates | Rate scheduleBase rate | Charge Input · Input tokens $0.00002 / 1K tokens Output · Output tokens $0 / 1K tokens Input · Cache read — / 1K tokens Input · Cache write — / 1K tokens Input · Cache write, 1 hour — / 1K tokens |
Ailoot reserves an estimated amount before a request. After the result, it settles the final charge from measured usage. Streaming settlement uses the final usage record. How reservation and settlement work →
Example requests
Ailoot Ultra · Embeddings
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "intfloat/e5-large-v2", "input": ["First document", "Second document"]}')
Path("request.json").write_text(json.dumps(p,ensure_ascii=False))
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/embeddings \
-H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
--data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
r=json.loads(Path("result.json").read_text())
for x in r.get("data",[]): print(json.dumps({"index":x.get("index"),"embedding":x.get("embedding")}))
PY_RESULT
from openai import OpenAI
import os
client=OpenAI(base_url="https://api.ailoot.ai/v1",api_key=os.environ["AILOOT_API_KEY"],max_retries=0)
result=client.embeddings.create(model='intfloat/e5-large-v2',input=["First document","Second document"])
print(result)
for item in result.data:print(item.index,item.embedding)
Receive and save results
Ailoot Ultra · Embeddings
json
Keep all completed results
Keep every complete returned response, file and content part.
Keep every vector with its index. Vector count must equal input count; dimensions must be consistent.
If the original response needs checking
No embedding job endpoint is introduced.
Response fields
| Field | Type |
|---|---|
Fieldobject | Typestring |
Fieldmodel | Typestring |
Fielddata[].index | Typeinteger |
Fielddata[].embedding | Typefinite float[] |
Fieldusage | Typeobject |
Errors and next steps
| Response | Condition | Next step |
|---|---|---|
Response400 · invalid_request_error | ConditionInvalid required fields, material representation or parameter value | Next stepCorrect the indicated fields before a new creation request. |
Aliases
Model aliases
Ailoot Ultra intfloat/e5-large-v2
Method path aliases
Use the method paths shown above.
Related caller IDs
FAQ · Intfloat: E5-Large-v2
- What inputs and results are available?
POST /v1/embeddings·intfloat/e5-large-v2:text,token_ids→embedding- Which fields does the request use?
POST /v1/embeddings·intfloat/e5-large-v2:model,input,encoding_format,provider- What limits apply?
POST /v1/embeddings·intfloat/e5-large-v2:input.budget.maximum:512(UTF8 bytes);input.min_items:1