---
title: "Query and search"
description: "Use these query and search how-to guides to find the data you want."
url: https://docs.weaviate.io/weaviate/search
---

# Query and search

Use these **query and search** how-to guides to find the data you want.



[Query basics](https://docs.weaviate.io/weaviate/search/basics): Learn fundamental search syntax and how to retrieve specific object properties.

[Query Agent (natural language)](https://docs.weaviate.io/weaviate/search/query-agent): Ask questions in plain English - automatically translates to optimized Weaviate queries.

[Vector similarity search](https://docs.weaviate.io/weaviate/search/similarity): Find objects based on vector embedding similarity using \`nearVector\`, \`nearObject\`, etc.

[Image search](https://docs.weaviate.io/weaviate/search/image): Perform vector similarity searches using images as the query input.

[Multimedia search](https://docs.weaviate.io/weaviate/search/near-media): Search using audio or video files as query inputs with multimedia search.

[Keyword search (BM25F)](https://docs.weaviate.io/weaviate/search/bm25): Execute keyword searches ranked relevance using the BM25F algorithm.

[Hybrid search](https://docs.weaviate.io/weaviate/search/hybrid): Combine keyword (BM25F) and vector similarity search results with fusion algorithms.

[Retrieval Augmented Generation (RAG)](https://docs.weaviate.io/weaviate/search/generative): Use search results to provide context and augment prompts for Large Language Models.

[Boost](https://docs.weaviate.io/weaviate/search/boost): Promote or demote matching results by recency, popularity or a filter, without removing them.

[Reranking](https://docs.weaviate.io/weaviate/search/rerank): Refine and re-order search results using integrated reranker modules.

[Multiple target vectors](https://docs.weaviate.io/weaviate/search/multi-vector): Search several named vectors at once and combine their scores.

[Query profiling](https://docs.weaviate.io/weaviate/search/query-profile): Get per-shard timing breakdowns to find out where a slow query spends its time.

[Aggregation](https://docs.weaviate.io/weaviate/search/aggregate): Perform aggregate operations like count, mean, sum, etc., on search result sets.

[Filters](https://docs.weaviate.io/weaviate/search/filters): Apply conditional filters, such as \`where\` clauses, to narrow down search results.



## Which search type?

| Search type | What it matches | Use it when | Cost |
| - | - | - | - |
| [Vector](https://docs.weaviate.io/weaviate/search/similarity) | Meaning, through vector distance | The wording of the query and the data differ, or the data is not text | One vector search per query |
| [Keyword (BM25)](https://docs.weaviate.io/weaviate/search/bm25) | Exact terms, ranked by BM25F | Names, codes, error strings, or any term that must appear literally | Inverted index lookup |
| [Hybrid](https://docs.weaviate.io/weaviate/search/hybrid) | Both, fused into one ranking | You want one query to handle both cases. A good default for text search | Both of the above, plus fusion |
| [Boost](https://docs.weaviate.io/weaviate/search/boost) | The search above, re-scored | Ranking should also reflect recency, popularity or a category, without dropping anything | In-memory rescoring of the candidates |
| [Rerank](https://docs.weaviate.io/weaviate/search/rerank) | The search above, re-ordered by a model | Precision at the top of the list matters more than latency | One model call per query |

Boost and rerank are second-stage operations: they reorder what the first search retrieved. Neither adds results, so if an object is not in the initial result set, neither can pull it in. Use a [filter](https://docs.weaviate.io/weaviate/search/filters) when a condition must remove objects instead of demoting them.
