fix: linkchecker include filter port mismatch (#2242)

* initial commit; fixed anchor links on internal docs pages

* add back in absolute paths for links in code comments

* fix: update linkchecker include filter to match server port 1314

PR #1629 changed the Hugo server to port 1314 but forgot to update
the --include filter, which still matched port 1313. This caused all
links to be excluded, making the checker a no-op (0 checked, 82277 excluded).

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* Fix url rewrite regex so images are not impacted

* Fix links from non-documentation pages

* Fix broken links

* more broken links

* more broken links

* broken link

* Add srcset width descriptor to .lycheeignore

* Ignore URLs that contain a % character

* Anchor regex so it matches the entire URL

---------

Co-authored-by: kanungle <neil.kanungo@gmail.com>
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-authored-by: Abdon Pijpelink <abdon.pijpelink@qdrant.com>
This commit is contained in:
Andrey Vasnetsov
2026-03-30 17:21:32 +02:00
committed by GitHub
co-authored by Claude Opus 4.6 kanungle Abdon Pijpelink
parent dc0080fffa
commit 1a40961d62
272 changed files with 872 additions and 879 deletions
@@ -409,7 +409,7 @@ else:
## Step 10: Create Payload Indexes
Create a [full‑text index](/documentation/concepts/indexing/#full-text-index) for faster filtering.
Create a [full‑text index](/documentation/manage-data/indexing/#full-text-index) for faster filtering.
```python
# Create a payload index for 'text' so filters use an index, not a scan.
@@ -526,6 +526,6 @@ print("=" * 60)
- [Qdrant Documentation](/documentation/) - Complete technical reference
- [HNSW Paper](https://arxiv.org/abs/1603.09320) - Original algorithm research
- [Qdrant Cloud](https://cloud.qdrant.io/) - Managed vector search service
- [Performance Tuning Guide](/documentation/guides/optimize/) - Advanced optimization techniques
- [Performance Tuning Guide](/documentation/operations/optimize/) - Advanced optimization techniques
**Ready for the pitstop project?** Now it's your turn to optimize performance with your own dataset and use case. You'll apply these same techniques to your domain-specific data and measure the real-world impact of different HNSW parameters and indexing strategies.
@@ -9,7 +9,7 @@ isLesson: true
# Combining Vector Search and Filtering
We've talked about how Qdrant uses the [HNSW](/documentation/concepts/indexing/#filterable-index) graph to efficiently search dense vectors. But in real-world applications, you'll often want to constrain your search using filters. This creates unique challenges for graph traversal that Qdrant solves elegantly.
We've talked about how Qdrant uses the [HNSW](/documentation/manage-data/indexing/#filterable-index) graph to efficiently search dense vectors. But in real-world applications, you'll often want to constrain your search using filters. This creates unique challenges for graph traversal that Qdrant solves elegantly.
<div class="video">
<iframe
@@ -23,7 +23,7 @@ We've talked about how Qdrant uses the [HNSW](/documentation/concepts/indexing/#
## The Challenge: Filters Break Graph Connectivity
Consider retrieving items from an online store collection where you only want to show laptops priced under $1,000. That price information, along with the category 'laptop', isn't part of the vector - it lives in the [payload](/documentation/concepts/payload/).
Consider retrieving items from an online store collection where you only want to show laptops priced under $1,000. That price information, along with the category 'laptop', isn't part of the vector - it lives in the [payload](/documentation/manage-data/payload/).
![To help shoppers easily find products on your website, you need to have a user-friendly search engine](/courses/day2/vector-search-ecommerce.png)
@@ -170,7 +170,7 @@ results = client.query_points(
)
```
See more in [the docs](/documentation/concepts/filtering/).
See more in [the docs](/documentation/search/filtering/).
### Query Planner Decision Matrix
@@ -119,7 +119,7 @@ accurate_search = SearchParams(hnsw_ef=256) # Higher recall, slower
### Memory & Indexing Behavior
Some vectors can remain unindexed depending on [optimizer](/documentation/concepts/optimizer.md) settings e.g. when the unindexed part stays below the `indexing_threshold` (kB).
Some vectors can remain unindexed depending on [optimizer](/documentation/operations/optimizer/) settings e.g. when the unindexed part stays below the `indexing_threshold` (kB).
Small collections or low-dimensional vectors may not trigger HNSW indexing at all. In such cases, full-scan search (brute force) is used instead until indexing becomes beneficial
@@ -270,12 +270,12 @@ performance = benchmark_search_performance(collection_name, test_queries, ef_val
### Inspecting Performance and Index Use
Use [`get_collection`](/api-reference/collections/get-collection) to inspect your collection. It returns current statistics and configuration of the collection like `points_count`, `indexed_vectors_count` or `hnsw_config`. It also lists `payload_schema` for payload indexes you created.
Use [`get_collection`](https://api.qdrant.tech/api-reference/collections/get-collection) to inspect your collection. It returns current statistics and configuration of the collection like `points_count`, `indexed_vectors_count` or `hnsw_config`. It also lists `payload_schema` for payload indexes you created.
To see whether your data is actually indexed, you need to check two things: the number of indexed vectors and the collection's status. If `indexed_vectors_count` is low, indexing may not have completed. More importantly, you should check the collection `status`. A `YELLOW` status means optimization (indexing) is still in progress, while a `GREEN` status confirms it is complete and ready for optimal performance.
If queries feel slow check:
- whether filter fields have [payload indexes](/documentation/concepts/indexing/#payload-index).
- whether filter fields have [payload indexes](/documentation/manage-data/indexing/#payload-index).
- if the payload indexes have been set before building the HNSW graph (HNSW graph building begins when you switch from `m = 0` to `m > 0`)
- if `hnsw_config.full_scan_threshold` is too high.
@@ -336,6 +336,6 @@ For very tight RAM budgets consider these solutions:
Now you understand how HNSW makes vector search fast and scalable. Next we'll combine fast search with complex filters using Qdrant’s filter‑aware HNSW.
Learn more: [HNSW in Qdrant Documentation](/documentation/concepts/indexing/#vector-index)
Learn more: [HNSW in Qdrant Documentation](/documentation/manage-data/indexing/#vector-index)
Ready to see how HNSW handles real-world filtering scenarios? Let's continue!