AI-Powered Natural Language Flight Search Implementation

alaska_airlines · Tech · 2024 · source Agentic: no · promotional bias: med · source-backed · extracted with prompt 0.5.4 (schema v2)

Generated from extraction.json — do not edit by hand. Every claim cites verbatim source evidence; stated means the quote directly asserts the claim, implied means it supports it indirectly.

Problem

Domain: Consumer travel search and flight booking

Alaska Airlines wanted to help travelers who do not already know an exact destination search for trips in natural language, while grounding recommendations in real flight availability, customer context, destination visuals, and prices.

Constraints:

Architecture

Alaska Airlines built a natural-language destination search powered by Gemini. A traveler enters a trip spark such as a cabin getaway or cultural destination. Gemini interprets the natural-language intent and combines world knowledge with Alaska Airlines data and customer context. Function calling invokes Alaska's flight API so each recommendation is grounded in ticket availability and price. The UI presents destination recommendations, booking links, generated destination copy, images, and Google Maps aerial/visual integrations. The implementation was accelerated by Alaska's modernized cloud-native microservice platform and existing Google data partnerships.

Diagram confidence: reconstructed (reconstructed from prose).

flowchart LR
  destination-search-ui["destination-search-ui"] --> gemini-intent-layer["gemini-intent-layer"]
  gemini-intent-layer --> alaska-customer-context["alaska-customer-context"]
  gemini-intent-layer --> flight-api-function["flight-api-function"]
  flight-api-function --> booking-link["booking-link"]
  booking-link --> destination-search-ui
  destination-search-ui --> google-maps-visuals["google-maps-visuals"]
  gemini-intent-layer --> generated-copy["generated-copy"]
  generated-copy --> destination-search-ui
  cloud-native-platform["cloud-native-platform"] --> destination-search-ui
  cloud-native-platform --> flight-api-function
  cloud-native-platform --> alaska-customer-context
Drag to pan · scroll or use +/− to zoom · reconstructed from the source's described component topology

Components

Component Role Interacts with
destination-search-ui Customer-facing immersive interface where travelers enter trip sparks and view recommendations. gemini-intent-layer, google-maps-visuals
gemini-intent-layer Understands natural-language travel intent and generates destination recommendations and copy. destination-search-ui, alaska-customer-context, flight-api-function, generated-copy
alaska-customer-context Alaska-specific flight, customer, and platform data used to ground recommendations. gemini-intent-layer
flight-api-function Function-calling target that checks available tickets and prices for recommended destinations. gemini-intent-layer, booking-link
booking-link Direct purchasable ticket link produced only when availability and price are confirmed. flight-api-function, destination-search-ui
google-maps-visuals Maps and aerial destination imagery that make the search experience immersive. destination-search-ui
generated-copy Personalized and multilingual destination copy dynamically produced by Gemini. gemini-intent-layer, destination-search-ui
cloud-native-platform Modernized microservice/cloud foundation that enabled fast integration and productionization. destination-search-ui, flight-api-function, alaska-customer-context

Data flow

A guest enters a natural-language travel spark. Gemini interprets the intent, coordinates world knowledge with Alaska-specific and customer data, then uses function calling to call the flights API. The API confirms ticket availability and returns prices. The destination-search UI displays recommendations, ticket links, map imagery, destination photos, and dynamically generated copy, including multilingual output where Gemini supports the language.

4 supporting quotes
“it uses Gemini to understand what that spark is as entered by natural language”transcript, stated
“natural language destination search then coordinates the worldly knowledge of Gemini the specific knowledge of Alaska Airlines and most importantly information we know about our guests”transcript, stated
“every time we make a recommendation we first call our flights API we ensure that there is an available ticket to that destination we get the price at the same time”transcript, stated
“the natural language understanding and content generation is dynamically generated by Gemini”transcript, stated

Why this architecture

The system combines Gemini with function calling because travel inspiration alone is not enough: each recommendation needs factual availability and price. Alaska chose an immersive destination-search UI over a chatbot after guest feedback, matching the exploratory nature of trip planning. Google Maps and generated copy make destinations tangible, while the cloud-native microservice platform and existing Google partnership made rapid production-quality integration possible.

3 supporting quotes
“we actually started with a chatbat we said our guest would like chat B and then they told us no we need an immersive experience”transcript, stated
“Gemini helped Drive understanding helped generate recommendations based on worldly knowledge integrated with Alaska data and customer data grounding itself in fun uh factuality with function calling”transcript, stated
“we modernized our entire Tech stock going from monolith to microsurface clouds native solutions”transcript, stated

Models used: Gemini · Google Maps AI-enhanced imagery

Scale

Alternatives considered (roads not taken)

