You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
fromopenaiimportAzureOpenAIclient=AzureOpenAI(
azure_endpoint="https://myendpoint.openai.azure.com/",
api_key="your-api-key",
api_version="2024-02-01"
)
response=client.embeddings.create(
input=["text to embed"],
model="text-embedding-ada-002"
)
embedding=response.data[0].embedding# list of 1536 floats
Important Defaults
pgvector Dimension Limits
pgvector Version
Max Dimensions
0.5.x
2,000
0.7.0+
16,000
Azure OpenAI Embedding Models
Model
Default Dimensions
Notes
text-embedding-ada-002
1,536
Fixed dimensions
text-embedding-3-small
1,536
Supports dimensions parameter
text-embedding-3-large
3,072
Supports dimensions parameter (can reduce)
Vector Storage
Formula
Example (1536 dims)
4 x dimensions + 8 bytes per vector
4 x 1536 + 8 = 6,152 bytes (~6 KB)
Index Defaults
Setting
Default
IVFFlat lists
Must be specified (guideline: rows / 1000 for < 1M rows, sqrt(rows) for > 1M)
HNSW m
16
HNSW ef_construction
64
HNSW ef_search (query-time)
40
IVFFlat probes (query-time)
1
Common Exam Gotchas
Extension Setup Gotchas
Must allowlist pgvector in azure.extensions BEFORE running CREATE EXTENSION. Without the server parameter, the extension install fails.
Vector literal format uses square brackets:'[0.1, 0.2, 0.3]' — not curly braces or parentheses.
register_vector(conn) must be called per connection to use Python lists or numpy arrays as vector parameters.
Distance and Similarity Gotchas
Cosine distance <=> returns distance (0 = identical), not similarity (1 = identical). To get similarity: 1 - (embedding <=> query_vec).
Negative inner product <#> is negated so that ORDER BY ASC returns highest similarity first.
Azure OpenAI embeddings are already L2-normalized — cosine distance and inner product give the same ranking.
Dimension and Model Gotchas
pgvector 0.5 supports max 2,000 dimensions; 0.7+ supports max 16,000 dimensions. Know which version is deployed.
text-embedding-3-large outputs 3,072 dimensions by default but supports the dimensions parameter to reduce output size.
Indexing Gotchas
IVFFlat requires data before building the index; HNSW can be built on an empty table. If you create an IVFFlat index on an empty table, queries will return no results.
Increasing IVFFlat probes improves recall but slows queries. Default is 1 — typically too low for production.