AI-Powered Chatbot Automation with Hybrid NLU and LLM Approach

scotiabank · Finance · 2022 · source Agentic: no · promotional bias: low · 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: Banking chatbot sustainment and handoff summarization

Scotiabank needed to improve and maintain a large intent-based chatbot while reducing manual trainer review effort and helping live agents understand long chatbot conversations quickly.

Constraints:

Architecture

Scotiabank added an AI-for-AI sustainment layer to a controlled NLU chatbot: Luigi, Eva, and Peach review misclassifications and training data, while a separate LLM summarizer condenses chats for live-agent handoff.

Diagram confidence: reconstructed (reconstructed from prose).

flowchart LR
  intent-based-chatbot["Intent-based chatbot"]
  conversation-logs["Conversation logs"]
  luigi-classifier["Luigi classifier"]
  eva-classifier["Eva classifier"]
  peach-similarity-checker["Peach similarity checker"]
  training-phrase-database["Training phrase database"]
  llm-summarizer["LLM summarizer"]
  live-agent-handoff["Live-agent handoff"]
  intent-based-chatbot --> conversation-logs
  conversation-logs --> luigi-classifier
  conversation-logs --> eva-classifier
  conversation-logs --> peach-similarity-checker
  luigi-classifier --> training-phrase-database
  eva-classifier --> training-phrase-database
  peach-similarity-checker --> training-phrase-database
  training-phrase-database --> intent-based-chatbot
  intent-based-chatbot --> live-agent-handoff
  llm-summarizer --> live-agent-handoff
Drag to pan · scroll or use +/− to zoom · reconstructed from the source's described component topology

Components

Component Role Interacts with
Intent-based chatbot Existing controlled banking chatbot with hundreds of response types. Conversation logs, Live-agent handoff
Conversation logs Provide utterances and misclassification examples for sustainment. Luigi classifier, Eva classifier, Peach similarity checker
Luigi classifier Binary classifier that flags misclassified chatbot queries. Training phrase database
Eva classifier Suggests better intents for misclassified queries. Training phrase database
Peach similarity checker Scores new training phrases against existing ones to avoid unintended model impact. Training phrase database
Training phrase database Stores curated phrases and intent examples after AI-assisted review. Intent-based chatbot
LLM summarizer Condenses chatbot conversations for live agents while avoiding hallucinated transaction details. Live-agent handoff
Live-agent handoff Gives agents concise context when chatbot sessions escalate. Intent-based chatbot

Data flow

Conversation data feeds classifiers for misclassification, intent suggestion, and training-phrase similarity, then curated phrases improve the chatbot; a separate LLM summary supports live-agent handoff.

3 supporting quotes
“we wanted to use this data not only to improve our internal database of training phrases and intense basically the topics we also wanted to automate our um sustainment cycle”transcript, stated
“Peach gives a similarity score between each training phrase they want to add and the already existing set”transcript, stated
“to achieve a summary like what Andress was just showing you we went through a whole prompt Engineering Process um this includes at the beginning we had the objective definition”transcript, stated

Why this architecture

The design keeps the controlled NLU bot because banking responses need tight control, and LLM summarization needs safeguards against hallucinated transaction details.

“we saw some hallucination at the beginning uh you need to have in mind that when we start with with theorization we're using text bison now we are able to use Gemini”transcript, stated
“when people is talking about a specific transaction of a specific amount we have um parameters that allow us to jump that option of hallucination”transcript, stated

Models used: binary classifier · multiclass classifier · similarity algorithm · text-bison · Gemini

Scale

Alternatives considered (roads not taken)

Replace the banking chatbot with a fully generative bot

Rejected because: Scotiabank used LLMs first for summarization and sustainment around the existing controlled chatbot rather than letting generation own every customer response.

“using llms to actually summarize the their interaction and come with a sure summary that the agent could read really quick and have all the information that he needs”transcript, implied
“our chatbot is able to provide over 700 responses and this is uh including different topics like banking accounts um investment credit cards loans mortgages and the most the main frequently asked questions”transcript, implied

Adding training phrases without impact analysis

Rejected because: Peach scores similarity against existing training phrases to reduce unintended model effects.

“Peach gives a similarity score between each training phrase they want to add and the already existing set”transcript, stated

