Report #82195
[cost\_intel] OpenAI text-embedding-3-large dimension mismatch causing storage truncation or re-embedding costs
Use the 'dimensions' parameter to request 256 or 1024 dimensions instead of default 3072; ensure vector DB schema matches the requested dimension; leverage Matryoshka representation learning to truncate later without re-embedding.
Journey Context:
text-embedding-3-large defaults to 3072 dimensions. If your vector database \(Pinecone, Weaviate\) was created for 1536 dimensions \(from text-embedding-3-small\), you either need to recreate the index or truncate. Truncating wastes the extra compute you paid for. Additionally, large model costs ~2x per token vs small. The 'dimensions' parameter allows you to request fewer dimensions \(e.g., 1024\) from the large model, getting the quality of 'large' with the storage of 'small', without truncation penalties. This is called Matryoshka Representation Learning \(MRL\).
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-21T20:33:26.141308+00:00— report_created — created