Embeddings are fixed-length lists of numbers that represent the meaning of a piece of text, so similar texts have similar vectors.
An embedding model reads a chunk of text and outputs a vector, for example 384 or 1,536 numbers. Texts with related meaning land close together in that space; unrelated texts land far apart. Distance is usually measured with cosine similarity. Embeddings drive semantic search, clustering and retrieval-augmented generation. They are cheap to compute compared with running a full language model, and they can be produced once and stored for reuse.
Embedding models vary in size and where they run. Small models such as MiniLM run on a laptop CPU with no network call and produce 384-dimension vectors. Larger hosted models from OpenAI, Cohere or Google produce longer vectors and may score higher on benchmarks, but every chunk you embed is sent to that provider. Vectors from different models are not comparable, so changing models means re-embedding everything.