Traditional known-destination search only

Rejected because: The team wanted to support travelers at the spark stage who can describe a trip without knowing the destination.

“for destinations or for guests where they know exactly what their destinations are maybe even what ticket they want to buy Alaska Airlines has nailed this experience but we wanted to expand that”transcript, stated

Chatbot-style experience

Rejected because: Guest feedback pushed the team toward an immersive destination-search experience.

“we actually started with a chatbat we said our guest would like chat B and then they told us no we need an immersive experience”transcript, stated

Ungrounded destination recommendations

Rejected because: Every recommendation first checks the flights API for available tickets and price.

“every time we make a recommendation we first call our flights API we ensure that there is an available ticket to that destination we get the price at the same time”transcript, stated

Patterns

tool-use-orchestration (orchestration)

Gemini recommendations are grounded by function calling into Alaska's flight API for availability and price.

“we use a feature within Gemini called function calling where every time we make a recommendation we first call our flights API”transcript, stated

rag-retrieval (retrieval)

The experience grounds Gemini's world knowledge with Alaska-specific data and customer information.

“natural language destination search then coordinates the worldly knowledge of Gemini the specific knowledge of Alaska Airlines and most importantly information we know about our guests”transcript, stated

structured-output-contract (integration)

Flight recommendations are coupled to concrete ticket links, availability, and prices rather than free-form destination text only.

“what you see here is not just the recommendation but a link to the ticket this price is available you can buy that ticket today right now”transcript, stated

eval-driven-development (evaluation)

The team iterated prototypes around guest feedback and changed from chatbot to immersive destination search.

“we started many different prototypes and like we said always Center it around our guest you get their feedback and radically change those prototypes based on those feedbacks”transcript, stated

Tradeoffs

Build an immersive search experience.

Chose natural-language destination search with maps and visual context over a chatbot.

Rationale: Guest feedback showed a richer exploration interface was a better fit for travel planning.

“they told us no we need an immersive experience and that's how we ended up the natural language destination search”transcript, stated

Ground recommendations with flight APIs.

Chose Gemini function calling into Alaska APIs over LLM-only destination suggestions.

Rationale: The product needed factual availability, price, and purchasable ticket links.

“Gemini helped Drive understanding helped generate recommendations based on worldly knowledge integrated with Alaska data and customer data grounding itself in fun uh factuality with function calling”transcript, stated

Use cloud-native modernization as the integration foundation.

Chose microservices and cloud-native platform over monolithic legacy integration.

Rationale: The modernized stack let Alaska integrate new AI capabilities quickly.

“we modernized our entire Tech stock going from monolith to microsurface clouds native solutions that put us in a good place where we can tap into any new technology”transcript, stated

Gotchas (what bit them)

Guest trust limits how aggressively to expose customer-facing GenAI.

Root cause: Alaska has a trusted customer relationship and cannot risk a poor or misleading AI booking experience.

Resolution: Start carefully, use factual grounding through function calling, and preserve guest choice.

“we have a lot of trust with our guests and we don't want to break that”transcript, stated
“always having that choice for our guests”transcript, stated

A chatbot was the wrong product shape for travel inspiration.

Root cause: Guests wanted an immersive exploration experience, not just a conversational box.

Resolution: Build natural-language destination search with maps, imagery, generated copy, and booking links.

“we actually started with a chatbat we said our guest would like chat B and then they told us no we need an immersive experience”transcript, stated

Recommendations without availability would be misleading.

Root cause: Travel search must connect inspiration to bookable inventory and price.

Resolution: Use function calling to the flights API before displaying a purchasable recommendation.

“we first call our flights API we ensure that there is an available ticket to that destination we get the price at the same time”transcript, stated

Evaluation

Alaska used an eight-step GenAI process, multiple prototypes, and guest feedback to select and reshape the product experience. The team evaluated whether recommendations were grounded by available tickets and prices.

Metrics: guest feedback on prototypes · availability check through flight API · price returned with recommendation · time from inception to production-level quality

3 supporting quotes
“we have created an eight-step process from all the way from selecting our ideas for which ones to go after all the way to getting them productionize”transcript, stated
“we started many different prototypes and like we said always Center it around our guest you get their feedback”transcript, implied
“we first call our flights API we ensure that there is an available ticket to that destination we get the price at the same time”transcript, implied

Outcomes

Alaska serves about 45 million guests yearly, flies to 120 plus destinations directly, and reaches more than 1,000 destinations through partners.

3 supporting quotes
“we went from inception to that production level quality in matter of weeks”transcript, stated
“this web AG also understands and generates dynamically in any language that Gemini supports”transcript, stated
“we serve about 45 million customers and guests every year”transcript, stated