Problem statement: How can we reduce call volumes to OCBC hotlines?
Problem agitator: Long wait time results in frustrated clients.
The goal of ScaleReach is to reduce wait times at hotlines to virtually zero, reducing the number of callers that require assistance from a human provider.
Featuring Jane, our first call bot agent packed with many functionality, mimicing a real customer support officer at OCBC's hotline.
Jane was created for the sole purpose - reduce call volumes at OCBC's hotlines.
Powered by an intent service, knowledge database, authentication service, and LLM model, Jane can mimic the function of a real customer support officer to a great extent.
With Jane, ScaleReach hopes to resolve mundane enquiries and help provide faster, more efficient support to clients in need.
In the event Jane faces challenges communicating with the caller, it will escalate the call to a human provider.
For queries that require more time to be resolved (i.e. reach out to relevant departments), Jane can capture the details of the intent, authenticate the user via a separate service, and finally file the intent to be completed by a staff.
A staff can work to resolve the intents (e.g. submission of tracer to check remittance status) without having to contact the caller. This reduces the stall time arised from awaiting responses from the client. All in all, increasing efficiency.
Dashboard for staff connected to the intent service via secured web sockets, allowing for real-time updates of intents (if there was ever a need).
To ensure the repsonses and help provided by Jane is accurate, RAG is implemented with a custom vector database to query for the top three most relevant answers.
This will help ensure the LLM only provide responses that has been verified (within the knowledge database) and not provide hallucinated responses.
Therefore, the power of Jane is only limited by the size of this knowledge database. Gradually, with a big knowledge database, mundane and common enquiries can be resolved by Jane amicably.
View the SQL script to setup the PostgreSQL database: gist.github.com.
Utilising LLM provided by third-party providers such as OpenAI may be the most feasible option when on-premise infrastructure lacks the capability.
Therefore, Jane will authenticate the caller through a separated, indepedent service. It will redact all personal identifiers and details (bank account numbers, user id etc) before passing it into the LLM to generate a response.
The authentication service works in a structured manner, making the redaction possible.
Jane is deployed as a combination of many services, made easy with Docker containers and compose. Hosted and deployed on AWS infrastructure (EC2, behind a VPC) with Cloudfare DNS (https://scalereach.team).
A docker orchestrator can be brought into play, further amplifying ScaleReach's reach by allowing it to handle multiple calls at once.
View sped up (x1.5) demo here (no audio due to privacy controls on capturing device - no voice call audio can be captured):
An interactive map that features wait times with their respective colour indicators.
This can allow OCBC's clients to make an even more informed decision on their choice of branch when visting, effectively serving as a load balancer that balances the load equally throughout the branches and their operating hours.
