Multi-Tenant Chatbot Serve Pools with Pre-Created Deployments

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional chatbot systems face significant delays in creating new containers for serving user queries, leading to query failures due to timeouts, which negatively impact user experience.

Innovation Solution

A multi-tenant serve pool system is implemented, where a pool of deployments with both serving and model-manager containers is maintained, allowing for rapid selection and loading of machine-learning models to serve queries, reducing query time to a few seconds.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a new container is created to host the machine-learning model for a chatbot query, then the system can serve the query, but the query is likely to fail due to timeout because container creation takes tens of seconds

Engineering Contradiction:
Improvequery success rateVSAvoidcontainer creation time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system pre-creates and maintains a pool of serving containers that are ready to host machine-learning models before queries arrive. When a query is received, the system can immediately assign an existing container from the pool to the query, eliminating the need to create a new container at query time and avoiding timeout failures.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system merges multiple chatbot models into shared serving containers through a multi-tenant architecture. A single container can host multiple machine-learning models, allowing the system to serve multiple chatbots with a limited pool of containers, thereby reducing the frequency of container creation while maintaining service availability.

Inventive Principle:
Principle #5Merging (Combining)

2Reliability

If multiple chatbots are served with dedicated containers, then each chatbot has isolated resources, but the system requires many containers which increases complexity and resource consumption

Engineering Contradiction:
Improvechatbot service availabilityVSAvoidnumber of containers
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system implements multi-tenant serving containers that can host multiple machine-learning models simultaneously. Each serving container is designed to be universal and can accommodate different chatbot models, allowing a single container to serve multiple chatbots and reducing the total number of containers needed in the system.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The system segments chatbot models into separate model artifacts that can be independently loaded and unloaded from serving containers. This segmentation allows flexible allocation of models to containers based on demand, enabling the system to maintain service availability with fewer physical containers by dynamically assigning model segments to available container resources.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS12406203B2Fast and scalable multi-tenant serve pool for chatbots
Publication Date: 2025.09.02 ORACLE INT CORP
  • US12406203B2 patent drawing
  • US12406203B2 patent drawing
  • US12406203B2 patent drawing

AI summary

Techniques are disclosed for providing a scalable multi-tenant serve pool for chatbot systems. A query serving system (QSS) receives a request to serve a query for a new skillbot. The QSS comprises a plurality of deployments, each of which is configured to host a plurality of machine-learning models, each machine-learning model being associated with a skillbot, each deployment including a serving container and a model manager container that hosts a model manager, the serving container including a plurality of sub-containers, each of which hosts one of the machine-learning models downloaded by the model manager. The QSS selects a first deployment to be assigned to the new skillbot based on a first criterion, and loads the machine-learning model associated with the new skillbot into the first deployment. The machine-learning model is trained to serve the query for the new skillbot. The query is served using the machine-learning model.