Skip to main content

Which search is right for me?

Unit overview

Weaviate offers three distinct search methods - namely vector, keyword, and hybrid searches.

Each method has its unique strengths and applicabilities, making the selection critical to the success of your search-related tasks.

This section compares these search types to equip you with the knowledge to intuit when and why to employ each of these search methodologies.

We will explore how the choice of search type impacts not only the quality of the search results but also the overall performance of the search operation.

Then, we will also discuss strategies to improve the quality of search results, as well as the performance of the search operation.

Prerequisites

  • A Python (3) environment with weaviate-client installed.
  • Familiarity with Weaviate's search capabilities.
  • Intermediate coding proficiency (e.g. Python).
  • (Recommended) Complete Queries 1 & Queries 2.

Learning objectives

  What are these?
  Each unit includes a set of Learning Goals and Learning Outcomes which form the unit's guiding principles.
  • Learning Goals describe the unit's key topics and ideas.
  • Learning Outcomes on the other hand describe tangible skills that the learner should be able to demonstrate

  Here, we will cover:

Learning Goals
  • Impact of search type on search quality.
  • Impact of search type on search performance.
  • How the dataset and chunking affect search
  • Key considerations for selecting a search type.
  • Strategies to apply to improve search quality.

  By the time you are finished, you will be able to:

Learning Outcomes
  • Broadly recite pros and cons of each search type (vector, keyword and hybrid).
  • Suggest a suitable search type given a description of the dataset and aim.
  • Suggest alternative or additional search strategies to improve search quality.
  • Outline broad methods to evaluate search quality.

Questions and feedback

If you have any questions or feedback, please let us know on our forum. For example, you can: