---
title: "Search architecture revamp"
description: "Before 2021, Grab’s Deliveries search architecture used an inverted index for textual matching, leaving it unable to account for user intention, context, or non-textual recall methods. Queries such as “Roti Prata” could prioritize merchant names over dishes, while the same query could imply different objectives by time or location; merging Ads and organic results at the Deliveries API layer also discarded recall-stage data. The revamped flow adds boosting, multi-recall, and ranking, enabling intent recognition, query expansion, embedding-based and graph-based recall, and joint ranking across business verticals. A platform-defined framework assembles service-team plugins through configuration, separating core flow from application logic and allowing components such as Ads and Mart recall to be reused across Food, Mart, and universal search flows. The resulting platform provides intent recognition, semantic search, mixed Ads-and-organic ranking, and simpler onboarding, while making new search modules and use cases easier to add."
---

# Search architecture revamp

[Grab](https://yomu.fyi/company/grab) · Lipeng Zhang · May 17, 2022

**Type:** Problem & solution

## Summary

Before 2021, Grab’s Deliveries search architecture used an inverted index for textual matching, leaving it unable to account for user intention, context, or non-textual recall methods. Queries such as “Roti Prata” could prioritize merchant names over dishes, while the same query could imply different objectives by time or location; merging Ads and organic results at the Deliveries API layer also discarded recall-stage data. The revamped flow adds boosting, multi-recall, and ranking, enabling intent recognition, query expansion, embedding-based and graph-based recall, and joint ranking across business verticals. A platform-defined framework assembles service-team plugins through configuration, separating core flow from application logic and allowing components such as Ads and Mart recall to be reused across Food, Mart, and universal search flows. The resulting platform provides intent recognition, semantic search, mixed Ads-and-organic ranking, and simpler onboarding, while making new search modules and use cases easier to add.

## Context

The legacy system supported only lexical textual matching and used hard-coded weights, so it could miss user intention and context. It also merged results from multiple business verticals at the Deliveries API layer, causing abstraction leaks and loss of recall-stage data, while its unstructured code made new search use cases difficult to build and existing components difficult to reuse.

## Approach / What changed

The revamped architecture extends lexical recall with boosting, multi-recall, and ranking. Boosting supports intent recognition and query expansion, while multi-recall can incorporate methods such as embedding-based and graph-based recall and combine results across business verticals. A platform-defined framework assembles service-team plugins through configuration, separating the main flow from application logic and enabling plugins such as Ads and Mart recall to be reused across search flows.

## Takeaways

- Boosting adds intent recognition and query expansion, while multi-recall creates room for embedding-based and graph-based recall methods.
- Results from different business verticals and recall methods can be grouped and ranked together without losing useful data from the recall stage.
- Configuration-driven plugins separate platform flow from service-team logic, allowing reusable Ads and Mart recall components to support multiple Food, Mart, and universal search flows.

## FAQ

### How does the new architecture account for search intent and context?

The new flow adds a boosting stage that enables intent recognition and query expansion. The source says this helps address cases where the same text query should prioritize different entities or objectives.

### How are Ads and organic results handled in the revamped system?

The new framework ranks Ads together with organic results and considers data from the recall stage. This supports mixed ranking using factors such as text relevance across business verticals.

### Why are plugins useful for adding new search use cases?

Plugins let service teams focus on application logic while the platform maintains the main flow. They are reusable, so a new search flow may be created by assembling existing components through configuration.

**Tags:** [Architecture](https://yomu.fyi/topic/architecture), [Search](https://yomu.fyi/topic/search)

- Source: [Grab](https://engineering.grab.com/search-architecture-revamp)
- Source URL: https://engineering.grab.com/search-architecture-revamp
- Ingested by Yomu: 2026-09-17T14:06:18.087Z

[Read original post](https://engineering.grab.com/search-architecture-revamp)
