Design Projects Coding Projects Experiments / Arts Writing About Resume / CV ↗

“Bobo” the Customer Service Bot

An LLM assistant for banking that handles complexity while staying compliant — and kind.

Internship project at Bank of China International Holdings (BOCI). BOBO is an AI-powered customer-service bot inside the bank's digital ecosystem. Instead of rigid FAQ answers, the goal was an assistant that understands nuanced financial queries and replies accurately, compliantly and empathetically.

I designed BOBO's knowledge architecture, semantic-understanding logic and workflow automation — a dual-layer solution serving both customers and internal teams.

Timeline
Jul – Sep 2025
Role
Team memberAI / FinTech intern
Company
Bank of China International Holdings Ltd.
Keywords
Prompt EngineeringAI Workflow AutomationLLMDify / MaxKB

In China, banking institutions face dual challenges: delivering personalised customer service while maintaining strict regulatory compliance. BOBO sits at the intersection of these demands, serving both external customers and internal operations teams.

82%
queries automated
15%
escalated to humans
40K
chars per report
Bobo, a white and red service robot in a futuristic lobby

01.Context & Dual Challenges

Original process architecture

Customer query
→
BOBO bot
→
Knowledge base
→
Internal APIs
To-C · Customer serviceThe “last mile” gap. Customers asked long-tail questions (complex, vague, edge-case) beyond FAQ coverage. 15% escalated to human agents.
To-B · Internal workflowsManual review fatigue. Staff spent hours checking mutual-fund reports and contracts (≈40K characters each) for consistency and regulatory compliance.
CustomerWhy is my transfer taking so long?
Bobo, beforeI don’t understand. (no intent detected)
How might we make BOBO handle complexity while maintaining compliance and empathy?Design question

I designed BOBO’s knowledge architecture, semantic-understanding logic and workflow automation: a dual-layer solution serving both customers and internal teams.

02.QA Database Enrichment

Challenge. The FAQ database could not cover long-tail queries; the system lacked the knowledge to handle nuanced financial questions.

01Diagnostic miningPulled 3,000+ escalated chats through the internal API to spot the ones BOBO should have answered.
02Knowledge extractionTurned those cases into clear Q&A entries with prompt engineering and fed them back into the knowledge base.
03Real-time integrationIntegrated internal APIs (accounts, transactions) so answers reflect live data.
−4 pts
chats escalated to humans, from 15% to 11% after enrichment
3,000+
escalated chats analysed

03.Multi-Platform Benchmarking

Challenge. Without clear metrics it was hard to tell which AI workflow platform delivered the best QA accuracy for different query types.

Approach. I built parallel workflows on four platforms with identical test queries to compare QA accuracy, response quality and API integration, then created a validation framework mapping platform strengths to use cases.

DifyMaxKBFit2CloudCubeFlow
Scenario (MaxKB)SampleFully correctPartly correctWrongStrict accuracyUsability
Operational Q&A391914648.7%84%
Policy Q&A386211116%71%
Usability · operational scenarios
84%
Usability · policy scenarios
71%

A 70+ case control test replaced subjective guesswork with a concrete scoring matrix, letting the team pick a target platform on real-world performance data.

04.Intent & Sentiment Recognition

Challenge. When users expressed frustration, correct but neutral answers still felt robotic, and negative sentiment led to higher escalation rates.

Intent classificationQuery type: information, complaint, urgent request.
Sentiment analysisEmotional state: frustrated, anxious, neutral.
Adaptive templatesInject an empathetic acknowledgment before the technical response.
CustomerWhere is my money?? It’s been 3 days and I need it for a house payment NOW!
Bobo, afterI completely understand how stressful this is, especially with a house payment on the line. I’m looking into this immediately for you.

Status: the transfer is currently in the final clearing batch (#992). It typically clears within 2 hours. I will personally monitor this and SMS you the moment it lands.

05.Document Review Automation

Challenge. In the peak reporting months (March and August) the team faces 22,000+ reports averaging 40,000 characters each. Manual verification of data consistency is slow, error-prone and unsustainable.

Node graph of the automated semantic verification pipeline
The automated semantic verification pipeline as built in the workflow tool.
01InputWord documents exported from the XB system.
02LogicMulti-step validation: extract, compare, then verify.
03ModelsLocalised LLMs (Qwen / Llama), so no data leaves the bank.
04ScaleThreadPoolExecutor runs the checks concurrently.
~5 min
per 40k-character report, versus hours manually
>99%
accuracy identifying data discrepancies
100%
data privacy: zero cloud uploads, local execution
Bobo next to a glowing security shield

Running the models locally keeps every report inside the bank’s network. The pipeline flags semantic contradictions between clauses and highlights potential regulatory conflicts for the reviewer, who now checks the exceptions rather than the whole document.