Seat allocation method and device, electronic equipment, storage medium and program product
By obtaining and encoding idle seats, user and interactive data, and using multiple seat allocation models for allocation, the single-dimensional and unreal-time problems of traditional allocation methods are solved, and more efficient and flexible seat allocation is achieved.
Patent Information
- Application Number
- CN202411610403.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-12
- Publication Date
- 2025-02-07
AI Technical Summary
The traditional agent allocation method is pre-classified based on rules, and the allocation focuses on a fixed dimension, resulting in poor allocation results and lack of real-time and flexibility.
By obtaining the list of idle seats, user and interactive text data, after encoding, the data is input into multiple seat allocation models trained based on historical data, the target model is determined for allocation, and multi-dimensional seat allocation is realized.
It improves the effect and flexibility of agent allocation, and can switch model dimensions in real time according to the current allocation target to meet the allocation needs in different scenarios.
Smart Images

Figure CN119398443A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of seat allocation, and in particular to a seat allocation method, device, electronic equipment, storage medium and program product. Background Art
[0002] In the traditional hotline customer service system process, the user initiates a transfer request through the IVR (Interactive Voice Response) system, and then the call platform assigns the call to the corresponding customer service agent according to the preset agent allocation rules. These rules usually adopt a first-in-first-out method, but sometimes some additional priority settings are also considered. In recent years, with the development of technology, some intelligent allocation methods have begun to use auxiliary tools such as intelligent algorithms to allocate seats to improve allocation efficiency or user satisfaction. However, whether it is traditional or intelligent methods, seats are generally pre-classified based on rules, and the allocation of seats only focuses on a fixed dimension, so the effect of seat allocation needs to be improved. Summary of the invention
[0003] The embodiments of the present invention provide a seat allocation method, device, electronic device, storage medium and program product to improve the effect of seat allocation.
[0004] In a first aspect, an embodiment of the present invention provides a seat allocation method, comprising: in response to a seat allocation request, obtaining a current idle seat list; obtaining seat portrait data of each idle seat in the idle seat list, as well as user portrait data and interactive text data of the current incoming user; encoding the seat portrait data, the user portrait data and the interactive text data respectively to obtain an agent portrait code, a user portrait code and a text feature code; based on a current seat allocation target, determining a target seat allocation model from a plurality of seat allocation models; wherein each of the seat allocation models corresponds to a seat allocation target; inputting the seat portrait code, the user portrait code and the text feature code into the target seat allocation model to obtain a first seat allocation result; wherein the target seat allocation model is obtained by training based on the seat portrait code, the user portrait code, the text feature code corresponding to historical user seat session data and the label corresponding to the current seat allocation target.
[0005] In some embodiments, the obtaining of the seat portrait data of each idle seat in the idle seat list, as well as the user portrait data and interactive text data of the current incoming user, includes: determining a plurality of target idle seats based on the seat portrait label of each idle seat in the idle seat list; obtaining the seat portrait data of each of the target idle seats, as well as the user portrait data and interactive text data of the current incoming user.
[0006] In some embodiments, the encoding of the agent portrait data, the user portrait data and the interactive text data respectively to obtain the agent portrait code, the user portrait code and the text feature code includes: encoding the agent portrait data and the user portrait data respectively based on the Embedding model to obtain the agent portrait code and the user portrait code; encoding the interactive text data based on a text embedding method to obtain the text feature code.
[0007] In some embodiments, the obtaining of seat portrait data of each idle seat in the idle seat list, as well as user portrait data and interactive text data of the current incoming user, includes: obtaining the idle time of each idle seat in the idle seat list; if there is an overtime idle seat in the idle seat list, determining a second seat allocation result based on the overtime idle seat; wherein the overtime idle seat is an idle seat whose idle time is greater than or equal to a time threshold; if the overtime idle seat does not exist in the idle seat list, obtaining the seat portrait data of each idle seat in the idle seat list, as well as user portrait data and interactive text data of the current incoming user.
[0008] In some embodiments, after the agent portrait code, the user portrait code and the text feature code are input into the target agent allocation model to obtain a first agent allocation result, the method further includes: determining a recall agent matching the first agent in the first agent allocation result based on the clustering recall library; wherein the clustering recall library includes a plurality of agent groups, each of which includes a plurality of similar agents; and determining a third agent allocation result based on the recall agent.
[0009] As a possible implementation method, the clustering recall library is constructed based on the following method: based on the seat portrait data of all seats, determining the seat feature vector of each seat; based on the seat feature vector, clustering all the seats to obtain the multiple seat groups; based on the multiple seat groups, constructing the clustering recall library.
[0010] In some embodiments, determining a recalled seat that matches the first seat in the first seat assignment result based on the grouping and clustering recall library includes: determining a target seat group to which the first seat belongs from the multiple seat groups; determining a similarity between the first seat and other seats in the target seat group based on a seat feature vector of the first seat and seat feature vectors of other seats in the target seat group; and determining the recalled seat from the target seat group based on the similarity.
[0011] In a second aspect, an embodiment of the present invention provides a seat allocation device, comprising: a first acquisition module, used to obtain a current idle seat list in response to a seat allocation request; a second acquisition module, used to obtain seat portrait data of each idle seat in the idle seat list, as well as user portrait data and interactive text data of the current incoming user; an encoding module, used to encode the seat portrait data, the user portrait data and the interactive text data respectively to obtain an agent portrait code, a user portrait code and a text feature code; a determination module, used to determine a target seat allocation model from a plurality of seat allocation models based on a current seat allocation target; wherein each of the seat allocation models corresponds to a seat allocation target; a third acquisition module, used to input the seat portrait code, the user portrait code and the text feature code into the target seat allocation model to obtain a first seat allocation result; wherein the target seat allocation model is obtained by training based on the seat portrait code, the user portrait code, the text feature code corresponding to historical user seat conversation data and the label corresponding to the current seat allocation target.
[0012] In a third aspect, an embodiment of the present invention provides an electronic device, including a processor and a memory storing a computer program, wherein the processor implements the seat allocation method described in the first aspect when executing the program.
[0013] In a fourth aspect, an embodiment of the present invention provides a non-transitory computer-readable storage medium having a computer program stored thereon, wherein when the computer program is executed by a processor, the seat allocation method described in the first aspect is implemented.
[0014] In a fifth aspect, an embodiment of the present invention provides a computer program product, including a computer program, and when the computer program is executed by a processor, the seat allocation method described in the first aspect is implemented.
[0015] According to the seat allocation method, device, electronic device, storage medium and program product of the embodiments of the present invention, in response to a seat allocation request, a current idle seat list is obtained; the seat portrait data of each idle seat in the idle seat list, as well as the user portrait data and interactive text data of the current incoming user are obtained; the seat portrait data, the user portrait data and the interactive text data are respectively encoded and processed to obtain the seat portrait code, the user portrait code and the text feature code; based on the current seat allocation target, a target seat allocation model is determined from multiple seat allocation models; wherein each seat allocation model corresponds to an seat allocation target; the seat portrait code, the user portrait code and the text feature code are input into the target seat allocation model to obtain a first seat allocation result; wherein the target seat allocation model is obtained by training based on the seat portrait code, the user portrait code, the text feature code corresponding to the historical user seat conversation data and the label corresponding to the current seat allocation target. The present invention determines a target seat allocation model from multiple seat allocation models based on the current seat allocation target, and performs seat allocation based on the target seat allocation model, so as to realize multi-dimensional seat allocation. The dimension of the seat allocation model is switched in real time based on the current allocation target, thereby greatly improving the effect of seat allocation, and also improving the flexibility of seat allocation to meet the allocation requirements in different scenarios. BRIEF DESCRIPTION OF THE DRAWINGS
[0016] In order to more clearly illustrate the technical solutions in the present invention or the prior art, the following briefly introduces the drawings required for use in the embodiments or the description of the prior art. Obviously, the drawings described below are some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.
[0017] Figure 1 One of the flowcharts of the seat allocation method provided in an embodiment of the present invention; Figure 2 A second flowchart of the seat allocation method provided in an embodiment of the present invention; Figure 3 A third flowchart of the seat allocation method provided in an embodiment of the present invention; Figure 4 A fourth flowchart of the seat allocation method provided in an embodiment of the present invention; Figure 5 A fifth flowchart of the seat allocation method provided in an embodiment of the present invention; Figure 6 A schematic diagram of the structure of a seat allocation device provided in an embodiment of the present invention; Figure 7 A schematic diagram of the structure of an electronic device provided by an embodiment of the present invention. DETAILED DESCRIPTION
[0018] In order to make the purpose, technical solution and advantages of the present invention clearer, the technical solution of the present invention will be clearly and completely described below in conjunction with the drawings of the present invention. Obviously, the described embodiments are part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.
[0019] It should be noted that in the traditional hotline customer service system process, the user initiates a transfer request through the IVR system, and then the call platform assigns the call to the corresponding customer service agent according to the preset agent allocation rules. These rules usually adopt a first-in-first-out method, but sometimes some additional priority settings are also considered. In recent years, with the development of technology, some intelligent allocation methods have begun to use auxiliary tools such as intelligent algorithms to allocate seats in order to improve allocation efficiency or user satisfaction. However, whether it is traditional or intelligent methods, seats are generally pre-classified based on rules, and the allocation of seats mostly focuses on a fixed dimension, such as agent waiting time, labor cost optimization, or user satisfaction improvement.
[0020] In the traditional hotline customer service system process, although the seat allocation method has made some intelligent progress, there are still some significant shortcomings: (1) Lack of real-time allocation. Traditional systems often pre-screen seats based on rules and cannot dynamically adjust seat screening according to the type and urgency of incoming calls in real time. It is difficult to quickly locate and allocate idle seats during peak hours or in specific situations, which seriously affects user experience; (2) The allocation model dimension is single. Although some systems have begun to consider using algorithms such as deep learning for intelligent allocation, they often only focus on a specific optimization dimension, such as cost reduction or user satisfaction improvement. This single-dimensional optimization relies on the algorithm to output the best match without considering the overall customer service staff efficiency, resulting in a decrease in individual benefits; (3) Poor matching balance. During the seat allocation process, the system generally focuses on the seats output by the model. Due to the different skill levels and experience of the agents, the output of the model easily leads to excellent agents being frequently selected, resulting in call volume overload, which not only reduces the efficiency of problem solving, but also may increase user distress.
[0021] In order to solve the above problems, the present invention provides a seat allocation method, device, electronic device, storage medium and program product.
[0022] Figure 1 This is a flow chart of a seat allocation method provided in an embodiment of the present invention. Figure 1 As shown, the method may include the following steps.
[0023] Step 101: In response to a seat allocation request, obtain a current idle seat list.
[0024] Among them, the seat allocation request refers to the request issued by the system to indicate the seat allocation when receiving a call from a user to transfer to an agent. As an example, if the seat allocation method implemented by the present invention is executed by the intelligent strategy hub platform, then after generating the seat allocation request, the step of obtaining the current list of idle seats is executed, wherein the intelligent strategy hub platform can be the platform used for seat allocation in the current customer service system; if the seat allocation method of the present invention is executed by the call platform, then after receiving the seat allocation request, the step of obtaining the current list of idle seats is executed; if the seat allocation method of the present invention is executed by a separate seat allocation platform, then after receiving the seat allocation request sent by the upstream platform, the step of obtaining the current list of idle seats is executed, and finally the seat allocation result is sent to the upstream platform to connect the seat.
[0025] In some embodiments, the current idle seat list refers to a list of seats that are currently idle, that is, the current idle seat category includes all seats that are currently idle.
[0026] Step 102, obtaining the seat portrait data of each idle seat in the idle seat list, as well as the user portrait data and interactive text data of the current incoming user.
[0027] In some embodiments, a seat portrait library may be pre-stored, and the seat portrait library includes seat portrait data of each seat, and the seat portrait data of each seat may include data such as skill level, product types, acceptance capacity, violation status, customer satisfaction, work experience, etc. of each seat. Based on the identification information of the seat, the seat portrait data of each seat is stored. The process of obtaining the seat portrait data of each idle seat in the idle seat list may be: obtaining the seat portrait data of each idle seat from the seat portrait library based on the identification information of each idle seat.
[0028] In some embodiments, the current incoming user can be determined based on the seat allocation request, for example, the seat allocation request carries the user identification information of the current incoming user, and the current incoming user is determined based on the user identification information. The user portrait information of the current incoming user can be obtained based on a stored user portrait library, or based on a user management system. For example, a user portrait library can be pre-stored, and the user portrait library includes user portrait data of each user, which is stored based on user identification information; the user portrait data of each user can include basic information of the corresponding user (such as age, gender, etc.), tariff information, etc.; based on the user identification information of the current incoming user, the user portrait data of the current incoming user can be obtained from the user portrait library.
[0029] In some embodiments, the interactive text data of the current incoming user refers to the text information corresponding to the interactive behavior generated during the intelligent voice interaction phase of the current incoming user. For example, it may include: the selected service type, the input information, etc. The interactive text data of the current incoming user can be obtained based on the IVR system.
[0030] Step 103, respectively encode the agent portrait data, user portrait data and interactive text data to obtain the agent portrait code, user portrait code and text feature code.
[0031] In order to convert the seat portrait data, user portrait data and interactive text data into corresponding encoding vectors so as to perform seat allocation through the seat allocation model in the subsequent steps, the above data can be encoded to obtain encoded data that can express the respective data.
[0032] It should be noted that the seat portrait data here is the seat portrait data of each idle seat, that is, the seat portrait data of each idle seat is encoded.
[0033] In some embodiments, the agent portrait data, user portrait data, and interactive text data may be encoded using a natural language model.
[0034] In some embodiments, the agent portrait data, user portrait data and interactive text data are encoded respectively, and the implementation process of obtaining the agent portrait encoding, user portrait encoding and text feature encoding may include the following steps.
[0035] Step S1, based on the Embedding model, encode the agent portrait data and the user portrait data respectively to obtain the agent portrait code and the user portrait code.
[0036] In some embodiments, both the agent portrait data and the user portrait data can be divided into category type, ID type and numerical type. In order to improve the expression effect of the features, different encoding methods are used respectively. Specifically, for category type and ID type features, one-hot encoding technology is used to generate sparse features, while numerical features maintain their original continuous form. In the further classification of sparse features, they are refined into two categories: single-category sparse features and variable-length sparse features. Single-category sparse features mainly include category coding features with unique values such as user ID, gender, age, etc. For this type of feature, Embedding embedding technology can be used for encoding and outputting low-dimensional vector representation. Variable-length sparse features are typically variable-length sequences such as user historical behavior sequences. Taking into account the different lengths of behavior sequences of different users, a pooling operation is performed on the Embedding of each sequence to output a unified low-dimensional representation.
[0037] In some embodiments, in order to improve the learning effect of the seat allocation model, the feature representation effect can be improved by data enhancement. First, new samples are generated by masking some features in the sample, and data enhancement is performed. The features corresponding to the mask are masked according to the mutual information correlation. For example, the correlation of the mutual information is calculated by field, and the related features are masked together. Different mask strategies are adopted for different features. For example, for single-value features, a default embedding is directly used as a replacement, and for multi-value features, some values are randomly discarded. The enhanced data is encoded based on a network including an Embedding layer and a fully connected layer, and the category features and ID features in the portrait features are converted into embeddings, retaining the numerical features in the portrait.
[0038] Among them, the seat portrait encoding is the vector expression obtained after the seat portrait data is processed by the above encoding, and the user portrait encoding is the vector expression obtained after the user portrait data is processed by the above encoding.
[0039] Step S2: encoding the interactive text data based on a text embedding method to obtain text feature encoding.
[0040] In some embodiments, encoding the interactive text data based on a text embedding method mainly represents the interactive text data in an information-dense manner, and each input text is ultimately embedded as a floating-point vector, so that the distance between two embeddings in the vector space is associated with the semantic similarity between the two inputs in the original format.
[0041] As a possible implementation method, the text embedding method is mainly based on the deep learning model BERT, which is a pre-trained language model based on the Transformer model and is widely used in the field of natural language processing. Its core idea is to capture the bidirectional contextual information of the text through pre-training, and it shows high accuracy in various tasks.
[0042] Specifically, during the encoding process of the interactive text data, the interactive text data is first cut and divided into individual sentences or text segments, and then the word segmentation technology is used to convert the text into a token sequence that the BERT model can understand; in order to enhance the model's ability to understand the text structure, specific tokens are added, such as [CLS] and [SEP], which are used to mark the beginning and end of a sentence, as well as the boundaries between different text segments; the processed token sequence is converted into the input format required by the BERT model, including token IDs, segment IDs, and position encodings, and these are input into the BERT model, which will output the vector representation of each token; the output of the [CLS] token can be selected as the encoding of the entire text sequence, or the BERT encoding can be pooled, such as average pooling or maximum pooling, to obtain a vector of fixed length.
[0043] In some embodiments, after encoding the interactive text data based on a text embedding method, a text feature encoding is obtained, that is, a semantic vector corresponding to the interactive text data.
[0044] Step 104: Based on the current seat allocation target, determine a target seat allocation model from a plurality of seat allocation models; wherein each seat allocation model corresponds to a seat allocation target.
[0045] In some embodiments, multiple seat allocation targets can be pre-set, and each seat allocation target can be used as a fitting target, and the corresponding seat allocation model can be pre-trained based on historical user seat conversation data. When applied, from the multiple seat allocation models that have been established, the fitting target is the target seat allocation model of the current seat allocation target.
[0046] It can be understood that each seat allocation target is equivalent to a dimension that seat allocation focuses on. Pre-setting multiple seat allocation targets is equivalent to pre-setting multiple seat allocation dimensions. Based on the current seat allocation target, the seat allocation dimensions are switched in real time to determine the seat allocation model of the corresponding dimension. This can not only greatly improve the effect of seat allocation and the overall efficiency of seat allocation, but also greatly improve the flexibility of seat allocation to meet the seat allocation needs in different scenarios.
[0047] As an example, seat allocation targets such as conversion rate priority, efficiency priority, and satisfaction priority can be pre-set; different fitting targets use the same input data and model structure, and are differentiated in terms of model output; if the seat allocation model with conversion rate priority is used as the fitting target, then the relevant label of whether there is a product conversion in the call is fitted; if the seat allocation model with efficiency priority is used as the fitting target, then the labels reflecting the seat processing efficiency such as the seat call duration are fitted; if the seat allocation model with satisfaction priority is used as the fitting target, then the fitting is based on labels such as call satisfaction.
[0048] In some embodiments, the current seat allocation target can be determined based on the logic set by actual needs. As an example, the seat allocation target can be divided into time periods, and the corresponding seat allocation target can be determined based on the time period of the current incoming call. As another example, keyword extraction can be performed based on the user portrait data and interactive text data of the current incoming user, and the extracted keywords can be matched with the keywords set for each seat allocation target, and the seat allocation target that successfully matches can be used as the current seat allocation target. As another example, a mapping relationship between user identification information and seat allocation targets can be established in advance, and the seat allocation target corresponding to the current incoming user can be determined based on the user identification information of the current incoming user and the established mapping relationship, and used as the current seat allocation target.
[0049] Step 105, input the seat portrait code, user portrait code and text feature code into the target seat allocation model to obtain a first seat allocation result; wherein the target seat allocation model is trained based on the seat portrait code, user portrait code, text feature code corresponding to the historical user seat conversation data and the label corresponding to the current seat allocation target.
[0050] In some embodiments, multiple seat allocation targets may be pre-set, and based on historical user seat conversation data, corresponding seat allocation models may be trained based on each seat allocation target, and each seat allocation model may be trained based on a label corresponding to the corresponding seat allocation target.
[0051] In some embodiments, the first seat allocation result may be a seat that best matches the current incoming user, or may be multiple seats that match the current incoming user. When multiple matching seats are included, the access order of each matching seat is also required to be included. If the first seat allocation result is multiple seats, the access order of the multiple seats is the result of sorting from large to small matching degrees. The output of the target seat allocation model may be a best matching seat, or may be multiple matching seats and corresponding matching scores or access orders, or may be a matching score for each idle seat. The first seat allocation result may be the output of the target seat allocation model, or may be a seat allocation result determined based on the target seat allocation model.
[0052] As an example, if the target seat allocation model is a model that prioritizes conversion rate as a fitting model, the target seat allocation model can predict the conversion rate of each idle seat based on the input data, and output the seat with the highest conversion rate, and use the output of the target seat allocation model as the first seat allocation result; the target seat allocation model can also output the top N seats in the conversion rate ranking and their respective conversion rates, and then determine the access order of the N seats based on the N seats and their respective conversion rate outputs output by the target seat allocation model, and use the N seats and their access order as the first seat allocation result.
[0053] It should be noted that the agent portrait code input into the target agent allocation model can be the agent portrait code of all idle seats. The target agent allocation model predicts the matching degree between each idle seat and the current incoming user, and outputs one or more matching seats based on the matching degree between each idle seat and the current incoming user.
[0054] In some embodiments, each seat allocation model may be obtained by training based on the same model. The seat allocation model may be a deep learning model, such as a DLRM (Deep Learning Recommendation Model) model.
[0055] Specifically, for example, taking conversion rate as the priority for seat allocation, the training process of the seat allocation model corresponding to the seat allocation model is as follows: obtaining multiple user-agent session data involving conversion rate from historical user-agent session data, and for each user-agent session data, obtaining user portrait data of the incoming user, agent portrait data of the accessed agent, interactive text data of the incoming user, and a product conversion label corresponding to the user-agent session data; based on the above-mentioned encoding processing method, encoding the user portrait data of the incoming user, agent portrait data of the accessed agent, and interactive text data of the incoming user are performed respectively to obtain the user portrait code, text feature code, and agent portrait code of the accessed agent for the incoming user; using the user portrait code, text feature code, agent portrait code, and product conversion label of each of the multiple user-agent session data involving conversion rate as training samples to train the deep neural network model, and obtaining a seat allocation model with conversion rate priority as the fitting target after training.
[0056] For example, taking efficiency as the priority for agent allocation, the training process of the agent allocation model corresponding to the agent allocation model is as follows: obtaining multiple user-agent conversation data from historical user-agent conversation data, and for each user-agent conversation data, obtaining the user portrait data of the incoming user, the agent portrait data of the access agent, the interactive text data of the incoming user, and the call duration label of the user-agent conversation; based on the above-mentioned encoding processing method, respectively encoding the user portrait data of the incoming user, the agent portrait data of the access agent, and the interactive text data of the incoming user to obtain the user portrait code, text feature code, and agent portrait code of the access agent for the incoming user; using the user portrait code, text feature code, agent portrait code, and call duration label of multiple user-agent conversation data involving conversion rate as training samples to train the deep neural network model, and obtaining the agent allocation model with efficiency as the fitting target after training.
[0057] For another example, if satisfaction is prioritized as the agent allocation target, the training samples of the agent allocation model corresponding to this agent allocation target are consistent with the training samples in the training process of the above-mentioned agent allocation model, except that the labels are replaced with the corresponding satisfaction scores of the incoming users for the agents.
[0058] Taking the DLRM model as an example, the process of the target agent allocation model to allocate agents based on agent portrait encoding, user portrait encoding and text feature encoding is introduced. Among them, the target agent allocation model includes an Embedding layer, a neural network layer, a feature cross layer and a target output layer. The Embedding layer processes the input agent portrait encoding, user portrait encoding and text feature encoding to obtain dense features and sparse features, and converts all features into dense features through embedding operations; The neural network layer receives the input of the Embedding layer and transforms each type of embedding through the network layer to extract deep features; The feature cross layer interacts the embedded features with other types of features (such as numerical continuous features) to capture the complex relationship between features and enhance the expression ability of the model; The target output layer is a fully connected neural network layer, which receives the output of the feature cross layer and performs different processing based on the fitting target to output the agent allocation result. As an example, for classification-related fitting targets such as conversion rate priority and satisfaction priority, the corresponding seat allocation model can use the sigmoid function or the softmax function to output the final seat allocation result. For the seat allocation model of numerical-related fitting targets such as efficiency priority, the relu function can be used to output the final seat allocation result.
[0059] In some embodiments, in order to avoid interference in the corresponding seat access caused by different users calling in successively, after the seat allocation result is determined, the state of the seat in the seat allocation result can be changed to a locked state. The locking time can be 2 seconds. After 2 seconds, the seat is removed from the locked seat list.
[0060] In some embodiments, the seat allocation method of the embodiment of the present invention can be executed by relying on the intelligent strategy center platform in the existing customer service system, or it can be executed by the call platform, or it can be executed by a separate electronic device. As an example, the seat allocation result obtained by the seat allocation method of the embodiment of the present invention can be returned to the intelligent strategy center as a response result of the seat allocation request, and the intelligent strategy center returns the seat allocation result to the upstream channel to realize the transfer of the seat. In the case where the seat allocation result includes multiple seats, the transfer process strictly follows the predetermined order. If the first seat fails to successfully pick up, the system will automatically transfer to the next seat until the last seat. If each seat fails to successfully pick up, the call platform can start the backup mechanism, find other idle seats for transfer based on the preset logic, or arrange queue waiting for the current incoming user in the corresponding queue to ensure the continuity and efficiency of the service.
[0061] According to the seat allocation method of the embodiment of the present invention, based on the current seat allocation target, a target seat allocation model is determined from multiple seat allocation models, and seats are allocated based on the target seat allocation model, so that multi-dimensional seat allocation can be achieved. The dimensions of the seat allocation model are switched in real time based on the current allocation target, thereby greatly improving the effect of seat allocation and the flexibility of seat allocation to meet allocation requirements in different scenarios.
[0062] In order to improve the efficiency and accuracy of seat allocation, the present invention provides another embodiment.
[0063] Figure 2 This is the second process intention of the seat allocation method provided in the embodiment of the present invention. Figure 2 As shown, based on the above embodiments, Figure 1 The implementation process of step 102 may include the following steps.
[0064] Step 201 : determining a plurality of target idle seats based on the seat portrait label of each idle seat in the idle seat list.
[0065] That is to say, the idle seats in the idle seat list are first screened based on the seat portrait label of each idle seat in the idle seat list to improve the efficiency and accuracy of seat allocation.
[0066] In some embodiments, an agent portrait label can be set in advance for each agent, and screening rules can be determined based on actual needs. The ability to stratify agents in the agent allocation process can be realized. By stratifying and screening the available agents based on the agent portrait labels, customers can be matched with seats that better meet business needs.
[0067] In some embodiments, the agent portrait label can cover multiple dimensions such as the agent's professional skills, work experience, service attitude, communication skills, etc., so as to fully reflect the agent's capabilities and characteristics. In addition, the agent portrait label can be customized based on the customer's business needs to ensure the accuracy of the agent allocation. For example, the agent label can be used to filter out the self-owned seats and crowdsourced seats, and transfer them to customers with different needs.
[0068] Among them, the access forms of the agent portrait tags of each idle seat may include: (1) Data insight platform: configure the agent portrait tags in the data insight platform, and obtain the agent portrait tags by calling the data verb platform offline or in real time. This method can make full use of existing data resources and provide strong data support for agent stratification; (2) Real-time interface: obtain the latest tag data by calling the real-time query interface of the agent portrait tag in real time. This method can ensure the real-time and accuracy of the agent stratification and provide customers with a better service experience; (3) Offline list: The offline list method uses the agent portrait tag offline query interface to call and obtain tag data at a regular interval. Although this method cannot achieve real-time updates, it is still a feasible option for some scenarios that do not require high real-time performance. (4) External system: Based on the external system settings, set the agent portrait tags in the external system platform and obtain the tag data through the corresponding interface.
[0069] As an example, based on the seat portrait tag of each idle seat in the idle seat list, the implementation process of determining multiple target idle seats may include: presetting the correspondence between different business scenarios and seat portrait tags; obtaining the current business scenario, and based on the correspondence between different business scenarios and seat portrait tags, determining the target seat portrait tag that matches the current business scenario; and filtering out the target idle seats corresponding to the target seat portrait tag from the idle seat list. The business scenario may be determined based on the current incoming call time, the interactive text data of the current incoming user, or the type of the current incoming user.
[0070] It should be noted that the agent portrait label is different from the agent portrait data. The agent portrait label can be a label set based on customer needs or business scenarios. It can be determined based on the agent portrait data or set based on customer needs. The agent portrait data contains agent information of different dimensions, which is used to comprehensively characterize the capabilities of each agent.
[0071] Step 202: Acquire the agent portrait data of each target idle agent, as well as the user portrait data and interactive text data of the current incoming user.
[0072] It should be noted that, in an embodiment of the present invention, when the seat portrait data is encoded in the subsequent steps, the seat portrait data refers to the seat portrait data of each target idle seat, and when the seat portrait code, user portrait code, and text feature code are input into the target seat allocation model, the seat portrait code is also the seat portrait code of each target idle seat.
[0073] According to the seat allocation method of the embodiment of the present invention, multiple target idle seats are determined based on the seat portrait label of each idle seat in the idle seat list; the seat portrait data of each target idle seat, as well as the user portrait data and interactive text data of the current incoming user are obtained, so that the idle seats in the idle seat list can be hierarchically screened, and the seat allocation result is determined through the seat allocation model based on the screened target idle seats, which can not only improve the accuracy and efficiency of seat allocation, but also enable the seat allocation to be flexibly configured to meet the needs of different scenarios.
[0074] In order to ensure balanced distribution of traffic and avoid the problem of idle seats, the present invention provides another embodiment.
[0075] Figure 3 The third flowchart of the seat allocation method provided in the embodiment of the present invention is shown in FIG. Figure 3 As shown, the seat allocation method of the embodiment of the present invention may include the following steps.
[0076] Step 301: In response to a seat allocation request, obtain a current idle seat list.
[0077] Step 302: Obtain the idle time of each idle seat in the idle seat list.
[0078] Step 303: If there is an overtime idle seat in the idle seat list, determine a second seat allocation result based on the overtime idle seat; wherein the overtime idle seat is an idle seat whose idle time is greater than or equal to the time threshold.
[0079] That is to say, if there is an idle seat with an idle time greater than or equal to the time threshold in the idle seat list, the seat allocation result is determined directly based on the idle seat with an idle time greater than or equal to the time threshold, and subsequent steps are no longer executed to avoid long-term idle seats and improve the balance of seat allocation.
[0080] The second seat allocation result may include one timeout idle seat or multiple timeout idle seats. When it includes multiple timeout idle seats, the second seat allocation result may also include the access order of each timeout idle seat determined based on the idle time, wherein the access order is the result of sorting the idle time of the timeout idle seats from large to small. The call platform may access the corresponding seats in sequence based on the access order in the second seat allocation result until the access is successful.
[0081] As an example, if there are multiple timeout idle seats, the timeout idle seat with the longest idle time can be used as the seat assigned to the current incoming user, that is, the timeout idle seat with the longest idle time is used as the second seat allocation result; if the number of timeout idle seats is one, the timeout idle seat can be directly used as the second seat allocation result.
[0082] As another example, if there are multiple idle seats with timeout, they can be sorted from large to small according to the idle time, and the first five idle seats with timeout and their access rankings in the sorting results are used as the second seat allocation result; when the number of idle seats with timeout is less than five, all idle seats with timeout and their access rankings are directly used as the second seat allocation result.
[0083] Step 304: If there is no timed idle seat in the idle seat list, obtain the seat portrait data of each idle seat in the idle seat list, as well as the user portrait data and interactive text data of the current incoming user.
[0084] That is, if the idle time of each idle seat in the current idle seat list is less than the time threshold, seat allocation is performed based on the seat allocation model.
[0085] Step 305 , respectively encode the agent portrait data, user portrait data and interactive text data to obtain the agent portrait code, user portrait code and text feature code.
[0086] Step 306: Based on the current seat allocation target, determine a target seat allocation model from a plurality of seat allocation models; wherein each seat allocation model corresponds to a seat allocation target.
[0087] Step 307, input the seat portrait code, user portrait code and text feature code into the target seat allocation model to obtain a first seat allocation result; wherein the target seat allocation model is trained based on the seat portrait code, user portrait code, text feature code corresponding to the historical user seat conversation data and the label corresponding to the current seat allocation target.
[0088] According to the seat allocation method of the embodiment of the present invention, based on the idle time of each idle seat in the idle seat list, it is determined whether there is an overtime idle seat. If there is an overtime idle seat, seat allocation is performed based on the overtime idle seat. If there is no overtime idle seat, seat allocation is performed based on the seat allocation model. The present invention can improve the seat allocation effect while ensuring the balance of seat allocation and avoiding the problem of long-term idle seats.
[0089] In order to further improve the balance of seat allocation, the embodiment of the present invention also provides another implementation solution.
[0090] Figure 4 FIG4 is a flow chart of the seat allocation method according to an embodiment of the present invention. Figure 4 As shown, based on the above embodiment, after the seat portrait code, user portrait code and text feature code are input into the target seat allocation model to obtain the first seat allocation result, the following steps may also be included.
[0091] Step 401, based on the clustering recall library, determine a recall seat that matches the first seat in the first seat allocation result; wherein the clustering recall library includes multiple seat groups, and each seat group includes multiple similar seats.
[0092] It is understandable that if seat allocation is always performed based on the seat allocation model, excellent seats may be frequently connected, resulting in call overload, while relatively poor and overloaded newly hired seats may face insufficient call volume or even be idle. Therefore, in order to avoid this situation, the embodiment of the present invention introduces a clustering recall library, so that seat allocation is performed based on other seats similar to the first seat in the first seat allocation result through the clustering recall library.
[0093] As an example, the clustering recall library is constructed based on the agent portrait data of all seats, and clustering processing is performed based on the agent portrait data of all seats to obtain multiple agent groups, and the multiple agent groups obtained are used as the clustering recall library.
[0094] In some embodiments, based on the clustering recall library, determining the recall seat that matches the first seat in the first seat allocation result may include: determining the target seat group to which the first seat belongs from multiple seat groups; and randomly selecting other seats other than the first seat from the target seat group as the recall seat. In other words, the recall seat is a replacement seat for the first seat.
[0095] In some embodiments, the first seat may be all seats in the first seat allocation result, or may be part of the seats in the first seat allocation result, for example, the seat with the highest access priority in the first seat allocation result. If the number of first seats is one, then another seat is taken from the target seat group as the recalled seat. If there are multiple first seats, then the recalled seat corresponding to each first seat may be determined respectively.
[0096] Step 402: Determine a third seat allocation result based on the recalled seat.
[0097] In some embodiments, if the number of recalled seats is consistent with the number of seats in the first seat allocation result, the recalled seats can be directly determined as the third seat allocation result. If the number of recalled seats is less than the number of seats in the first seat allocation result, the first seats in the first seat result are replaced with the corresponding recalled seats, and the seat results after replacement are used as the third seat allocation result.
[0098] In some embodiments, the number of access times of the seats within a preset time period can be monitored, for example, the number of access times of each seat in each first seat allocation result on the day can be monitored. When the number of access times of one or more seats in the first seat allocation result exceeds a threshold, the above step 401 is executed.
[0099] In other embodiments, the seat recall process can also be executed in time periods, for example, the seat recall is enabled for one hour every hour, that is, the seat access is performed according to the first seat allocation result, and one hour later, the seat access is performed according to the third seat allocation result, and one hour later, the seat access is performed again based on the first seat allocation result, and so on.
[0100] According to the seat allocation method of the embodiment of the present invention, based on the clustering recall library, a recall seat matching the first seat in the first seat allocation result is determined; wherein the clustering recall library includes multiple seat groups, each seat group includes multiple similar seats; based on the recalled seats, a third seat allocation result is determined. The present invention can balance the call volume between seats based on the clustering recall library, avoid excessive burden on excellent seats, and also provide more service opportunities for seats whose capabilities need to be improved or newly hired, which can not only improve the effect of seat allocation, but also reduce the seat churn rate.
[0101] In some embodiments, Figure 5 As shown, the clustering recall library can be constructed based on the following steps.
[0102] Step 501: Determine the seat feature vector of each seat based on the seat portrait data of all seats.
[0103] In some embodiments, the seat feature vector of each agent can be determined by the DSSM (Deep Structured Semantic Models) model. The DSSM model is a deep matching model that aims to map input features to a vector space through a deep neural network. Specifically, the agent portrait data of each agent can be input into the DSSM model. The DSSM model determines dense features and sparse features based on the agent portrait data, performs one-hot encoding on dense features, and embeds sparse features to reduce the dimension to a low-dimensional space. The processed features are concatenated, and the concatenated features are converted into fixed-length vectors through their respective fully connected layers, and feature extraction is performed through the Transformer to obtain the seat feature vector of each agent.
[0104] Step 502: cluster all seats based on the seat feature vectors to obtain multiple seat groups.
[0105] The clustering process in step 502 may be implemented based on a K-Means clustering method.
[0106] Step 503: construct a clustering recall library based on multiple agent groups.
[0107] It should be noted that when new seats are added, the clustering recall library can be updated based on the following steps: when new data points arrive, based on the distance between the new seat feature vector and the existing cluster center, the new seat is assigned to the nearest cluster or a new cluster is created according to the nearest neighbor strategy; after assigning the new data points, the average value of the points in the cluster is recalculated to update the cluster center so that the clustering structure better reflects the distribution characteristics of the data; for noise data or isolated points, thresholds are set for screening and processing to avoid adverse effects on the clustering results; by iterating the above steps multiple times, the clustering results are continuously optimized to obtain an updated clustering recall library.
[0108] It should also be noted that the clustering recall library can also be updated and optimized according to a preset period to ensure the accuracy of the data.
[0109] In some embodiments, Figure 4 The implementation process of determining the recall seat that matches the first seat in the first seat allocation result based on the clustering recall library in step 401 may include: determining the target seat group to which the first seat belongs from multiple seat groups; determining the similarity between the first seat and other seats based on the seat feature vector of the first seat and the seat feature vectors of other seats in the target seat group; and determining the recall seat from the target seat group based on the similarity. For example, the other seat with the highest similarity may be used as the recall seat corresponding to the first seat.
[0110] In order to implement the above embodiment, the present invention also provides a seat allocation device.
[0111] Figure 6 The structure diagram of the seat allocation device provided by the embodiment of the present invention is shown in FIG. Figure 6 As shown, the device includes a first acquisition module 610 , a second acquisition module 620 , an encoding module 630 , a determination module 640 and a third acquisition module 650 .
[0112] A first acquisition module 610 is used to obtain a current idle seat list in response to a seat allocation request; The second acquisition module 620 is used to acquire the seat portrait data of each idle seat in the idle seat list, as well as the user portrait data and interaction text data of the current incoming user; The encoding module 630 is used to encode the seat portrait data, the user portrait data and the interactive text data to obtain the seat portrait code, the user portrait code and the text feature code; A determination module 640 is used to determine a target seat allocation model from a plurality of seat allocation models based on a current seat allocation target; wherein each seat allocation model corresponds to a seat allocation target; The third acquisition module 650 is used to input the seat portrait code, user portrait code and text feature code into the target seat allocation model to obtain a first seat allocation result; wherein the target seat allocation model is trained based on the seat portrait code, user portrait code, text feature code corresponding to the historical user seat conversation data and the label corresponding to the current seat allocation target.
[0113] In some embodiments, the second acquisition module 620 is specifically used to: determine multiple target idle seats based on the seat portrait label of each idle seat in the idle seat list; obtain the seat portrait data of each target idle seat, as well as the user portrait data and interaction text data of the current incoming user.
[0114] In some embodiments, the encoding module 630 is specifically used to: encode the agent portrait data and the user portrait data based on the Embedding model to obtain the agent portrait code and the user portrait code; encode the interactive text data based on the text embedding method to obtain the text feature code.
[0115] In some embodiments, the second acquisition module 620 is specifically used to: obtain the idle time of each idle seat in the idle seat list; if there is an idle seat with timeout in the idle seat list, determine the second seat allocation result based on the idle seat with timeout; wherein, the idle seat with timeout is an idle seat whose idle time is greater than or equal to the time threshold; if there is no idle seat with timeout in the idle seat list, obtain the seat portrait data of each idle seat in the idle seat list, as well as the user portrait data and interactive text data of the current incoming user.
[0116] In some embodiments, the device also includes a recall module 660, which is used to: after inputting the seat portrait code, user portrait code and text feature code into the target seat allocation model to obtain the first seat allocation result, determine the recall seat that matches the first seat in the first seat allocation result based on the clustering recall library; wherein the clustering recall library includes multiple seat groups, each seat group includes multiple similar seats; based on the recalled seat, determine the third seat allocation result.
[0117] In some embodiments, the device also includes a construction module 670, which is used to: determine the seat feature vector of each seat based on the seat portrait data of all seats; cluster all seats based on the seat feature vector to obtain multiple seat groups; and construct a clustering recall library based on multiple seat groups.
[0118] In some embodiments, the recall module 660 is further used to: determine, from multiple seat groups, a target seat group to which the first seat belongs; determine the similarity between the first seat and the other seats based on the seat feature vector of the first seat and the seat feature vectors of other seats in the target seat group; and determine a recall seat from the target seat group based on the similarity.
[0119] It should be noted that the above explanations and descriptions in the embodiment of the seat allocation method are also applicable to the seat allocation device in the embodiment of the present invention, and will not be described in detail here.
[0120] Figure 7 An example of a physical structure diagram of an electronic device is shown in FIG. Figure 7 As shown, the electronic device may include: a processor 710, a communication interface 720, a memory 730 and a communication bus 740, wherein the processor 710, the communication interface 720 and the memory 730 communicate with each other through the communication bus 740. The processor 710 may call a computer program in the memory 730 to execute the steps of the seat allocation method.
[0121] For example, the method includes: in response to a seat allocation request, obtaining a current idle seat list; obtaining seat portrait data of each idle seat in the idle seat list, as well as user portrait data and interactive text data of the current incoming user; encoding the seat portrait data, user portrait data and interactive text data respectively to obtain an agent portrait code, a user portrait code and a text feature code; based on the current seat allocation target, determining a target seat allocation model from a plurality of seat allocation models; wherein each seat allocation model corresponds to an seat allocation target; inputting the seat portrait code, user portrait code and text feature code into the target seat allocation model to obtain a first seat allocation result; wherein the target seat allocation model is obtained by training based on the seat portrait code, user portrait code, text feature code corresponding to historical user seat conversation data and the label corresponding to the current seat allocation target.
[0122] In addition, the logic instructions in the above-mentioned memory 730 can be implemented in the form of a software functional unit and can be stored in a computer-readable storage medium when it is sold or used as an independent product. Based on this understanding, the technical solution of the present invention can be essentially or partly embodied in the form of a software product that contributes to the prior art. The computer software product is stored in a storage medium, including several instructions to enable a computer device (which can be a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the method described in each embodiment of the present invention. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), disk or optical disk, etc. Various media that can store program codes.
[0123] On the other hand, an embodiment of the present invention further provides a computer program product, which includes a computer program. The computer program can be stored on a non-transitory computer-readable storage medium. When the computer program is executed by a processor, the computer can execute the steps of the seat allocation method provided in the above embodiments.
[0124] The method includes: in response to a seat allocation request, obtaining a current idle seat list; obtaining seat portrait data of each idle seat in the idle seat list, as well as user portrait data and interactive text data of the current incoming user; encoding the seat portrait data, user portrait data and interactive text data respectively to obtain seat portrait code, user portrait code and text feature code; based on the current seat allocation target, determining a target seat allocation model from multiple seat allocation models; wherein each seat allocation model corresponds to an seat allocation target; inputting the seat portrait code, user portrait code and text feature code into the target seat allocation model to obtain a first seat allocation result; wherein the target seat allocation model is obtained by training based on the seat portrait code, user portrait code, text feature code corresponding to historical user seat conversation data and the label corresponding to the current seat allocation target.
[0125] On the other hand, an embodiment of the present invention further provides a processor-readable storage medium, wherein the processor-readable storage medium stores a computer program, and the computer program is used to enable a processor to execute the steps of the seat allocation method provided in the above embodiments.
[0126] The processor-readable storage medium can be any available medium or data storage device that can be accessed by the processor, including but not limited to magnetic storage (such as floppy disks, hard disks, magnetic tapes, magneto-optical disks (MO), etc.), optical storage (such as CD, DVD, BD, HVD, etc.), and semiconductor storage (such as ROM, EPROM, EEPROM, non-volatile memory (NANDFLASH), solid-state drive (SSD)), etc.
[0127] The device embodiments described above are merely illustrative, wherein the units described as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, they may be located in one place, or they may be distributed on multiple network units. Some or all of the modules may be selected according to actual needs to achieve the purpose of the scheme of this embodiment. Ordinary technicians in this field can understand and implement it without paying creative labor.
[0128] Through the description of the above implementation methods, those skilled in the art can clearly understand that each implementation method can be implemented by means of software plus a necessary general hardware platform, and of course, can also be implemented by hardware. Based on this understanding, the above technical solution is essentially or the part that contributes to the prior art can be embodied in the form of a software product, and the computer software product can be stored in a computer-readable storage medium, such as ROM / RAM, a disk, an optical disk, etc., including a number of instructions for a computer device (which can be a personal computer, a server, or a network device, etc.) to execute the methods described in each embodiment or some parts of the embodiments.
[0129] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, rather than to limit it. Although the present invention has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or make equivalent replacements for some of the technical features therein. However, these modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the embodiments of the present invention.
Claims
1. A seat allocation method, characterized in that: include: In response to the seat allocation request, obtain a current idle seat list; Acquire the seat portrait data of each idle seat in the idle seat list, as well as the user portrait data and interactive text data of the current incoming user; Encoding the seat portrait data, the user portrait data and the interactive text data respectively to obtain the seat portrait code, the user portrait code and the text feature code; Based on the current seat allocation target, determine a target seat allocation model from a plurality of seat allocation models; wherein each seat allocation model corresponds to a seat allocation target; The seat portrait code, the user portrait code and the text feature code are input into the target seat allocation model to obtain a first seat allocation result; wherein the target seat allocation model is trained based on the seat portrait code, the user portrait code, the text feature code corresponding to the historical user seat conversation data and the label corresponding to the current seat allocation target.
2. The method according to claim 1, characterized in that The acquiring of the seat portrait data of each idle seat in the idle seat list, as well as the user portrait data and interactive text data of the current incoming user, includes: Determining a plurality of target idle seats based on the seat portrait label of each idle seat in the idle seat list; Acquire the seat portrait data of each of the target idle seats, as well as the user portrait data and interactive text data of the current incoming user.
3. The method according to claim 1, characterized in that The encoding process is performed on the seat portrait data, the user portrait data and the interactive text data respectively to obtain the seat portrait code, the user portrait code and the text feature code, including: Based on the Embedding model, the seat portrait data and the user portrait data are respectively encoded to obtain the seat portrait code and the user portrait code; The interactive text data is encoded based on a text embedding method to obtain the text feature code.
4. The method according to claim 1, characterized in that: The acquiring of the seat portrait data of each idle seat in the idle seat list, as well as the user portrait data and interactive text data of the current incoming user, includes: Obtaining the idle time of each idle seat in the idle seat list; If there is an overtime idle seat in the idle seat list, determine the second seat allocation result based on the overtime idle seat; wherein the overtime idle seat is an idle seat whose idle time is greater than or equal to the time threshold; If the timeout idle seat does not exist in the idle seat list, the seat portrait data of each idle seat in the idle seat list, as well as the user portrait data and interactive text data of the current incoming user are obtained.
5. The method according to any one of claims 1 to 4, characterized in that After inputting the seat portrait code, the user portrait code and the text feature code into the target seat allocation model to obtain a first seat allocation result, the method further includes: Based on the clustering recall library, determining a recall seat that matches the first seat in the first seat allocation result; wherein the clustering recall library includes a plurality of seat groups, and each seat group includes a plurality of similar seats; Based on the recalled seats, a third seat allocation result is determined.
6. The method according to claim 5, characterized in that The clustering recall library is constructed based on the following method: Based on the seat portrait data of all seats, determine the seat feature vector of each seat; Based on the seat feature vectors, clustering is performed on all the seats to obtain the multiple seat groups; Based on the multiple agent groups, the clustering recall library is constructed.
7. The method according to claim 6, characterized in that The determining, based on the grouping and clustering recall library, a recall seat matching the first seat in the first seat allocation result comprises: Determining, from the plurality of seat groups, a target seat group to which the first seat belongs; Determining the similarity between the first seat and the other seats based on the seat feature vector of the first seat and the seat feature vectors of the other seats in the target seat group; Based on the similarity, the recalled agent is determined from the target agent group.
8. A seat allocation device, characterized in that: include: A first acquisition module, configured to acquire a current idle seat list in response to a seat allocation request; A second acquisition module is used to acquire the seat portrait data of each idle seat in the idle seat list, as well as the user portrait data and interactive text data of the current incoming user; An encoding module, used to encode the seat portrait data, the user portrait data and the interactive text data respectively to obtain the seat portrait code, the user portrait code and the text feature code; A determination module, configured to determine a target seat allocation model from a plurality of seat allocation models based on a current seat allocation target; wherein each seat allocation model corresponds to a seat allocation target; The third acquisition module is used to input the seat portrait code, the user portrait code and the text feature code into the target seat allocation model to obtain a first seat allocation result; wherein the target seat allocation model is trained based on the seat portrait code, user portrait code, text feature code corresponding to the historical user seat conversation data and the label corresponding to the current seat allocation target.
9. An electronic device comprising a processor and a memory storing a computer program, characterized in that: When the processor executes the computer program, the seat allocation method according to any one of claims 1 to 7 is implemented.
10. A non-transitory computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the seat allocation method according to any one of claims 1 to 7 is implemented.
11. A computer program product, comprising a computer program, characterized in that When the computer program is executed by a processor, the seat allocation method according to any one of claims 1 to 7 is implemented.