Trending: On-device modelsSearch
iHeartGeek
iTECH

Amazon S3 Vectors now filters before it searches

AWS has added metadata pre-filtering to Amazon S3 Vectors, evaluating a filter before the similarity search and claiming up to five times more matching vectors on narrow queries.

An AWS graphic carrying the Amazon S3 Vectors name, showing an image frame beside a column of similarity distance values

Amazon S3 Vectors will now evaluate a metadata filter before it runs the similarity search, a change AWS says returns up to five times more of the matching vectors on highly selective queries.

Why the order of operations mattered

Most applications never search a whole index. They search the slice that belongs to one customer, tenant, category or time window, and express that scope as a metadata filter. On an index running in what AWS calls CLASSIC mode, candidate vectors are validated against the filter as the search proceeds, so a narrow filter can leave a result set short of the vectors that genuinely match it. Semantic search, retrieval-augmented generation and agentic applications all inherit that shortfall.

What changes on an ENHANCED index

Indexes now carry a mode. Set to ENHANCED, S3 Vectors resolves the filter first and then searches only the vectors that satisfy it. AWS illustrates the difference with a support knowledge base of eight million tickets where an agent searches one customer's history for a recurring error: if that customer owns 400 of those tickets, resolving the customer ID first means the similarity search runs across all 400 instead of drawing candidates from the full eight million.

Each vector can carry up to 2 KB of filterable metadata and a single query supports up to 100 filter constraints. A new $startsWith operator adds prefix matching, which is aimed at scoping searches by path, URL or hierarchical key, such as a matter number or a folder tree.

Existing indexes stay in CLASSIC mode until they are updated, but the change lands in place: no re-ingestion, no rewrite of application queries and no extra charge. Indexes created in vector buckets created on or after 30 September use ENHANCED by default, and the mode can be set per index or as the default for a bucket. The capability is available in every commercial region where S3 Vectors runs, along with the AWS China Regions.

Our opinion

AWS is selling recall here, but the number to hold on to is the 100-constraint ceiling. Pre-filtering is most valuable exactly where filters get long and awkward, which is also where a single query can cross that limit, and the documented workaround is to consolidate the filter or split the query and merge by distance in the caller. That is an application-level engineering task dressed up as a database setting.

The more interesting shift is the assumption underneath it: that the querying client is often an agent, not a person, and that an agent will not tolerate a result set that quietly omits the customer it was asked about. Recall stops being a quality metric and becomes a correctness one, which is a reasonable reason to reorder two operations.