Manual two-trainer sustainment cycle

Rejected because: Luigi, Eva, and Peach automate parts of the repeated utterance-review and intent-improvement loop.

“usually two AI trainers would go manually reviewing customer utterances and then we would have meetings to discuss the potential areas of improvement”transcript, stated
“Luigi is a binary classifier that identifies queries misclassified by the chatbot and is replacing that first AI trainer or the first human reviewer”transcript, stated

Patterns

data-quality-loop (data)

The sustainment system uses customer query data to identify misclassifications, propose intents, and evaluate training phrase additions.

“we wanted to use this data not only to improve our internal database of training phrases and intense basically the topics we also wanted to automate our um sustainment cycle”transcript, stated

confidence-thresholding (evaluation)

Peach gives similarity scores so trainers can judge whether adding a phrase will improve or harm intent training data.

“Peach gives a similarity score between each training phrase they want to add and the already existing set”transcript, stated

prompt-chaining (orchestration)

The generative AI summarizer went through a deliberate prompt-engineering process before producing handoff summaries.

“to achieve a summary like what Andress was just showing you we went through a whole prompt Engineering Process um this includes at the beginning we had the objective definition”transcript, stated

safety-policy-enforcement (safety)

For specific sensitive fields like transactions and amounts, the team constrained extraction so the LLM could not freely hallucinate those details.

“when people is talking about a specific transaction of a specific amount we have um parameters that allow us to jump that option of hallucination”transcript, stated

Tradeoffs

How to automate chatbot conversations in banking.

Chose intent-based chatbot plus targeted ML/LLM support over fully open-ended LLM chatbot.

Rationale: The system keeps the customer-facing bot controlled while using ML and LLMs for sustainment and handoff summarization.

“our chatbot is able to provide over 700 responses and this is uh including different topics like banking accounts um investment credit cards loans mortgages and the most the main frequently asked questions”transcript, implied

Where to use generative AI first.

Chose conversation summarization for live-agent handoff over generating customer-facing banking answers directly.

Rationale: Summaries help agents work faster while keeping final customer handling with a human advisor.

“using llms to actually summarize the their interaction and come with a sure summary that the agent could read really quick and have all the information that he needs”transcript, stated

Gotchas (what bit them)

Chatbot quality maintenance required repeated human review.

Root cause: Customer queries continually reveal coverage and accuracy gaps in intent classification.

Resolution: Use Luigi, Eva, and Peach to automate parts of the query review and training-data improvement cycle.

“usually two AI trainers would go manually reviewing customer utterances and then we would have meetings to discuss the potential areas of improvement”transcript, stated

Adding training phrases can have unintended effects.

Root cause: New phrases alter the intent training set and can shift classification behavior.

Resolution: Use a similarity algorithm to preview how a phrase relates to existing examples before adding it.

“one of the biggest challenges when training and machine learning model and all the data scientists in the room can attest to that is to know the impact of your training data on the results”transcript, stated

LLM summarization can hallucinate banking transaction details.

Root cause: Generative summaries may invent or alter specific values if those values are left unconstrained.

Resolution: Use parameters to extract and protect specific fields such as transaction and amount information.

“we saw some hallucination at the beginning uh you need to have in mind that when we start with with theorization we're using text bison now we are able to use Gemini”transcript, stated

Evaluation

Scotiabank evaluated the sustainment models through their ongoing chatbot training cycle and measured the summarizer by reduction in conversation length and live-agent handle-time impact.

Metrics: over 700 chatbot response types · almost 1,000 hours saved annually · conversation summaries reduce conversation length by 80% · reduced average handle time

“altogether these models were able to save almost a, hours on an annual basis for us”transcript, stated
“this summary actually is able to reduce 80% the conversation so it saves um a lot of time actually it reduce the average handle Time by lot”transcript, stated

Outcomes

The transcript is an auto-captioned conference talk; exact wording is noisy, but the architecture and measures are clear across summary and transcript.

“Luigi is a binary classifier that identifies queries misclassified by the chatbot and is replacing that first AI trainer or the first human reviewer”transcript, stated
“Additionally, they implemented an LLM-powered summarization feature using Google's text-bison (later Gemini) that condenses chatbot-to-customer conversations by 80% before handoff to live agents”summary, stated