The Grab search bar is meant to provide a friendly, easy-to-use start point for users on the Grab app.
To be useful, the search bar has to seemingly read the user’s mind as it offers the closest match to their search terms with related suggestions. And it has to be fast too, or people will get impatient and leave the app.
Doing this for Southeast Asia means our artificial intelligence (AI) engines have to work with local languages and understand the nuances.
For instance, “clinic” in Malaysia is used interchangeably with its Malay spelling, “klinik”. Someone craving some McDonald’s might type “mekdi” into the search bar—a colloquial Malaysian term that a search engine trained on generic data sets might not recognise.
Capturing these local nuances means extending our platform to cater to hyperlocal variations in language and meaning. To do so, we tap into natural language processing models with our own Southeast Asia-specific data sets.
Local addresses can be tricky. We noticed that users in Thailand often type คอนโด (condo) as a synonym for อพาร์ทเมนท์ (apartment). In Singapore, road names often draw on Malay elements like “bukit”, “jalan”, and “lorong”, and people type these in abbreviations—bt, jln, and lor, respectively.
To make it easier for users typing in a mobile device, Grab’s search engine needs to recognise and rephrase queries into the right search terms before matching them with the user’s intended points of interest (POIs).
We’ve achieved this by developing an inhouse AI-enabled synonym module. Here’s how it works.
Step 1: Figure out what matches what
We know “mekdi” correlates to “McDonalds” as a POI. To find more pairings like this, we trained large language models (LLMs) with a database of user queries matched to real-world POIs.
The model is able to expand and learn as people use the app. So when a user looks through their search results and picks out the correct POI that they had in mind, the model understands that a search for the first term should include the POI in the results. A user searching for “mekdi” will tap on a McDonald’s outlet, strengthening that synonym pairing in our database.
Step 2: Refine these matches
Initially, our teams routinely performed manual vetting to remove mismatched pairs of search terms. Our AI also generates related search terms to help broaden search results, and in the early days, our data science teams helped the engine learn by classifying related terms together.
Today, this process is fully automatic. Our model keeps refining itself by validating searches across the hundreds of thousands of other similar searches by users.
To use the mekdi example, a wrong button tap from a user may initially connect “mekdi” to “MOS Burger”. But thousands of other users tapping “McDonald’s” in the search results teaches the engine that MOS Burger is the wrong synonym, and it weeds that out in future.
Step 3: Adding contextual information
Finally, synonyms must also be understood in context to be useful. While “bt” is a common short form for “bukit” in Singapore, a user may book a ride to a building called “BT Care Centre.” So our search engine can’t always reformulate “BT” to “bukit” as a blanket rule.
The model needs to assess the whole phrase, then decide if the related word applies in each case.
It might sound lengthy, but this multi-step verification process happens in mere milliseconds.
Common dictionary spell-checkers notoriously over-correct for names and streets in Southeast Asia, typically frustrating users by forcing them to retype their queries.
To make our module understand what typos to correct and what aren’t mistakes, we turned to the core source of truth—our users. We gathered months of user search logs and matched queries with the POIs that they ended up selecting.
For example, “Pratinum Mall” in Bangkok should show a corrected result for “Platinum Mall”, but also show related results for the Pratunam area, where the mall is located and where users have shown they also want to visit when they use Platinum as a POI.
With this database of matches, we trained our model to detect the most common typos, and got a better correction rate than off-the-shelf solutions.
The search experience is one of the main ways the Grab app communicates with the user, to learn and help them find what they need sooner. We hope it continues to bring smooth journeys for all.
3 Media Close,
Singapore 138498
GrabFood delivery-partner, Thailand
GrabFood delivery-partner, Thailand
COVID-19 has dealt an unprecedented blow to the tourism industry, affecting the livelihoods of millions of workers. One of them was Komsan, an assistant chef in a luxury hotel based in the Srinakarin area.
As the number of tourists at the hotel plunged, he decided to sign up as a GrabFood delivery-partner to earn an alternative income. Soon after, the hotel ceased operations.
Komsan has viewed this change through an optimistic lens, calling it the perfect opportunity for him to embark on a fresh journey after his previous job. Aside from GrabFood deliveries, he now also picks up GrabExpress jobs. It can get tiring, having to shuttle between different locations, but Komsan finds it exciting. And mostly, he’s glad to get his income back on track.