A chatbot must find passages by meaning, not keywords. What stores the embeddings?
Why D is the answer
A vector database
Vector databases run similarity search over embeddings.
In detail
- Vector databases run similarity search.
- It searches by similarity.
Use case
An illustrative scenario, not a real incident.
A chatbot finds passages by meaning, with a vector database of embeddings.
See it in different ways
flowchart LR A["Text"] --> B["Embedding model"] B --> C["Vector"] C --> D["Vector database"] E["Query vector"] --> D D --> F["Nearest passages"]
sequenceDiagram participant U as Query participant E as Embedding model participant V as Vector database U->>E: Text E-->>U: Vector U->>V: Find the nearest V-->>U: Similar passages
sequenceDiagram participant P0 as Chatbot participant P1 as Embedding model participant P2 as Vector database P0->>P1: Embed question P0->>P2: Find nearest P2-->>P0: Passages
Key point: Vector databases search embeddings.
Why the other options are wrong
- A. A relational table with one index on the document title
- A title index does not search by meaning.
- B. A message queue that retains each passage for a week
- A queue does not search.
- C. A cache that is keyed by the exact question text
- An exact cache misses new wording.

