> ## Documentation Index
> Fetch the complete documentation index at: https://www.algolia.com/llms.txt
> Use this file to discover all available pages before exploring further.

# NeuralSearch limits and unsupported features

> Features, configurations, and index sizes that NeuralSearch doesn't support.

NeuralSearch uses different infrastructure than Algolia's keyword search.
Because of this, some features work differently or aren't supported.
Review these limits before you turn on NeuralSearch or use it in production.

## Virtual replicas

NeuralSearch doesn't support [virtual replicas](/doc/guides/managing-results/refine-results/sorting/in-depth/replicas).
You use virtual replicas for relevant sorting.
To use NeuralSearch with sorted results, use a standard replica instead of a virtual replica.

If you want custom ranking criteria to affect vector results, enable `usePositionalSemanticRanking`.
For more information, see [Configure NeuralSearch with the semantic settings endpoint](/doc/guides/ai-relevance/neuralsearch/get-started#configure-neuralsearch-with-the-semantic-settings-endpoint).

## Natural language processing (NLP) features

NLP features apply only to the keyword search part of NeuralSearch.
Semantic (vector) retrieval doesn't use these features:

* **[Synonyms](/doc/guides/managing-results/optimize-search-results/adding-synonyms)** configured in your index expand keyword queries. They don't change how semantic retrieval represents vectors.
* **Decompounding** applies only to keyword matching. Algolia uses it for German and other languages with compound words.
* **Plurals and word forms.** Stemming and plural normalization apply to keyword matching. The semantic model handles word variation through embeddings.
* **Algolia Rules** only affect keyword retrieval.

If you need precise NLP behavior, keyword results in NeuralSearch work the same way as keyword-only search.
Semantic results supplement keyword results rather than replacing them.

## Case sensitivity and query normalization

Semantic (vector) retrieval doesn't normalize queries.
Differences in case, spelling, and special characters can change semantic results or rankings.
For example, `table`, `Table`, and `TABLE` might produce different results.
The same applies to `canapé` and `canape`.

NeuralSearch merges keyword and semantic results. These differences can change the final ranking.
The keyword part of the query still applies your index's normalization settings.
This behavior only affects the semantic part of the results.

## Sort by filter or geographic distance

NeuralSearch supports sort-by replicas for sorting results by a fixed ranking order.
By default, these sorting settings don't apply filter-based ranking or geographic distance to vector results.

To apply geographic distance and filter-based ranking to vector results, enable `usePositionalSemanticRanking`.
For more information, see [Configure NeuralSearch with the semantic settings endpoint](/doc/guides/ai-relevance/neuralsearch/get-started#positional-semantic-ranking).

## Index size limits

NeuralSearch indexes follow the same [size limits](/doc/guides/scaling/algolia-service-limits#application-record-and-index-limits) as other Algolia indexes:

* Maximum index size: 100 GB
* Maximum record size: 100 KB

Indexes that exceed these limits aren't supported by either keyword search or NeuralSearch.

## Other considerations

* **Custom dictionaries.** NeuralSearch doesn't support custom dictionaries for stop words, plurals, or compounds.
* **Log IP forwarding.** NeuralSearch indices don't show user IP addresses from `X-Forwarded-For` in search logs.
