OpenAI text-embedding-ada-002 release

TL;DR

OpenAI released text-embedding-ada-002, a single embedding model that replaces five older models, delivers stronger performance on text search, code search, and sentence similarity, supports 8K context, uses 1536‑dimensional vectors, and costs up to 99.8% less than the previous Davinci‑based embeddings.


Model Improvements

Unified capability – The new model consolidates the five former embedding models (text-similarity, text-search-query, text-search-doc, code-search-text, code-search-code) into one API endpoint, simplifying integration while delivering better results across a broad benchmark suite.

Performance gains – On the BEIR benchmark suite (including ArguAna, ClimateFEVER, DBPedia, FEVER, FiQA2018, HotpotQA, NFCorpus, QuoraRetrieval, SciFact, TRECCOVID, Touche2020), text-embedding-ada-002 scores 53.3, surpassing the next best model text-search-davinci-*-001 (52.8) and all other prior embeddings. It also matches Davinci on text classification and exceeds prior models on code search.

Longer context – Context length increased from 2048 tokens to 8192 tokens, enabling embeddings of much longer documents without truncation.

Smaller vectors – Embeddings are 1536 dimensions, one‑eighth the size of the previous Davinci‑001 embeddings, reducing storage and retrieval costs in vector databases.

Cost reduction – Pricing is 90% lower than older models of comparable size, and the overall cost is 99.8% lower than using Davinci embeddings while delivering equal or better performance.


Limitations

text-embedding-ada-002 does not outperform text-similarity-davinci-001 on the SentEval linear probing classification benchmark. For tasks that rely on training a lightweight linear classifier on top of embeddings, users should compare both models and select the one that yields higher accuracy.

For broader limitations and risk considerations, refer to the Limitations & Risks section of the embeddings documentation.


Usage Example

Embedding a short text with the new model requires only two lines of Python using the OpenAI library:

import openai
response = openai.Embedding.create(
    input="porcine pals say",
    model="text-embedding-ada-002"
)

The response contains a 1536‑dimensional vector representing the input.


Real‑World Applications

  • Kalendar AI uses the new embeddings to match sales pitches to 340 M customer profiles, cutting unwanted targeting by 40–56% compared with its previous approach.
  • Notion plans to replace keyword‑based search with OpenAI embeddings to improve relevance and discoverability within its workspace platform.

Implications for Developers and Businesses

The unification of five models into a single, cheaper, and higher‑performing embedding service lowers engineering overhead and operational costs. Longer context windows and smaller vector sizes make it feasible to embed entire documents and store them efficiently, expanding the range of applications such as semantic search, recommendation, and code retrieval.


References

Sources