
An embedding model is a machine learning model that turns text, images, or audio into a vector: a fixed-length list of numbers where similar meanings land close together. Vector search, RAG, and agent memory all depend on that one step.
TL;DR:
Updated Oct 19, 2026: removed an incorrect claim that AIOZ Agent Memory runs on multilingual-e5-small. The AIOZ Storage docs name no embedding model, so this version describes what they do document.
IBM describes an embedding model as representing objects "as points in continuous vector space where spatial locations carry semantic meaning." The raw input first becomes numbers the model can process: tokens for text, pixel values for images. The model then outputs an embedding, "an array of numbers... where each number indicates where an object is along a specified dimension."
Take "the car wouldn't start" and "the vehicle wouldn't turn on," two sentences that share almost no words. A good model still puts their vectors close together, because it learned to place text by meaning instead of by spelling. That is why you can search a support archive for "login broken" and get back a ticket titled "can't sign in."
Every embedding is a fixed-length list of numbers, and the length of that list is its dimension. IBM notes "the number of dimensions can reach a thousand or more depending on the input data's complexity." Plenty of production models sit lower: the open model multilingual-e5-small outputs 384 dimensions. The AIOZ Storage SDK guides use 1536 in their examples, the output size of OpenAI's text-embedding-3-small.
More dimensions can capture finer differences in meaning, but you pay for them with more storage per vector and more compute per comparison. No single count suits every job, so you pick a model first and let its output size decide the dimension.
Once two pieces of data are both vectors, comparing them is a geometry problem. The closer two embeddings sit, the more similar the model considers them. IBM lists the distance functions as "Euclidean, cosine, or other."
Cosine similarity compares the angle between two vectors instead of the distance between their endpoints. It is the usual choice for text because it ignores differences in vector length that say nothing about meaning. When you create an index on AIOZ Storage you set the metric yourself, and the docs examples use cosine.
Embeddings are learned, and a common training method is contrastive learning. The model sees pairs of text that should match, such as a search query and the passage that answers it, plus pairs that shouldn't. It adjusts its weights until matching pairs land close together and the others land far apart.
That training shapes how you use a model. The model card for multilingual-e5-small asks you to start each input with "query: " or "passage: ", the same split the model learned from. It is a 12-layer model that supports 100 languages, which makes it a common compact pick for multilingual text.
To compare models, the field uses MTEB, the Massive Text Embedding Benchmark. It is a multi-task suite covering retrieval, clustering, classification, and semantic similarity, and models are ranked by their average score. The average can hide weak spots, so if search is your workload, look at the retrieval scores first.
Every embedding model trades speed, size, accuracy, and language coverage, and switching later is expensive. Vectors from two different models aren't comparable, so a model change usually means re-embedding the whole dataset.
Keep one model and one dimension per index, and write down which model produced each collection. The two failures you'll see most are a query embedded with a different model than the stored data, and vectors whose length doesn't match the index dimension. The AIOZ Storage docs state the second rule plainly: "The vector length must match the index dimension."
AIOZ Storage gives you two ways to work with embeddings, and the docs name no embedding model for either one.
Record and questions with Recall. The docs say "You do not create embeddings, vector indexes, or vectors yourself." AIOZ turns the text into embeddings on its side, and the billing page lists a flat fee of 0.00005 USD per Record or Recall call for that step.This is the index step from the docs' Python guide, using boto3's s3vectors client:
client.create_index(
vectorBucketName='YOUR_BUCKET_NAME',
indexName='my-index',
dataType='float32',
dimension=1536,
distanceMetric='cosine'
)Change dimension to your own model's output size, for example 384 if you embed with multilingual-e5-small. The MCP server's limits table caps create_index at 4096 dimensions.
Next step: read the AIOZ Storage Vector Database docs and pick the SDK guide for your language.
What is an embedding model?
A model that converts raw data, such as text, images, or audio, into a vector. The vector places that data as a point in high-dimensional space, where similar meanings end up close together.
What do the "dimensions" of an embedding mean?
It is the length of the vector the model outputs. More dimensions can capture finer relationships, at the cost of more storage and compute per comparison. Common sizes range from a few hundred to a few thousand.
How is similarity between two embeddings measured?
With a distance function, most often cosine similarity for text, which compares the angle between two vectors rather than their raw distance.
How are embedding models trained?
Commonly with contrastive learning: the model sees pairs of text that should be similar and pairs that shouldn't, and adjusts until similar pairs land close together.
How do you compare different embedding models?
With MTEB, the Massive Text Embedding Benchmark. It covers retrieval, clustering, classification, and semantic similarity, and most published embedding models report a score on it.
What embedding model does AIOZ Storage use?
The docs don't name one: on the Vector Database you choose your own model and set the index dimension to match. Super Intelligence Memory creates the embeddings for you, and the docs don't say which model it uses.
Can I mix vectors from two embedding models in one index?
You shouldn't. Vectors from different models aren't comparable, and every vector in an index must have the same dimension as the index.

Create a bucket and upload a file on AIOZ Storage in five steps: sign up, set a passphrase, add credits, and upload. Plus what the passphrase cannot recover.

The AIOZ Storage rate limit is 100 requests per second. See what the docs do and don't say, and how to stay under it with boto3 retries and a limiter.

AIOZ Storage erasure coding splits each object into pieces on DePIN nodes, so it survives node loss. See what it covers, what it doesn't, and what to back up.

Rename a file in an S3 bucket on AIOZ Storage from the dashboard, then move, delete and download files, and see which actions the docs say are not supported.

AIOZ Storage publishes llms.txt, a 46-link docs index, and llms-full.txt, all docs in one 164 KB file. See what each file contains and when to use which.

Vector database vs agent memory on AIOZ Storage: use the vector database for control over embeddings and metadata, Memory for simple Record and Recall calls.