Techniques for utilizing improved session robot in contact center system
By using knowledge distillation technology and machine learning-trained student AI models, the multilingual vocabulary is reduced and grouped based on linguistic similarity, which solves the problems of high memory consumption and slow response of conversational robots, and improves user intent understanding and response speed.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-08-22
- Publication Date
- 2026-03-24
AI Technical Summary
Existing chatbot systems suffer from high memory consumption and slow response speed due to the use of large multilingual vocabularies, making it difficult to effectively understand and respond to user intent.
The size of the multilingual vocabulary is reduced by knowledge distillation, a student AI model is trained using machine learning, irrelevant tokens are removed based on linguistic similarity grouping, and multilingual embedding outputs are generated using natural language processing and embedding values to indicate user intent.
It reduces memory consumption, improves the responsiveness of chatbots and their ability to understand user intent, and enhances the efficiency of contact center systems.
Smart Images

Figure CN121729700A_ABST
Abstract
Description
Cross-referencing of relevant applications and priority claims
[0001] This application claims priority to U.S. Patent Application No. 18 / 459,352, filed August 31, 2023, entitled "Technologies For Leveraging Improved Conversational Bots In A Contact Center". Background Technology
[0002] Chatbots have become a ubiquitous tool for businesses and contact centers to improve customer experience and responsiveness. The development of chatbots has surged due to the rise of deep learning technologies, improved hardware, and artificial intelligence platforms. Some key factors in developing effective chatbots include the feature representation of the input text (e.g., user queries) and the chatbot's response time. Chatbot systems typically utilize large lists of vocabulary to represent input features, enabling the bot to accurately understand the user's intent and generate appropriate responses. Summary of the Invention
[0003] One implementation relates to unique systems, components, and methods for utilizing improved chatbots in contact center systems. Other implementations relate to apparatus, systems, devices, hardware, methods, and combinations thereof for utilizing improved chatbots in contact center systems.
[0004] According to an implementation scheme, a method for utilizing an improved conversational robot in a contact center system may include: a computational system performing knowledge distillation via machine learning to teach a student AI model based on a teacher AI model and reduce the size of an initial multilingual vocabulary, wherein the student AI model includes fewer machine learning embedding layers than the teacher AI model; the computational system removing tokens from the initial multilingual vocabulary based on grouping languages with linguistic similarity to reduce the size of the initial multilingual vocabulary; the computational system parsing user text from a human user into one or more tokens using natural language processing; the computational system identifying token indices associated with the corresponding one or more tokens in the reduced multilingual vocabulary, wherein the reduced multilingual vocabulary was generated by performing knowledge distillation and removing tokens from the initial multilingual vocabulary; the computational system determining embedding values associated with the identified token indices; and the computational system generating a multilingual embedding output for the user text based on the embedding values using machine learning, wherein the multilingual embedding output indicates the intent of the user text.
[0005] In some implementations, performing knowledge distillation through machine learning to teach student AI models based on teacher AI models and reduce the size of the initial multilingual vocabulary may include reducing the memory consumption of the initial multilingual vocabulary.
[0006] In some implementations, removing tokens from the initial multilingual vocabulary based on grouping languages with linguistic similarity to reduce the size of the initial multilingual vocabulary may include reducing the memory consumption of the initial multilingual vocabulary.
[0007] In some implementations, performing knowledge distillation via machine learning to teach a student AI model based on a teacher AI model may include performing machine learning to train the student AI model relative to the teacher AI model's representation of contact center keywords.
[0008] In some implementations, performing knowledge distillation via machine learning to teach a student AI model based on a teacher AI model may include performing machine learning to train the student AI model relative to the teacher AI model's representation of domain-specific keywords.
[0009] In some implementations, removing tokens from an initial multilingual vocabulary based on grouping languages with linguistic similarity may include: identifying one or more languages associated with a locale handled by the contact center system, and removing tokens associated with languages not in the language group associated with the locale handled by the contact center system from the initial multilingual vocabulary.
[0010] In some implementations, generating multilingual embedding output for user text based on embedding values may include generating a fixed-length vector representation of the user text based on the embedding values.
[0011] In some implementations, using machine learning to generate multilingual embedding outputs for user text based on embedding values may include: using a neural network to generate multilingual embedding outputs for user text based on embedding values.
[0012] In some implementations, the method may further include: receiving user text from interactions between a human user and a chatbot of a contact center system by a computing system.
[0013] In some implementations, each token in the initial multilingual vocabulary may be represented by a multidimensional vector of floating-point values.
[0014] According to another embodiment, a computing system for utilizing an improved conversational bot in a contact center system may include at least one processor and at least one memory, the at least one memory including a plurality of instructions stored thereon, the plurality of instructions being executed by the at least one processor to cause the computing system to: perform knowledge distillation via machine learning to teach a student AI model based on a teacher AI model and reduce the size of an initial multilingual vocabulary, wherein the student AI model includes fewer machine learning embedding layers than the teacher AI model; remove tokens from the initial multilingual vocabulary based on grouping languages with linguistic similarity to reduce the size of the initial multilingual vocabulary; parse user text from a human user into one or more tokens using natural language processing; identify token indices in the reduced multilingual vocabulary associated with the corresponding one or more tokens, wherein the reduced multilingual vocabulary was generated by performing knowledge distillation and removing tokens from the initial multilingual vocabulary; determine embedding values associated with the identified token indices; and generate a multilingual embedding output for the user text based on the embedding values using machine learning, wherein the multilingual embedding output indicates the intent of the user text.
[0015] In some implementations, performing knowledge distillation through machine learning to teach student AI models based on teacher AI models and reduce the size of the initial multilingual vocabulary may include reducing the memory consumption of the initial multilingual vocabulary.
[0016] In some implementations, removing tokens from the initial multilingual vocabulary based on grouping languages with linguistic similarity to reduce the size of the initial multilingual vocabulary may include reducing the memory consumption of the initial multilingual vocabulary.
[0017] In some implementations, performing knowledge distillation via machine learning to teach a student AI model based on a teacher AI model may include performing machine learning to train the student AI model relative to the teacher AI model's representation of contact center keywords.
[0018] In some implementations, performing knowledge distillation via machine learning to teach a student AI model based on a teacher AI model may include performing machine learning to train the student AI model relative to the teacher AI model's representation of domain-specific keywords.
[0019] In some implementations, removing tokens from an initial multilingual vocabulary based on grouping languages with linguistic similarity may include: identifying one or more languages associated with a locale handled by the contact center system, and removing tokens associated with languages not in the language group associated with the locale handled by the contact center system from the initial multilingual vocabulary.
[0020] In some implementations, generating multilingual embedding output for user text based on embedding values may include generating a fixed-length vector representation of the user text based on the embedding values.
[0021] In some implementations, using machine learning to generate multilingual embedding outputs for user text based on embedding values may include: using a neural network to generate multilingual embedding outputs for user text based on embedding values.
[0022] In some implementations, these multiple instructions can further enable the computing system to receive user text from interactions between human users and chatbots in the contact center system.
[0023] In some implementations, each token in the initial multilingual vocabulary may be represented by a multidimensional vector of floating-point values.
[0024] This invention is not intended to identify key or essential features of the claimed subject matter, nor is it intended to serve as an aid to limiting the scope of the claimed subject matter. Other embodiments, forms, features, and aspects of this application will become apparent from the description and drawings provided herein. Attached Figure Description
[0025] The concepts described herein are illustrated in the accompanying drawings by way of example and not by way of limitation. For simplicity and clarity, the elements illustrated in the drawings are not necessarily drawn to scale. Where deemed appropriate, reference numerals have been repeated in the drawings to indicate corresponding or similar elements.
[0026] Figure 1 It is a simplified block diagram of at least one implementation of a system for utilizing an improved chatbot in a contact center system;
[0027] Figure 2 It is a simplified block diagram of at least one implementation scheme of a cloud-based system;
[0028] Figure 3 It is a simplified block diagram of at least one implementation of a computing device;
[0029] Figure 4 This is a simplified flowchart of at least one implementation of a method for reducing the size of a multilingual vocabulary and enhancing a multilingual vocabulary;
[0030] Figure 5 It is a simplified flowchart of at least one implementation of a method for utilizing an improved chatbot in a contact center system;
[0031] Figure 6 This is a simplified diagram of at least one implementation of the architecture of a multilingual encoder model; and
[0032] Figure 7 It is a simplified flowchart of at least one implementation of an architecture for training student artificial intelligence models. Detailed Implementation
[0033] While the concepts of this disclosure are susceptible to various modifications and alternatives, specific embodiments have been shown by way of example in the accompanying drawings and will be described in detail herein. However, it should be understood that the concepts of this disclosure are not intended to be limited to the specific forms disclosed, but rather are intended to cover all modifications, equivalents, and alternatives consistent with this disclosure and the appended claims.
[0034] References to "an embodiment," "an embodiment," "an exemplary embodiment," etc., in the specification indicate that the described embodiment may include a particular feature, structure, or characteristic; however, each embodiment may or may not include that particular feature, structure, or characteristic. Furthermore, such phrases do not necessarily refer to the same embodiment. It should also be understood that although references to "preferred" components or features may indicate the desirability of a particular component or feature with respect to an embodiment, this disclosure is not therefore limited to other embodiments in which such component or feature may be omitted. Furthermore, when a particular feature, structure, or characteristic is described in connection with an embodiment, it is considered that implementing such a feature, structure, or characteristic in conjunction with other embodiments is within the knowledge of a person skilled in the art, whether explicitly described or not. Additionally, it should be understood that items included in the list in the form of "at least one of A, B, and C" may mean (A); (B); (C); (A and B); (B and C); (A and C); or (A, B, and C). Similarly, items listed in the form of “at least one of A, B, or C” may mean (A); (B); (C); (A and B); (B and C); (A and C); or (A, B, and C). Furthermore, the use of words and phrases such as “a,” “an,” “at least one,” and / or “at least a portion” in relation to the claims should not be construed as limiting to only one such element unless specifically stated otherwise, and the use of phrases such as “at least a portion” and / or “a portion” should be construed as covering both embodiments comprising only a portion of such element and embodiments comprising the entire such element, unless specifically stated otherwise.
[0035] In some cases, the disclosed embodiments may be implemented in hardware, firmware, software, or a combination thereof. The disclosed embodiments may also be implemented as instructions carried or stored on one or more transient or non-transient machine-readable (e.g., computer-readable) storage media, which may be read and executed by one or more processors. Machine-readable storage media may be embodied as any storage device, mechanism, or other physical structure for storing or transmitting information in a machine-readable form (e.g., volatile or non-volatile memory, media disk, or other media device).
[0036] In the accompanying drawings, certain structural or methodological features may be shown in a particular arrangement and / or sequence. However, it should be understood that such a particular arrangement and / or sequence may not be necessary. Rather, in some embodiments, unless otherwise indicated, such features may be arranged in a different manner and / or order than shown in the illustrative figures. Additionally, the inclusion of a structural or methodological feature in a particular figure does not imply that such a feature is required in all embodiments, and in some embodiments, such a feature may be omitted or may be combined with other features.
[0037] Now for reference Figure 1 In an exemplary implementation, system 100 for utilizing an improved conversational robot in a contact center system includes a cloud-based system 102, a network 104, a contact center system 106, and user equipment 108. Although in Figure 1 The exemplary embodiments shown herein depict only one cloud-based system 102, one network 104, one contact center system 106, and one user equipment 108. However, in other embodiments, system 100 may include multiple cloud-based systems 102, networks 104, contact center systems 106, and / or user equipment 108. For example, in some embodiments, multiple cloud-based systems 102 (e.g., related or unrelated systems) may be used to perform the various functions described herein. Furthermore, in some embodiments, one or more systems described herein may be excluded from system 100, one or more systems described as independent may form part of another system, and / or one or more systems described as forming part of another system may be independent.
[0038] It should be understood that System 100 can reduce the size of the multilingual vocabulary and artificial intelligence model (e.g., through knowledge distillation) and / or otherwise utilize the techniques described herein to improve the performance of conversational bots in contact centers. Contact center system 106 typically serves businesses within a specific regional setting (e.g., Eastern Europe, East Asia, etc.), and therefore, conversational bots supporting that regional setting must be able to understand the language spoken by human users within that regional setting. One approach to ensuring support for all relevant languages may include utilizing, for example, a large open-source multilingual vocabulary that includes many different languages (e.g., over 80 languages) and corresponding words / tokens. However, a disadvantage of using such a large multilingual vocabulary is that it consumes significant memory to store the vocabulary and / or embeddings, and its execution speed may be slower than when using a smaller target vocabulary.
[0039] In exemplary embodiments, instead of using such a large multilingual vocabulary, system 100 may group languages that exhibit linguistic similarity (e.g., grouping Eastern European languages together, East Asian languages together, Germanic languages together, etc.) and remove words or tokens from the multilingual vocabulary that are not associated with languages within the relevant locale (e.g., to improve resource consumption / performance). For example, if contact center system 106 supports Eastern European languages, Japanese, Korean, and Chinese words or tokens are unlikely to be beneficial for natural language understanding because the likelihood of their use is very low, and therefore those languages can be removed from the multilingual vocabulary. It should be understood that in some embodiments, the language groupings may be different, while in other embodiments, their language groupings may overlap with each other (e.g., one group may include all European languages, another group may include Germanic languages, another group may include Romance languages, etc.). Additionally, in some embodiments, the initial multilingual vocabulary may be a general vocabulary, and therefore system 100 may train an artificial intelligence model relative to contact center keywords and / or domain-specific keywords.
[0040] It should be understood that each of the cloud-based system 102, network 104, contact center system 106, and / or user equipment 108 may be embodied as any type of device / system, collection of devices / systems, or parts thereof suitable for performing the functions described herein.
[0041] The cloud-based system 102 may be embodied as any one or more types of devices / systems capable of performing the functions described herein. For example, in exemplary embodiments, the cloud-based system 102 may be configured to train an artificial intelligence model relative to contact center keywords and domain-specific keywords, reduce the size of a multilingual vocabulary and model, and / or otherwise utilize the techniques described herein. More specifically, in some embodiments, the cloud-based system 102 may perform knowledge distillation via machine learning to teach a student artificial intelligence model to reduce the size of a multilingual vocabulary, remove tokens from a multilingual vocabulary based on grouping languages with linguistic similarity to reduce the size of the multilingual vocabulary, and perform natural language understanding on user text received by the cloud-based system 102. For example, the cloud-based system 102 may parse user text into one or more tokens, identify token indices associated with tokens in a reduced multilingual vocabulary, determine embedding values associated with the identified token indices, and use machine learning to generate multilingual embedding outputs for the user text based on the embedding values (e.g., indicating user intent). The cloud-based system 102 may include one or more data repositories or databases configured to store various models, embeddings, classifiers, and / or other data related to the features described herein. Furthermore, the cloud-based system 102 can be configured to perform feature extraction (e.g., using custom embeddings, general embeddings, etc.), confidence classification, ranking, and / or perform other features related to natural language processing.
[0042] Although cloud-based system 102 is described herein in the singular form, it should be understood that in some embodiments, cloud-based system 102 may be embodied as or include multiple servers / systems. Furthermore, although cloud-based system 102 is described herein as a cloud-based system, it should be understood that in other embodiments, system 102 may be embodied as one or more servers / systems located outside of a cloud computing environment. In some embodiments, cloud-based system 102 may be embodied as or similar to the referenced... Figure 2 The cloud-based system described is 200.
[0043] In a cloud-based implementation, the cloud-based system 102 can be embodied as a server-side fuzzy computing solution that, for example, executes multiple instructions on demand, including logic that executes instructions only when prompted by a specific activity / trigger, and consumes no computing resources when not in use. That is, system 102 can be embodied as a virtual computing environment (e.g., a distributed network of devices) residing "on" a computing system, where various virtual functions (e.g., Lambda functions, Azure functions, Google Cloud functions, and / or other suitable virtual functions) can be executed corresponding to the functions of system 102 described herein. For example, when an event occurs (e.g., data is transferred to system 102 for processing), communication with the virtual computing environment can occur (e.g., via a request to the virtual computing environment's API), whereby the API can route the request to the correct virtual function (e.g., specific server-side fuzzy computing resources) based on a set of rules. Therefore, when a user makes a request to send data (e.g., via the appropriate user interface of system 102), the appropriate virtual function can be executed to perform an action before an instance of the virtual function is eliminated.
[0044] Network 104 may be embodied as any one or more types of communication networks capable of facilitating communication between various devices communicatively connected via network 104. Therefore, network 104 may include one or more networks, routers, switches, access points, hubs, computers, and / or other intermediate network devices. For example, network 104 may be embodied as or otherwise include one or more cellular networks, telephone networks, local area networks or wide area networks, publicly available global networks (e.g., the Internet), ad hoc networks, short-range communication links, or combinations thereof. In some embodiments, network 104 may include circuit-switched voice or data networks, packet-switched voice or data networks, and / or any other network capable of carrying voice and / or data. Specifically, in some embodiments, network 104 may include networks based on Internet Protocol (IP) and / or Asynchronous Transfer Mode (ATM). In some embodiments, network 104 may handle voice traffic (e.g., via VoIP networks), web traffic (e.g., traffic such as Hypertext Transfer Protocol (HTTP) and Hypertext Markup Language (HTML) traffic), and / or other network traffic depending on the specific implementation of the systems 100 communicating with each other and / or the devices. In various implementations, network 104 may include analog or digital wired and wireless networks (e.g., IEEE 802.11 networks, Public Switched Telephone Network (PSTN), Integrated Services Digital Network (ISDN), and Digital Subscriber Line (xDSL)), third-generation (3G) mobile telecommunications networks, fourth-generation (4G) mobile telecommunications networks, fifth-generation (5G) mobile telecommunications networks, wired Ethernet networks, private networks (e.g., intranets), radio, television, cable, satellite, and / or any other delivery or tunneling mechanism for carrying data, or any suitable combination of such networks. Network 104 enables connectivity between various devices / systems 102, 106, 108 of system 100. It should be understood that, depending on the source and / or destination devices / systems 102, 106, 108, the various devices / systems 102, 106, 108 may communicate with each other via different networks 104.
[0045] In some implementations, it should be understood that the cloud-based system 102 may be communicatively coupled to, form part of, and / or otherwise used with the contact center system 106. For example, the contact center system 106 may include chatbots (e.g., similar to...). Figure 2 A chatbot 218 is configured to communicate with a user (e.g., via user device 108). Furthermore, in some implementations, user device 108 may communicate directly with cloud-based system 102.
[0046] Contact center system 106 may be embodied as any system capable of providing contact center services (e.g., call center services) and otherwise performing the functions described herein to end users (e.g., contact center clients). Depending on the specific implementation, it should be understood that contact center system 106 may be located at the premises / campus of the organization utilizing contact center system 106, and / or remotely located relative to the organization (e.g., in a cloud-based computing environment). In some implementations, a portion of contact center system 106 may be located at the organization's premises / campus, while other portions of contact center system 106 may be remotely located relative to the organization's premises / campus. Therefore, it should be understood that contact center system 106 may be deployed in equipment dedicated to the organization or its third-party service providers, and / or deployed in a remote computing environment, such as, for example, a private or public cloud environment with infrastructure for supporting multiple contact centers for multiple enterprises. In some implementations, contact center system 106 includes resources (e.g., personnel, computers, and telecommunications equipment) to enable the delivery of services via telephone and / or other communication mechanisms. Depending on the specific type of contact center, such services may include, for example, technical support, help desk support, emergency response, and / or other contact center services.
[0047] User equipment 108 may be embodied as any type of device capable of executing applications and otherwise performing the functions described herein. For example, in some embodiments, user equipment 108 is configured to execute applications to participate in conversations with personal robots, automated agents, conversational robots, chatbots, or other automated systems. Thus, user equipment 108 may have various input / output devices with which a user can interact to provide and receive data in the form of audio, text, video, and / or other forms. It should be understood that the application may be embodied as any type of application suitable for performing the functions described herein. Specifically, in some embodiments, the application may be embodied as a mobile application (e.g., a smartphone application), a cloud-based application, a web application, a thin client application, and / or another type of application. For example, in some embodiments, the application may serve as a client-side interface (e.g., via a web browser) to a web-based application or service.
[0048] It should be understood that each of the cloud-based system 102, network 104, contact center system 106, and / or user equipment 108 may be embodied as (and / or include) similar to the references below. Figure 3One or more computing devices are described as computing device 300. For example, in an exemplary embodiment, each of cloud-based system 102, network 104, contact center system 106, and / or user equipment 108 may include processing device 302 and memory 306, on which operational logic 308 (e.g., multiple instructions) for operation by processing device 302 to operate the corresponding device is stored.
[0049] Figure 6 This document describes an example architecture for a multilingual encoder model that utilizes a multilingual vocabulary and multilingual embeddings to capture the meaning of words in multiple languages. As shown, the example input text is the German text "Im ostengeht die sonne auf". The input text is segmented into individual tokens (e.g., "Im", "osten", "geht", "die", "sonne", "auf"), and the corresponding token index is looked up in the multilingual vocabulary. The token index is then passed to an embedding layer, which generates multilingual embedding values (e.g., in floating-point form), which are used as input to the encoder system to produce a contextual embedding output. Although the individual tokens in this embodiment are words, it should be understood that tokens can be other textual units, such as words, sub-word units, individual characters, word combinations, etc. It should be understood that the multilingual vocabulary comprises a set of tokens shared across different languages that appear frequently in those languages. For example, the exemplary embodiment depicts a multilingual vocabulary that includes at least German tokens. It should be understood that each token in the multilingual vocabulary can be assigned a token index (e.g., a unique numeric identifier). For example, as... Figure 6 As shown, the word / token “si” has been assigned token index “1”, the word / token “Im” has been assigned token index “2”, and so on. The embedding layer transforms the token indices associated with the input text into embeddings (e.g., dense vector representations) that capture the semantic and contextual information of words in a continuous vector space. For example, the embedding layer can be represented as a matrix where each row corresponds to a token index in the vocabulary, and the token index itself is associated with an n-dimensional vector. The encoder system may include one or more layers of neural networks or other machine learning techniques and transforms the sequence of input embedding vectors into a fixed-length vector representation that captures the overall information of the sequence. It should be understood that the context vectors generated by the encoder system can be independent of any particular language, as multilingual embedding outputs can capture semantic and contextual information across different languages.
[0050] See now Figure 2A simplified block diagram of at least one embodiment of a cloud-based system 200 is shown. The exemplary cloud-based system 200 includes a border communication device 202, a SIP server 204, a resource manager 206, a media control platform 208, a voice / text analysis system 210, a voice generator 212, a voice gateway 214, a media enhancement system 216, a chatbot 218, and a voice data storage device 220. Although in Figure 2 The exemplary implementation shows only one border communication device 202, one SIP server 204, one resource manager 206, one media control platform 208, one voice / text analysis system 210, one voice generator 212, one voice gateway 214, one media enhancement system 216, one chatbot 218, and one voice data storage device 220. However, in other implementations, the cloud-based system 200 may include multiple border communication devices 202, SIP servers 204, resource managers 206, media control platforms 208, voice / text analysis systems 210, voice generators 212, voice gateways 214, media enhancement systems 216, chatbots 218, and / or voice data storage devices 220. For example, in some implementations, multiple chatbots 218 may be used to communicate on different topics handled by the same cloud-based system 200. Furthermore, in some implementations, one or more of the components described herein may be excluded from system 200, one or more of the independent components described as independent components may form part of another component, and / or one or more of the components described as forming part of another component may be independent.
[0051] The border communication device 202 may be embodied as any one or more types of devices / systems capable of performing the functions described herein. For example, in some embodiments, the border communication device 202 may be configured to control signaling and media streams that relate to establishing, conducting, and interrupting voice sessions and other media communications between, for example, an end user and a contact center system. In some embodiments, the border communication device 202 may be a Session Border Controller (SBC) that controls the signaling and media exchanged during a media session (also referred to as a “call,” “telephone call,” or “communication session”) between the end user and the contact center system. In some embodiments, the signaling exchanged during a media session may include SIP, H.323, Media Gateway Control Protocol (MGCP), and / or any other Voice over IP (VoIP) call signaling protocol. The media exchanged during a media session may include media streams carrying audio, video, or other data of the call, as well as information on call statistics and quality.
[0052] In some implementations, the border communication device 202 may operate according to a standard SIP back-to-back user agent (B2BUA) configuration. In this regard, the border communication device 202 may be inserted into the signaling and media path established between the calling and called parties in a VoIP call. In some implementations, it should be understood that other intermediate software and / or hardware devices may be invoked when establishing the signaling and / or media path between the calling and called parties.
[0053] In some implementations, the border communication device 202 may exert control over signaling (e.g., SIP messages) and media streams (e.g., RTP data) traversing the network (e.g., network 104) between the end-user equipment (e.g., user equipment 108) and the contact center system (e.g., contact center system 106). In this regard, the border communication device 202 may be coupled to a relay carrying signals and media for calls to and from the user equipment on the network, and a relay carrying signals and media to and from the contact center system on the network.
[0054] SIP server 204 may be embodied as any one or more types of devices / systems capable of performing the functions described herein. For example, in some embodiments, SIP server 204 may act as a SIP B2UBA and control the flow of SIP requests and responses between SIP endpoints. In other embodiments, any other controller configured to establish and terminate VoIP communication sessions, in addition to or in place of SIP server 204, is conceivable. SIP server 204 may be a separate logical component or may be combined with resource manager 206. In some embodiments, SIP server 204 may be hosted at a contact center system (e.g., contact center system 106). Although SIP server 204 is used in the exemplary embodiments, in addition to or in place of SIP, another call server configured with another VoIP protocol, such as, for example, the H.232 protocol, Media Gateway Control Protocol, Skype protocol, and / or other suitable technologies, may be used.
[0055] Resource Manager 206 may be embodied as any one or more types of devices / systems capable of performing the functions described herein. In exemplary embodiments, Resource Manager 206 may be configured to allocate and monitor a pool of media control platforms to provide load balancing and high availability for each resource type. In some embodiments, Resource Manager 206 may monitor and select a media control platform 208 from a cluster of available platforms. The selection of media control platform 208 may be dynamic, for example, based on the identifier of the caller's location, the type of media service to be presented, the quality of the currently detected media service, and / or other factors.
[0056] In some implementations, Resource Manager 206 may be configured to handle requests for media services and interact with a configuration server, such as one with a configuration database, to determine interactive voice response (IVR) profiles, voice applications (e.g., voice extensible markup language (voice XML) applications), announcement and conferencing applications, resources, and service profiles for deliverable services, such as, for example, a media control platform. According to some implementations, Resource Manager may provide tiered multitenant configurations for service providers, enabling them to allocate a selected number of resources to each tenant.
[0057] In some implementations, Resource Manager 206 may be configured to act as a SIP proxy, SIP registrar, and / or SIP notifier. In this respect, Resource Manager 206 may act as a proxy for SIP traffic between two SIP components. As a SIP registrar, Resource Manager 206 may accept registrations of various resources via, for example, a SIP REGISTER message. Thus, cloud-based system 200 may support transparent relocation of call processing components. In some implementations, components (such as media control platform 208) do not register with Resource Manager 206 upon startup. Resource Manager 206 can detect instances of media control platform 208 by retrieving configuration information from a configuration database. If media control platform 208 has been configured for monitoring, Resource Manager 206 may monitor resource health using, for example, SIP OPTIONS messages. In some implementations, to determine whether a resource in a group is valid, Resource Manager 206 may periodically send a SIP OPTIONS message to each media control platform 208 resource in the group. If Resource Manager 206 receives an OK response, the resource is considered valid. It should be understood that File Explorer 206 can be configured to perform various other functions, which have been omitted for the sake of brevity. File Explorer 206 and Media Control Platform 208 can be collectively referred to as Media Controller.
[0058] In some implementations, Resource Manager 206 can act as a SIP notifyer by accepting, for example, SIPSUBSCRIBE requests from SIP server 204 and maintaining multiple independent subscriptions for the same or different SIP devices. Subscription notifications are directed to tenants managed by Resource Manager 206. In this role, Resource Manager 206 can periodically generate SIP NOTIFY requests to subscribers (or tenants) regarding port usage and the number of available ports. Resource Manager 206 can support multitenancy by delivering notifications containing the tenant name, the current status (on or off-line) of the media control platform 208 associated with the tenant, and the tenant's current capabilities.
[0059] The media control platform 208 may be embodied as any service or system capable of providing media services and otherwise performing the functions described herein. For example, in some embodiments, the media control platform 208 may be configured to provide call and media services upon request by a service user. Such services may include, but are not limited to, initiating outbound calls, playing music or providing other media while a call is on hold, call recording, conferencing, call progress detection, playing audio / video prompts during a customer self-service session, and / or other call and media services. One or more services may be defined by a voice application (e.g., a VoiceXML application) that performs as part of the process of establishing a media session between the media control platform 208 and the end user.
[0060] The Speech / Text Analysis System (STAS) 210 may be embodied as any service or system capable of providing various speech analysis and text processing functions (e.g., text-to-speech) as those skilled in the art will understand, and otherwise performing the functions described herein. The Speech / Text Analysis System 210 may perform automatic speech and / or text recognition and grammar matching for end-user communication sessions handled by the cloud-based system 200. The Speech / Text Analysis System 210 may include one or more processors and instructions stored in a machine-readable medium, which are executed by the processor to perform various operations. In some embodiments, the machine-readable medium may include non-transitory storage media, such as hard disks and hardware memory systems.
[0061] The speech generator 212 may be embodied as any service or system capable of generating speech communications and otherwise performing the functions described herein. In some embodiments, the speech generator 212 may generate speech communications based on a specific speech signature.
[0062] Voice gateway 214 may be embodied as any service or system capable of performing the functions described herein. In exemplary embodiments, voice gateway 214 receives or calls to end-users from voice communication devices (such as end-user equipment) and responds to the calls according to a voice program configured according to a communication routing corresponding to a contact center system. In some embodiments, the voice program may include a voice avatar. The voice program may be accessed from local memory within voice gateway 214 or from other storage media in cloud-based system 200. In some embodiments, voice gateway 214 may process the voice program as a script-based voice application. Thus, the voice program may be a script written in a scripting language, such as Voice Extensible Markup Language (VoiceXML) or Voice Application Language Tag (SALT). Cloud-based system 200 may also communicate with voice data storage device 220 to read and / or write user interaction data (e.g., state variables of data communication sessions) in shared memory space.
[0063] Media enhancement system 216 may be embodied as any service or system capable of specifying how the various parts of cloud-based system 200 (e.g., border communication device 202, SIP server 204, resource manager 206, media control platform 208, voice / text analysis system 210, voice generator 212, voice gateway 214, media enhancement system 216, chatbot 218, voice data storage device 220, and / or one or more of its parts) interact with each other and otherwise perform the functions described herein. In some embodiments, media enhancement system 216 may be embodied as or include an application programming interface (API). In some embodiments, media enhancement system 216 is capable of integrating different parameters and / or protocols used with various planned applications and media types utilized within cloud-based system 200.
[0064] Chatbot 218 can be embodied as any automated service or system capable of using automation to engage with end users and otherwise perform the functions described herein. For example, in some embodiments, chatbot 218 may operate, for instance, as an executable program that can be initiated according to the needs of a particular chatbot. In some embodiments, chatbot 218 simulates and processes human conversation (written or verbal), thereby allowing humans to interact with digital devices as if one person were communicating with another. In some embodiments, chatbot 218 may be as simple as a basic procedure that answers simple queries with a one-line response, or as sophisticated as a digital assistant that learns and evolves to deliver an ever-increasing level of personalization as it collects and processes information. In some embodiments, chatbot 218 includes and / or utilizes artificial intelligence, adaptive learning, robotics, cognitive computing, and / or other automation technologies. Chatbot 218 may also be referred to herein as one or more conversational bots, chatbots, AI chatbots, automated chatbots, chatbots, dialogue systems, conversational agents, automated chat resources, and / or bots.
[0065] The benefits of using automated chatbots to engage in chat sessions with end users include enabling contact centers to use valuable and expensive resources (such as human resources) more efficiently while maintaining end-user satisfaction. For example, a chatbot can be invoked to initially handle chat sessions without the human end-user being aware that they are interacting with a bot. If appropriate, and when necessary, the chat session can be escalated to a human resource. Therefore, instead of unnecessarily dedicating human resources to handling simple requests, they can be used more effectively to handle more complex requests or simultaneously monitor the progress of many different automated communications.
[0066] As described herein, in exemplary implementations, chatbot 218 may be embodied as a pure knowledge bot that relies on a knowledge base created, for example, using organizational FAQs, product documents, user manuals, and / or other relevant documents.
[0067] Voice data storage device 220 may be embodied as one or more databases, data structures, and / or data storage devices capable of storing data in or otherwise facilitating the storage of such data in cloud-based system 200. For example, in some embodiments, voice data storage device 220 may include one or more cloud storage buckets. In other embodiments, it should be understood that voice data storage device 220 may additionally or alternatively include other types of voice data storage mechanisms that allow dynamic scaling of the amount of data available for cloud-based system 200. In some embodiments, voice data storage device 220 may store scripts (e.g., pre-defined scripts or others). Although voice data storage device 220 is described herein as a data storage device and a database, it should be understood that voice data storage device 220 may include a database (or other type of organized collection of data and structures) and a data storage device for the actual storage of underlying data. Voice data storage device 220 may store various types of data useful for performing the functions described herein.
[0068] Now for reference Figure 3 A simplified block diagram of at least one embodiment of the computing device 300 is shown. The exemplary computing device 300 depicts a device capable of interacting with… Figure 1 The illustrated cloud-based system 102, contact center system 106, and / or user equipment 108 (and / or a portion thereof) utilize at least one embodiment of the cloud-based system, contact center system, and / or user equipment. Furthermore, in some embodiments, one or more of the following may be embodied as or performed by a computing device similar to or similar to computing device 300: border communication device 202, SIP server 204, resource manager 206, media control platform 208, voice / text analysis system 210, voice generator 212, voice gateway 214, media enhancement system 216, chatbot 218, and / or voice data storage device 220. Depending on the specific embodiment, computing device 300 may be embodied as a server, desktop computer, laptop computer, tablet computer, notebook, netbook, or Ultrabook. ™ Cellular phones, mobile computing devices, smartphones, wearable computing devices, personal digital assistants, Internet of Things (IoT) devices, processing systems, wireless access points, routers, gateways and / or any other computing, processing and / or communication devices capable of performing the functions described herein.
[0069] The computing device 300 includes a processing device 302 that executes algorithms and / or processes data according to operating logic 308, an input / output device 304 that enables communication between the computing device 300 and one or more external devices 310, and a memory 306 that stores, for example, data received from the external devices 310 via the input / output device 304.
[0070] Input / output device 304 allows computing device 300 to communicate with external device 310. For example, input / output device 304 may include a transceiver, network adapter, network interface card (NIC), interface, one or more communication ports (e.g., USB port, serial port, parallel port, analog port, digital port, VGA, DVI, HDMI, FireWire, CAT5, or any other type of communication port or interface) and / or other communication circuitry. Depending on the specific computing device 300, the communication circuitry of computing device 300 may be configured to use any one or more communication technologies (e.g., wireless or wired communication) and associated protocols (e.g., Ethernet, Bluetooth). ® Wi-Fi ® This communication can be achieved using devices such as WiMAX. Input / output device 304 may include hardware, software, and / or firmware suitable for performing the techniques described herein.
[0071] External device 310 can be any type of device that allows data to be input or output from computing device 300. For example, in various embodiments, external device 310 may be embodied as cloud-based system 102, contact center system 106, user equipment 108, and / or a portion thereof. Furthermore, in some embodiments, external device 310 may be embodied as another computing device, switch, diagnostic tool, controller, printer, monitor, alarm, peripheral device (e.g., keyboard, mouse, touchscreen display, etc.), and / or any other computing device, processing device, and / or communication device capable of performing the functions described herein. Moreover, in some embodiments, it should be understood that external device 310 may be integrated into computing device 300.
[0072] Processing device 302 may be embodied as any type of processor capable of performing the functions described herein. Specifically, processing device 302 may be embodied as one or more single-core or multi-core processors, microcontrollers, or other processors or processing / control circuitry. For example, in some embodiments, processing device 302 may include or be embodied as an arithmetic logic unit (ALU), a central processing unit (CPU), a digital signal processor (DSP), and / or another suitable processor. Processing device 302 may be programmable, a dedicated hardwired state machine, or a combination thereof. In various embodiments, processing device 302 having multiple processing units may utilize distributed, pipelined, and / or parallel processing. Furthermore, processing device 302 may be dedicated solely to the execution of the operations described herein, or may be utilized in one or more additional applications. In exemplary embodiments, processing device 302 is programmable and performs algorithms and / or processes data according to operating logic 308, as defined by programming instructions (such as software or firmware) stored in memory 306. Additionally or alternatively, operating logic 308 for processing device 302 may be at least partially defined by hardwired logic or other hardware. Furthermore, processing device 302 may include one or more components of any type suitable for processing signals received from input / output device 304 or from other components or devices and providing a desired output signal. Such components may include digital circuitry, analog circuitry, or combinations thereof.
[0073] Memory 306 may be one or more types of non-transitory computer-readable media, such as solid-state memory, electromagnetic memory, optical memory, or combinations thereof. Furthermore, memory 306 may be volatile and / or non-volatile, and in some embodiments, some or all of the memory in memory 306 may be portable types, such as disks, magnetic tapes, memory sticks, cassette tapes, and / or other suitable portable storage devices. In operation, memory 306 may store various data and software used during the operation of computing device 300, such as operating systems, applications, programs, libraries, and drivers. It should be understood that, in addition to or instead of storing programming instructions defining operating logic 308, memory 306 may store data manipulated by operating logic 308 of processing device 302, such as data representing signals received from and / or transmitted to input / output device 304. Figure 3 As shown, depending on the specific implementation, memory 306 may be included in and / or coupled to processing device 302. For example, in some implementations, processing device 302, memory 306, and / or other components of computing device 300 may form part of a system-on-chip (SoC) and be incorporated onto a single integrated circuit chip.
[0074] In some implementations, various components of computing device 300 (e.g., processing device 302 and memory 306) may be communicatively coupled via an input / output subsystem, which may be embodied as circuitry and / or components to facilitate input / output operations with processing device 302, memory 306, and other components of computing device 300. For example, the input / output subsystem may be embodied as or otherwise include a memory controller hub, an input / output control hub, firmware devices, communication links (i.e., point-to-point links, bus links, wires, cables, light guides, printed circuit board traces, etc.) and / or other components and subsystems to facilitate input / output operations.
[0075] In other embodiments, computing device 300 may include other or additional components, such as those common in typical computing devices (e.g., various input / output devices and / or other components). It should also be understood that one or more components of the computing device 300 described herein may be distributed across multiple computing devices. In other words, the techniques described herein can be employed by computing systems that include one or more computing devices. Additionally, although in Figure 3 The illustration illustratively depicts only a single processing device 302, I / O device 304, and memory 306; however, it should be understood that in other embodiments, a particular computing device 300 may include multiple processing devices 302, I / O devices 304, and / or memory 306. Furthermore, in some embodiments, more than one external device 310 may communicate with the computing device 300.
[0076] Now for reference Figure 4 In use, computing systems (e.g., system 100, cloud-based system 102, contact center system 106, and / or other computing devices described herein) may execute method 400 for reducing the size of the multilingual vocabulary and enhancing the multilingual vocabulary. It should be understood that, unless otherwise stated, specific boxes of method 400 are illustrated by way of example, and such boxes may be combined or divided, added or removed, and / or reordered, wholly or partially, depending on a particular implementation.
[0077] The exemplary method 400 begins at box 402, in which the computational system reduces the size of the multilingual vocabulary (e.g., an initial multilingual vocabulary) by performing knowledge distillation via machine learning to teach a student AI model based on a teacher AI model. In doing so, in box 404, the computational system (e.g., using an artificial neural network) performs machine learning to train the student AI model to represent various keywords as the teacher AI model. More specifically, in box 406, the computational system trains the student AI model based on contact center keywords, and in box 408, the computational system trains the student AI model based on domain-specific keywords. In other words, in the exemplary implementation, the student AI model learns the teacher AI model's representations of contact center keywords and domain-specific keywords.
[0078] Figure 7 An example architecture for training / teaching a student AI model based on a teacher AI model and reducing the size of the initial multilingual vocabulary is illustrated. It should be understood that the computational system can perform knowledge distillation via machine learning, which may involve using a larger model (e.g., a teacher model) to transfer knowledge from the teacher model to the student model, which may include fewer machine learning embedding layers than the teacher model. The student model can be trained to minimize the difference between the teacher's sentence vectors and the student's sentence vectors based on mean squared error (MSE) loss, striving to match the student model's output with the teacher model's output while reducing model size and resource consumption. It should also be understood that additional keywords / tokens (such as contact center keywords and domain-specific keywords) can be used to train both the teacher and student models. The multilingual vocabulary can be general and can be trained on input data in the form of phrases or sentences covering a wide range of patterns and semantics. Despite the breadth provided, this approach may be limiting relative to a correct understanding of the language and / or specific domain (e.g., banking) used in contact center interactions. For example, human users tend to use dialects different from those of human agents when communicating with conversational bots, often relying on very direct statements (e.g., yes, no, I understand, help, start over, cancel, begin, etc.). Similarly, domain-specific language can involve different uses of traditional language (e.g., banking, healthcare, etc.). For example, the word "heart" may refer to an organ in the human body or depend on the shape of a particular domain. Therefore, in some implementations, the computational system may train teacher and student models to incorporate contact centers and / or domain-specific tokens. It should also be understood that in some implementations, the multilingual vocabulary can be further reduced by eliminating duplicate keyword entries. For example, in one implementation, the tokens "start over" and "restart" may be merged into a single token to improve performance.
[0079] Return to reference Figure 4 In box 410, the computing system reduces the size of the multilingual vocabulary by removing tokens from the multilingual corpus (e.g., an initial multilingual corpus, such as before or after performing knowledge distillation and / or enhancement). Specifically, in box 412, the computing system may group languages with linguistic similarity as described above, and in box 414, the computing system may determine which languages are associated with one(s) regional settings handled by the contact center system 106. In box 416, the computing system removes tokens from the multilingual vocabulary associated with languages not within the language groups associated with regional settings handled by the contact center system 106. For example, as described above, the computing system may group Eastern European languages together and East Asian languages together based on linguistic similarity (e.g., due to a lack of frequent overlap in the underlying vocabulary). Therefore, if the region setting handled by the contact center system 106 is within East Asia, the computing system can remove tokens from the East European language group (e.g., German tokens, French tokens, Spanish tokens, etc.) and / or tokens otherwise unrelated to the East Asian language group from the multilingual vocabulary. It should be understood that utilizing different multilingual vocabularies based on language grouping and region setting allows for a reduction in the size of the multilingual vocabulary while ensuring that pruning one vocabulary does not affect the performance of another region setting.
[0080] Although blocks 402 through 416 are described in a relatively sequential manner, it should be understood that in some embodiments, the various blocks of method 400 may be executed in parallel. It should be understood that method 400 improves system performance, for example, by reducing memory consumption (or other resource consumption) of multilingual vocabularies and / or artificial intelligence models (e.g., student models) used for natural language processing.
[0081] Now for reference Figure 5 In use, computing systems (e.g., system 100, cloud-based system 102, contact center system 106, and / or other computing devices described herein) may execute method 500 for utilizing an improved conversational robot in a contact center system. It should be understood that, unless otherwise stated, specific boxes of method 500 are illustrated by way of example, and such boxes may be combined or divided, added or removed, and / or reordered, wholly or partially, depending on a particular implementation.
[0082] The exemplary method 500 begins at box 502, in which the computing system receives user text from an interaction with a conversational bot. For example, the user text could be a query or command from a human user to the conversational bot. Although described as text, it should be understood that in some embodiments, the human user may be communicating verbally with an automated agent, which may then be converted into user text via automatic speech recognition and speech-to-text technology. In box 504, the computing system uses natural language processing to parse the user text into tokens.
[0083] In box 506, the computation system identifies token indices in a multilingual vocabulary (e.g., the abridged multilingual vocabulary described above) associated with corresponding tokens from tokenized user text. In box 508, the computation system determines embedding values associated with those token indices, and in box 510, the computation system uses machine learning (e.g., using a neural network) to generate a multilingual embedding output for the user text based on the embedding values. It should be understood that the multilingual embedding output indicates user intent based on the user text. In some embodiments, the multilingual embedding output may be represented as a fixed-length vector representation of the user text.
[0084] Although blocks 502 to 510 are described in a relatively sequential manner, it should be understood that in some implementations, the individual blocks of method 500 may be executed in parallel.
Claims
1. A method for utilizing an improved chatbot in a contact center system, the method comprising: The computing system performs knowledge distillation via machine learning to teach a student AI model based on a teacher AI model and reduce the size of the initial multilingual vocabulary, wherein the student AI model includes fewer machine learning embedding layers than the teacher AI model; The computing system removes tokens from the initial multilingual vocabulary based on grouping languages with linguistic similarity to reduce the size of the initial multilingual vocabulary; The computing system uses natural language processing to parse user text from human users into one or more tokens; The computing system identifies token indexes associated with one or more tokens in a reduced multilingual vocabulary, wherein the reduced multilingual vocabulary is generated by performing the knowledge distillation and removing the tokens from the initial multilingual vocabulary; The computing system determines the embedded value associated with the identified token index; as well as The computing system uses machine learning to generate a multilingual embedding output for the user text based on the embedding values, wherein the multilingual embedding output indicates the intent of the user text.
2. The method of claim 1, wherein performing knowledge distillation via machine learning to teach the student AI model based on the teacher AI model and reduce the size of the initial multilingual vocabulary comprises: Reduce the memory consumption of the initial multilingual vocabulary.
3. The method of claim 1, wherein removing the token from the initial multilingual vocabulary to reduce the size of the initial multilingual vocabulary based on the grouping of languages with linguistic similarity comprises: Reduce the memory consumption of the initial multilingual vocabulary.
4. The method of claim 1, wherein performing the knowledge distillation via machine learning to teach the student AI model based on the teacher AI model comprises: Machine learning is performed to train the student AI model to represent contact center keywords relative to the teacher AI model.
5. The method of claim 1, wherein performing the knowledge distillation via machine learning to teach the student AI model based on the teacher AI model comprises: Machine learning is performed to train the student AI model to represent domain-specific keywords relative to the teacher AI model.
6. The method of claim 1, wherein removing tokens from the initial multilingual vocabulary based on the grouping of languages with linguistic similarity comprises: Determine one or more languages associated with the regional settings handled by the contact center system; as well as Remove tokens associated with languages that are not in the language group related to the regional settings handled by the contact center system from the initial multilingual vocabulary.
7. The method of claim 1, wherein generating the multilingual embedding output for the user text based on the embedding value comprises: A fixed-length vector representation of the user text is generated based on the embedded values.
8. The method of claim 1, wherein using machine learning to generate the multilingual embedding output for the user text based on the embedding values comprises: The neural network is used to generate the multilingual embedding output for the user's text based on the embedding values.
9. The method according to claim 1, further comprising: The computing system receives the user text from the interaction between the human user and the chatbot of the contact center system.
10. The method of claim 1, wherein each token of the initial multilingual vocabulary is represented by a multidimensional vector of floating-point values.
11. A computing system for utilizing an improved conversational robot in a contact center system, the computing system comprising: At least one processor; and At least one memory, the at least one memory including a plurality of instructions stored thereon, the plurality of instructions being responsive to execution by the at least one processor to cause the computing system to: Knowledge distillation is performed using machine learning to teach a student AI model based on a teacher AI model and reduce the size of the initial multilingual vocabulary, wherein the student AI model includes fewer machine learning embedding layers than the teacher AI model; Tokens are removed from the initial multilingual vocabulary based on grouping languages with linguistic similarity to reduce the size of the initial multilingual vocabulary; Use natural language processing to parse user text from human users into one or more tokens; Identify the token index associated with one or more tokens in the reduced multilingual vocabulary, wherein the reduced multilingual vocabulary is generated by performing the knowledge distillation and removing the tokens from the initial multilingual vocabulary; Determine the embedded value associated with the identified token index; as well as Machine learning is used to generate multilingual embedding outputs for the user text based on the embedding values, wherein the multilingual embedding outputs indicate the intent of the user text.
12. The computing system of claim 11, wherein performing knowledge distillation via machine learning to teach the student AI model based on the teacher AI model and reduce the size of the initial multilingual vocabulary comprises: Reduce the memory consumption of the initial multilingual vocabulary.
13. The computing system of claim 11, wherein removing the token from the initial multilingual vocabulary to reduce the size of the initial multilingual vocabulary based on the grouping of languages with linguistic similarity comprises: Reduce the memory consumption of the initial multilingual vocabulary.
14. The computing system of claim 11, wherein performing the knowledge distillation via machine learning to teach the student AI model based on the teacher AI model comprises: Machine learning is performed to train the student AI model to represent contact center keywords relative to the teacher AI model.
15. The computing system of claim 11, wherein performing the knowledge distillation via machine learning to teach the student AI model based on the teacher AI model comprises: Machine learning is performed to train the student AI model to represent domain-specific keywords relative to the teacher AI model.
16. The computing system of claim 11, wherein removing tokens from the initial multilingual vocabulary based on the grouping of languages with linguistic similarity comprises: Determine one or more languages associated with the regional settings handled by the contact center system; as well as Remove tokens associated with languages that are not in the language group related to the regional settings handled by the contact center system from the initial multilingual vocabulary.
17. The computing system of claim 11, wherein generating the multilingual embedding output for the user text based on the embedding value comprises: A fixed-length vector representation of the user text is generated based on the embedded values.
18. The computing system of claim 11, wherein using machine learning to generate the multilingual embedding output for the user text based on the embedding values comprises: The neural network is used to generate the multilingual embedding output for the user's text based on the embedding values.
19. The computing system of claim 11, wherein the plurality of instructions further cause the computing system to receive user text from an interaction between the human user and a chatbot of the contact center system.
20. The computing system of claim 11, wherein each token of the initial multilingual vocabulary is represented by a multidimensional vector of floating-point values.