Data processing method, computer equipment, storage medium and program product
By dynamically configuring the filtering and sorting condition parameters of the business recommendation strategy and using multiple business executors for data processing, the problems of low efficiency and insufficient flexibility of the business recommendation system in the existing technology are solved, and more efficient and accurate business recommendations are achieved.
Patent Information
- Application Number
- CN202510100796.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-01-21
- Publication Date
- 2025-09-23
AI Technical Summary
Existing business recommendation systems find it difficult to dynamically configure filtering and sorting conditions based on user needs, resulting in low recommendation efficiency and lack of flexibility, and unable to accurately meet users' personalized needs.
By configuring parameters based on business recommendation strategies, business data can be dynamically filtered and sorted to generate recommended businesses that meet user needs, including custom configuration of filtering condition parameters and sorting condition parameters, and using multiple business executors to filter and sort data.
It improves the efficiency and flexibility of business recommendations, generates recommended businesses that better meet user needs, and improves the accuracy of recommendations and user satisfaction.
Smart Images

Figure CN120687653A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of data processing technology, and in particular to a data processing method, computer equipment, storage medium, and program product. Background Art
[0002] Business recommendations refer to recommending appropriate business services to users based on their needs and preferences. With the development of information technology, to simplify the business service recommendation process, the business data corresponding to the business service is usually queried based on the business question entered by the user, so as to select the business data that meets the user's needs. Summary of the Invention
[0003] The purpose of this application is to provide a data processing method, computer equipment, storage medium and program product.
[0004] In a first aspect, the present application provides a data processing method, comprising:
[0005] Determine configuration parameters for the generated business recommendation strategy based on the set configuration conditions, wherein the screening configuration parameters include filtering condition parameters and sorting condition parameters;
[0006] Filtering the first business data of the target business system based on the filtering condition parameters to obtain second business data;
[0007] Sort the second business data based on the sorting condition parameter to obtain third business data;
[0008] A first recommended service is generated based on the third service data.
[0009] In a second aspect, the present application provides a computer device comprising a processor and a memory, wherein the memory stores a plurality of instructions; the processor loads instructions from the memory to execute the steps of any data processing method provided in the embodiments of the present application.
[0010] In a third aspect, the present application provides a computer-readable storage medium, which stores a plurality of instructions suitable for loading by a processor to execute the steps of any data processing method provided in the embodiments of the present application.
[0011] In a fourth aspect, the present application provides a computer program product, which includes a computer program, and the computer program is executed by a processor to perform the steps of any data processing method provided in the embodiments of the present application.
[0012] The present application can configure the filtering configuration parameters corresponding to the business recommendation strategy according to the parameter configuration operation of the business recommendation strategy. The filtering configuration parameters may include filtering condition parameters and sorting condition parameters. In this way, for the business recommendation strategy, the first business of the target business system is first filtered based on the filtering condition parameters to obtain the second business data. Then, the second business data is sorted based on the sorting condition parameters to obtain the third business data. Finally, the first recommended business is generated based on the third business data. For different business recommendation strategies, the present application generates the first recommended business based on the dynamically configured filtering configuration parameters. In this way, without the need for separate code development, a recommended business that better meets user needs can be obtained, thereby improving the efficiency and flexibility of business recommendations.
[0013] Other features and advantages of the present application will be described in detail in the subsequent detailed description. BRIEF DESCRIPTION OF THE DRAWINGS
[0014] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the following briefly introduces the drawings required for use in the description of the embodiments. Obviously, the drawings described below are only some embodiments of the present application. For those skilled in the art, other drawings can be obtained based on these drawings without creative work.
[0015] Figure 1 A schematic diagram of an application environment of a data processing method provided in an embodiment of the present application;
[0016] Figure 2 A flowchart of a data processing method provided in an embodiment of the present application;
[0017] Figure 3 A schematic diagram of a data table structure design provided in an embodiment of the present application;
[0018] Figure 4 A schematic diagram of a screening condition configuration provided in an embodiment of the present application;
[0019] Figure 5 A flowchart of a method for generating a service recommendation strategy provided in an embodiment of the present application;
[0020] Figure 6 A schematic diagram of an interactive dialogue service flow provided in an embodiment of the present application;
[0021] Figure 7 A schematic diagram of generating a service recommendation strategy provided in an embodiment of the present application;
[0022] Figure 8 A flowchart of a contract recommendation method in a specific embodiment of the present application;
[0023] Figure 9 A schematic diagram of the internal structure of a computer device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0024] The following will be combined with the drawings in the embodiments of this application to clearly and completely describe the technical solutions in the embodiments of this application. Obviously, the embodiments described are only part of the embodiments of this application, not all of the embodiments. Based on the embodiments in this application, all other embodiments obtained by those skilled in the art without making creative efforts are within the scope of protection of this application.
[0025] In the description of this application, it should be understood that the terms "first" and "second" are used for descriptive purposes only and are not to be construed as indicating or implying relative importance or implicitly specifying the number of the technical features indicated. Therefore, features specified as "first" or "second" may explicitly or implicitly include one or more of the described features. In the description of this application, "plurality" means two or more, unless otherwise specifically qualified. In this application, the word "exemplary" is used to mean "serving as an example, illustration, or illustration." Any embodiment described in this application as "exemplary" is not necessarily to be construed as preferred or advantageous over other embodiments. The following description is provided to enable anyone skilled in the art to implement and use the present application. In the following description, details are listed for illustrative purposes. It should be understood that one of ordinary skill in the art will recognize that the present application can be implemented without these specific details. In other instances, well-known structures and processes are not described in detail to avoid obscuring the description of this application with unnecessary detail. Therefore, this application is not intended to be limited to the embodiments shown, but is to be accorded the widest scope consistent with the principles and features disclosed herein.
[0026] The data processing method in the embodiment of the present application is applied to computer equipment. Figure 1 As shown, Figure 1 This is a schematic diagram of an application scenario of the data processing method in an embodiment of the present application. The application scenario of the data processing method in an embodiment of the present application includes a computer device 100 for executing the data processing method. The computer device 100 is integrated with a computer-readable storage medium corresponding to running the data processing method to execute the steps of the data processing method.
[0027] It is understandable that Figure 1The electronic devices in the application scenario of the data processing method shown, or the devices included in the electronic devices, do not constitute a limitation on the embodiments of the present application. That is, the number of devices and types of devices included in the application scenario of the data processing method, or the number of devices and types of devices included in each device, do not affect the overall implementation of the technical solution in the embodiments of the present application, and can all be regarded as equivalent replacements or derivatives of the technical solution claimed to be protected in the embodiments of the present application.
[0028] In the embodiments of the present application, the computer device 100 may be a standalone device, or a device network or device cluster. For example, the computer device 100 described in the embodiments of the present application includes, but is not limited to, a computer, a network host, a single network device, a collection of multiple network devices, or a cloud device composed of multiple devices. A cloud device is composed of a large number of computers or network devices based on cloud computing.
[0029] Those skilled in the art will understand that Figure 1 The application scenario shown in the figure is only one application scenario corresponding to the technical solution of the present application and does not constitute a limitation on the application scenario of the technical solution of the present application. Other application scenarios may also include Figure 1 More or fewer electronic devices shown in, or electronic device network connection relationships, such as Figure 1 Only one electronic device is shown. It can be understood that the scenario of the data processing method can also include one or more other electronic devices, which are not limited here. The computer device 100 can also include a memory and a processor, and the memory is used to store information related to the data processing method.
[0030] In addition, in the application scenario of the data processing method in the embodiment of the present application, the computer device 100 can be provided with a display device, or the computer device 100 is not provided with a display device and is in communication connection with an external display device 200, and the display device 200 can be configured with an interactive interface for receiving input configuration data and outputting the results of the execution of the data processing method in the electronic device. The computer device 100 can access the background database 300. The background database 300 can be a local memory of the computer device 100, or it can be a cloud database set up in the cloud, and the background database 300 stores information related to the data processing method. In the embodiment of the present application, the computer device 100 can also communicate with the user terminal 400, and the user terminal 400 can receive data input by the user, as well as receive relevant data of the processed business recommendation sent by the computer device 100, so as to feed back the business recommendation to the user.
[0031] It should be noted that Figure 1The application scenario of the data processing method shown is merely an example. The application scenario of the data processing method described in the embodiment of the present application is intended to more clearly illustrate the technical solution of the embodiment of the present application and does not constitute a limitation on the technical solution provided in the embodiment of the present application.
[0032] Based on the application scenarios of the above data processing method, an embodiment of the data processing method is proposed and described in detail below with reference to the accompanying drawings.
[0033] Figure 2 Schematic diagram of a data processing method provided in an embodiment of the present application. Figure 2 As shown, in one embodiment, the present application provides a data processing method, which can execute steps 201-204 and other steps through the above-mentioned computer device 100, which is described in detail below.
[0034] Step 201: Obtain screening configuration parameters according to a parameter configuration operation for a service recommendation strategy. The screening configuration parameters include a filtering condition parameter and a sorting condition parameter.
[0035] Step 202: Filter the first business data of the target business system based on the filtering condition parameters to obtain second business data.
[0036] Step 203: Sort the second business data based on the sorting condition parameter to obtain third business data.
[0037] Step 204: Generate a first recommended service based on the third service data.
[0038] In embodiments of the present application, a service recommendation strategy refers to the service type and service configuration conditions determined based on the service request input by the user. When configuring the service recommendation strategy, multiple service types can be associated with corresponding configuration conditions. This allows the corresponding configuration conditions to be determined based on the determined service type. For example, if the service request input by the user is a resource delivery request, the service type can be determined based on the request to generate a resource delivery contract, and the corresponding configuration conditions can also be determined. In other words, the most appropriate resource delivery contract for the current situation needs to be generated based on all of the user's contract data and fed back to the user. Traditional service recommendations generally use dynamic Structured Query Language (SQL) to query data from a database and perform simple data filtering, such as operations such as greater than, equal to, or less than. Furthermore, the user's contract data cannot be directly retrieved from external business systems, such as accounting systems that store contract data. In embodiments of the present application, data interfaces can be set up to communicate with multiple business systems to obtain business data from different external business systems. Furthermore, the relevant business data of a service request will all have a single data type. Setting configuration conditions is not limited to simple data filtering conditions. You can also configure the data type corresponding to each field in the business data, configure the optional filtering conditions of the data type, and the corresponding filtering values, and abstract them into a data structure, and save the abstracted structure to the database.
[0039] In an embodiment of the present application, the target business system where the business data to be extracted is located can be determined based on the filtering configuration parameters, and then the first business data of the target system can be obtained through a data interface that communicates with the target business system. The first business data is the data of the target business system obtained. Then, based on the filtering configuration parameters that can be used to filter data, such as filtering condition parameters and sorting condition parameters, the first business data is filtered to filter out business data that does not meet user needs. By filtering the first business data, third business data that better meets user needs can be obtained. The third business data refers to the first business data remaining after filtering based on the configuration parameters, that is, the business data used for final recommendation to the user. Therefore, a first recommended business can be generated based on the third business data. The first recommended business is a recommended business that matches the third business data. In one example, a setting template for the first recommended business can be generated based on the type of business. The third business data is then filled into the corresponding position in the setting template to obtain the final first recommended business. The setting template can be set in advance based on the type and characteristics of the business.
[0040] The embodiment of the present application can dynamically filter the first business data of the target business system based on the configuration parameters of the custom configured business recommendation strategy to obtain third business data that better meets user needs, thereby generating the corresponding first recommended business, thereby improving the accuracy and flexibility of business recommendations.
[0041] In an embodiment of the present application, setting configuration conditions may include data source parameters, filter condition parameters, and sort condition parameters. The data source parameters refer to the target business system corresponding to the current business data, and the target business system is the system that stores business data related to the business request. In one example, data from different business systems can be queried by setting up data interfaces that communicate with multiple business systems. At the same time, extended data interfaces can also be dynamically configured so that the type and number of data interfaces can be added or deleted based on user needs. The filter condition parameters refer to the conditions for filtering the first business data of the target business system. In one example, the filter conditions can be dynamically configured and the configured conditions can be structured and stored in a condition group table (e.g., a MySQL table). During execution, the query parses the condition group, and the valid first business data is filtered according to the condition executor to generate the second business data. The second business data refers to the valid first business data that meets the filter conditions. The sort condition is the condition for sorting the filtered second business data. In one example, the sort conditions can also be dynamically configured, such as dynamically configuring the sort field and sort priority, and then structured and saved in the sort condition group table. When the business recommendation is executed, based on the sorting priority, the second business data that meets the set priority range can be selected, and in this way, the final third business data can be obtained. In addition, since the definition and completeness of the data fields of each target business system are not necessarily consistent with the system of the current computer device, other attribute fields of the business displayed to the user can also be configured according to actual needs. For example, for contract recommendations, it can be a subset of the common attribute list of multiple contracts. The above-mentioned filtering conditions and sorting conditions can be set in advance based on the configuration of the business personnel. Therefore, based on the set configuration conditions set in advance by the business personnel, when the information for generating the business recommendation strategy is received, the configuration parameters corresponding to the business recommendation strategy can be determined to filter the business data of the target business system.
[0042] In the embodiment of the present application, the screening configuration parameters may further include data source parameters. Before step 202, a target business system corresponding to the data source parameters may be determined, and first business data of the target business system may be acquired.
[0043] In an embodiment of the present application, the corresponding target data interface can be first determined based on the data source parameters in the screening configuration parameters, so as to obtain the first business data in the target business system through the target data interface. Among them, the target data interface is the data interface information in the data source parameters, and the target business system can be communicated with through the target data interface. In one example, the data interface identifier corresponding to each data source parameter can be configured, for example, the interface identity document (ID) can be configured. Based on the interface ID contained in the data source parameters, a connection is established with the database in the target business system to obtain the first business data of the target business system. It should be noted that the method of establishing a connection with the target business system through the data interface is not limited to the above-mentioned interface ID, and business data communication and transmission can also be carried out through other methods such as application programming interface (Application Programming Interface, API) key, uniform resource locator (Uniform Resource Locator, URL) address, etc., which are not limited here.
[0044] In this embodiment, each piece of business data may correspond to a data type. Therefore, in this embodiment, the data filtering condition parameters are configured based on the data type, and the field type and field data are configured. For example, selectable filtering conditions and corresponding filtering values are configured, abstracted into a data structure, and the abstracted structure is saved to the database. Figure 3 This is a schematic diagram of a data table structure design provided in an embodiment of the present application. Figure 3 As shown, data tables such as condition groups, condition units, data type tables, custom filter tables, and data type and filter relationship tables can be established. The content in each data table can be determined based on the input configuration information. Figure 3This is just an example and is not limited to this. In one example, a unique identifier ID (Identifier) is used as the primary key (PK) of a data table. For example, a condition group may include a business identifier business_id, a condition type identifier condition_type, an execution sequence number execute_sort_num, a creation time creat_time, and an update time update_time. A condition unit may include a condition group identifier condition_group_id, a unit English name unit_pro_en_name, a unit Chinese name unti_pro_cn_name, a unit condition identifier unit_condition_code, a unit condition name unti_condition_name, a unit expected value unit_expect_val, a condition group sequence group_sort_num, a business identifier business_id, a request identifier request_id, a condition group identifier condition_group_id, a condition unit identifier condition_unit_id, a data type data_type, and a data format data_str. A data type table may include an identifier code, a name name, and a creation time creat_time. A custom filter table may include a filter identifier filter_code, a filter name filter_name, and a creation time creat_time. The data type and filter relationship table can include the data type identifier (data_type_id), the filter identifier (filter_id), and the creation time (creat_id). The identifier code in the data type table can be a common Java data type, such as String, Enum, Integer, BigDecimal, and Double. Each data type in the data type and filter relationship table corresponds to a data_type_id. The custom filter table represents the current conditional filtering framework and implements the interface for performing data comparison operations. For example, it identifies the corresponding class implementation of the IDataComparatorExecutor interface. This identifier value can be used to find the corresponding comparison filter to perform data filtering. The data type and optional filter relationship table maintains the relationship between the filters that can be configured for each data type. For example, the integer data type can be configured with greater than, less than, or not equal to. The configuration condition group table divides multiple conditions into multiple groups according to the configuration, with each group containing multiple condition units. The relationship between each group is "and", indicating that the first business data that meets all the group conditions will be selected during execution. The multiple condition units within a group are in an "or" relationship, allowing for customized selection of the specific content of each group's condition units.The conditional execution unit table refers to the smallest unit for storing conditional execution. For data filtering, the relationship between the conditional unit and the condition is an "and" relationship. As such, the filtering conditions in the embodiments of the present application are not limited to simple filtering of single data structures such as greater than or less than. Filtering conditions can also be set based on needs to combine multiple data types. Conditional filtering can be performed on multiple types of data, improving the flexibility and efficiency of data filtering.
[0045] In an embodiment of the present application, the filter condition parameters may include configuration parameters corresponding to multiple condition groups, and the configuration parameters corresponding to the condition groups may include field types and field data corresponding to the field types. The field type refers to the condition definition of the filter condition, and the corresponding field data is the specific screening value of the filter condition. Business personnel can customize the field type and the corresponding field data in the interactive interface provided by the display device. At the same time, the execution order of each field type can also be customized.
[0046] Based on this, in step 202, the execution order of the condition groups in the filter condition parameters can be obtained. Then, according to the execution order, the first business data is filtered based on the field data of each field type in the condition group to obtain the second business data. For example, assume that the filter condition includes three condition groups: field type 1, its corresponding field data is a; field type 2, its corresponding field data is b; and field type 3, its corresponding field data is c. The execution order is field type 1, field type 2 and field type 3. In this way, the first business data can be filtered according to field data a first, and then filtered according to field data b and field data c in turn. The remaining first business data after filtering by the three condition groups is the second business data.
[0047] The following takes the business recommendation as a contract recommendation as an example. Figure 4 This is a schematic diagram of a screening configuration parameter provided in an embodiment of the present application. Figure 4 As shown, the filtering configuration parameters may include filtering condition parameters and sorting condition parameters. The sorting condition parameters may also include field type and field data. Please refer to the description of the filtering condition parameters and will not be repeated here. In the interactive interface provided by the display device, the configuration parameters corresponding to the contract recommendation strategy can be managed, and the business personnel can arbitrarily configure the filtering condition parameters and sorting condition parameters. After configuring the above-mentioned filtering conditions, the data entered by the business personnel can be converted into data of the condition group and condition unit structure in the database and saved to the database.
[0048] In an embodiment of the present application, after executing the filter condition parameters, the first business data can be divided into two types of data, one that meets the filter condition and the other that does not meet the filter condition, and stored in a persistent table so that it can be used as relevant data for business such as reports later. Therefore, an embodiment of the present application can establish a first database and a second database. The first database is used to store the first business data that meets the filter condition, and the second database is used to store the first business data that does not meet the filter condition. Then, the condition group is traversed in the order of execution, and the first business data of the field data of each field type in the matching condition group is placed in the first database, and the first business data of the field data of each field type in the non-matching condition group is placed in the second database. Finally, the first business data in the first database is used as the second business data, and the first business data in the second database is stored in a persistent table so that it can be extracted later when needed. In this way, the persistence of data classification can be achieved, and the efficiency of data acquisition for other related businesses is improved.
[0049] In an embodiment of the present application, the field type may include multiple types, and each field type corresponds to a business recommendation executor. Therefore, the first business data can be filtered by the business recommendation executor corresponding to the field type to obtain the second business data. Specifically, the business recommendation executor that matches the field type can be determined based on each field type in the condition group. Then, the first business data is compared with the field data corresponding to each field type through the business recommendation executor corresponding to each field type. Finally, the first business data is filtered according to the comparison result between the first business data and the field data to obtain the second business data.
[0050] In an embodiment of the present application, business personnel can configure and save the filtering conditions corresponding to the policy on the interactive interface of the display device, and extract the configured filtering condition data into the above object structure, thereby converting the filtering conditions into structured data and saving it to the MySQL database table for subsequent policy execution.
[0051] As an example, the business recommendation executor can be a numeric executor, a character executor, or a date executor. Among them, the numeric executor refers to an executor that performs operations related to numbers, such as: performing addition, subtraction, multiplication, division, size comparison, rounding and remainder operations, etc. The character executor refers to an executor that performs operations related to character and string data. For example, performing operations such as string concatenation, splitting, and replacement. The date executor refers to an executor that performs operations related to date and time data. For example, performing date calculations and date comparisons, etc. Compared with the screening mechanism in the related art, the embodiment of the present application can perform different operations through multiple types of executors, thereby improving the flexibility and applicability of data screening.
[0052] Specifically, if the service recommendation executor is a numeric executor, the numeric condition of the numeric executor can be used to filter out the second service data that meets the numeric condition from the first service data. If the service recommendation executor is a character executor, the string condition of the character executor can be used to filter out the second service data that meets the string condition from the first service data. If the service recommendation executor is a date executor, the date condition of the date executor can be used to filter out the second service data that meets the date condition from the first service data.
[0053] Based on the above configuration, the following describes the execution process of the contract recommendation executor, using the example of contract recommendation as a business recommendation. Assume that the business recommendation device is an intelligent customer service terminal B, which includes a response system, a recommendation system, and a knowledge base. The user terminal is an intelligent customer service terminal C. Users enter their business questions into the intelligent customer service terminal C through multiple channels. The response system first uses natural language processing (NLP) to determine the user's intent type, then iterates through all multi-round conversations to determine the starting point. During the multi-round conversation, when a contract recommendation node is reached, the corresponding contract policy is generated and data source parameters are obtained to determine the corresponding target business system. Then, based on the set condition groups, the system sequentially iterates through the condition groups, grouping contract data that meets the filter criteria into one group and contract data that does not meet the filter criteria into another group, thus achieving data persistence. When the traversal is completed, the multi-round answer is returned and, based on the user's input, a decision is made as to whether to terminate the business recommendation.
[0054] In an embodiment of the present application, the execution condition group is traversed, and the field type corresponding to the configuration condition, that is, the data field propertiesEn, and the field data, that is, the expected value expectVal, and the conditionCode value of the configuration condition parameter are obtained from the condition group. Through the conditionCode value of the condition, the corresponding data filtering executor is obtained, and the data datas that need to be filtered are called execute to perform data filtering. In one example, the data filtering executor can include 22 types, and the type of extended filter can be customized. The data filtering executor is illustrated below. Among them, datas represents the first business data that needs to be traversed, realVal is the actual data value of the first business data, and the list list is the first database for storing the first business data that meets the filter condition parameters. The removeList list is the second database for storing the first business data that does not meet the filter condition parameters.
[0055] Taking the numerical executor as an example, the numerical execution may include the following executors.
[0056] Numeric type equal to executor: traverse datas, obtain the realVal corresponding to propertiesEn through the reflection mechanism, and see whether expectVal is equal to the realVal value. The data that is equal is placed in the list list of satisfied data, and the data that does not meet the requirements is placed in the removeList list. Null is empty.
[0057] Numeric type is not equal to executor: traverse datas, obtain the actual realVal corresponding to propertiesEn through the reflection mechanism, and see if expectVal is not equal to the realVal value. The data that is not equal is put into the list list of satisfied data, and the data that is equal is put into the removeList list.
[0058] Numeric type greater than executor: traverse datas, obtain the realVal corresponding to propertiesEn through the reflection mechanism, and see whether realVal is greater than the expectVal value. The data that is greater than is placed in the list list of the satisfied data, and the data that is not greater than is placed in the removeList list.
[0059] Numerical greater than or equal to executor: traverse datas, obtain the realVal corresponding to propertiesEn through the reflection mechanism, and see whether realVal is greater than or equal to the expectVal value. If it is greater than or equal to the expectedVal value, the data will be placed in the list list of the data that meets the requirements, otherwise the data will be placed in the removeList list.
[0060] Numeric type less than or equal to executor: traverse datas, obtain the realVal corresponding to propertiesEn through the reflection mechanism, and see whether realVal is less than or equal to the expectVal value. If it is less than or equal to the expected value, the data is placed in the list list of the data that meets the requirements, otherwise the data is placed in the removeList list.
[0061] Numeric type less than executor: traverse datas, obtain the realVal corresponding to propertiesEn through the reflection mechanism, and see if realVal is less than the expectVal value. If it is less than the expected value, the data is placed in the list list that meets the data requirements, otherwise the data is placed in the removeList list.
[0062] Numeric null executor: traverse datas, obtain the realVal corresponding to propertiesEn through the reflection mechanism, and see if the realVal value is null. If the data is null, put it into the list list that meets the data requirements; otherwise, put the data into the removeList list.
[0063] Numerical non-null executor: traverse datas, obtain the realVal corresponding to propertiesEn through the reflection mechanism, and check whether the realVal value is not null. If the data is not null, put it into the list list that meets the data requirements, otherwise put the data into the removeList list.
[0064] Taking the character-type executor as an example, the character-type executor may include the following executors.
[0065] Character type contains executor: traverse datas, obtain the realVal corresponding to propertiesEn through the reflection mechanism, and see whether the realVal value contains the substring corresponding to the custom expectVal. The data containing the specified substring is placed in the list list of the satisfied data, otherwise the data is placed in the removeList list.
[0066] Character type does not contain executor: traverse datas, obtain the realVal corresponding to propertiesEn through the reflection mechanism, and see whether the realVal value contains the substring corresponding to the custom expectVal. Data that does not contain the specified substring is placed in the list list of satisfied data, otherwise the data is placed in the removeList list.
[0067] Character type empty executor: traverse datas, obtain the realVal corresponding to propertiesEn through the reflection mechanism, and see whether the realVal value is null or an empty string. If it is null or an empty string, the data is placed in the list list that meets the data requirements. Otherwise, the data is placed in the removeList list.
[0068] Character type non-empty executor: traverse datas, obtain the realVal corresponding to propertiesEn through the reflection mechanism, and check whether the realVal value is not null and not an empty string. If it is not empty and not an empty string, the data is placed in the list list that meets the data requirements, otherwise the data is placed in the removeList list.
[0069] Character type equal executor: traverse datas, obtain the realVal corresponding to propertiesEn through the reflection mechanism, compare whether the realVal value is equal to (equals) expectVal, and if it is equal, put the data into the list list that meets the data requirements, otherwise put the data into the removeList list.
[0070] Character type is not equal to executor: traverse datas, obtain the realVal corresponding to propertiesEn through the reflection mechanism, and compare whether the realVal value is not equal to (!equals) expectVal. If it is not equal, the data is put into the list list that meets the data requirements, otherwise the data is put into the removeList list.
[0071] Taking the date type executor as an example, the date type executor can include the following executors.
[0072] Date type empty executor: traverse datas, obtain the realVal corresponding to propertiesEn through the reflection mechanism, compare whether the realVal value is empty, and put the empty data into the list list that meets the data requirements, otherwise put the data into the removeList list.
[0073] Date type non-null executor: traverse datas, obtain the realVal corresponding to propertiesEn through the reflection mechanism, and compare whether realVal is not null. If it is not null, put the data that meets the data list, otherwise put the data into the removeList list.
[0074] Date type is later than executor: traverse datas, obtain the realVal corresponding to propertiesEn through the reflection mechanism, compare whether the date of realVal is later than the date corresponding to the expected value expectVal and greater than the time point data of this morning. If the comparison value is true, the data that meets the data list is placed in the list list, otherwise the data is placed in the removeList list.
[0075] Date type later than (including the current day) executor: traverse datas, obtain the realVal corresponding to propertiesEn through the reflection mechanism, compare whether the date of realVal is later than the date data corresponding to the expected value expectVal, and if the comparison value is true, the data is placed in the list list of the data that meets the requirements, otherwise the data is placed in the removeList list.
[0076] Date type is earlier than executor: traverse datas, obtain the realVal corresponding to propertiesEn through the reflection mechanism, compare whether the date of realVal is less than the date data corresponding to the expected value expectVal, and if the comparison value is true, the data is placed in the list list that meets the data requirements, otherwise the data is placed in the removeList list.
[0077] Date type earlier than (including today) executor: traverse datas, obtain the realVal corresponding to propertiesEn through the reflection mechanism, compare whether the date of realVal is earlier than the date data corresponding to the expected value expectVal, and if the comparison value is true, the data is placed in the list list of the data that meets the requirements, otherwise the data is placed in the removeList list.
[0078] Comparator for date type N days ago: traverses datas, obtains the realVal corresponding to propertiesEn through the reflection mechanism, and subtracts the current time from the value of expectVal to get the time point expectTime corresponding to the number of days, and compares whether the date of realVal is later than the expectTime. If it is later, the data that meets the requirements is put into the list list, otherwise the data is put into the removeList list.
[0079] The compared split list and removeList data are persisted to the conditional unit execution record table through the asynchronous thread pool. And the satisfied list data enters the next execution unit for execution. In the embodiment of the present application, the business recommendation executor respectively executes the filtering tasks corresponding to the field type. Compared with the simple filtering in the related art, the field type of the condition group is not restricted. The corresponding business recommendation executor can be configured, expanded and deleted according to user needs, making the filtering of the first business data more accurate and more flexible.
[0080] In step 203, the sorting method of the second service data and the priority range can be determined based on the sorting condition parameters. Then, the second service data are sorted based on the sorting method, and the second service data within the set priority range are selected as the third service data.
[0081] In an embodiment of the present application, the second business data filtered out based on the filter condition parameters may include multiple items, but the business data that ultimately needs to be displayed may be a set number, for example, only one of the second business data needs to be displayed. Therefore, after completing the data filtering, the filtered second business data can also be sorted, so that the final third business data can be selected based on the priority of the sorted second business data. In an embodiment of the present application, setting a priority range can indicate the number of third business data that ultimately need to be displayed. For example, assuming that the second business data are sorted by date, the second business data with a newer date has a higher priority, and the corresponding second business data is sorted higher, and the second business data with an older date has a lower priority, and the corresponding sort is lower. In this way, the second business data within the set priority range can be determined as the third business data that ultimately needs to be recommended to the user.
[0082] After sending the first recommended service to the user terminal, the user may not be satisfied with the current first recommended service. Therefore, in an embodiment of the present application, a reselection option may also be provided on the interactive interface of the user terminal to enable the user to reselect the recommended service. When an operation instruction for the first recommended service is received, such as a reselection instruction, that is, an instruction to re-recommend the service, a second recommended service may be generated based on the second service data, and the second recommended service is a recommended service that matches the second service data. Then, all the second recommended services corresponding to the second service data are sent to the user terminal so that the user can select a recommended service that meets the needs. For example, assume that after filtering the first service data based on the filtering condition parameters, 10 second service data are obtained. Then, based on the sorting condition parameters, the 10 second service data are sorted in reverse order by date, and the second service data with the most recent date is selected as the third service data to generate the first recommended service, and obtain 1 recommended contract. If the user is not satisfied with the recommended contract, he or she may reselect it through the operation button on the interactive interface, such as the reselect button. When a reselection instruction is received, a second recommended service, i.e., 10 recommended contracts, is generated based on the 10 pieces of second service data before sorting. These 10 recommended contracts are then recommended to the user terminal for selection. This can further improve the efficiency of service recommendations and user satisfaction.
[0083] In an embodiment of the present application, a service recommendation strategy may be generated based on an input service question. The service question may be determined by data input by a user at a user terminal. Figure 5 Schematic diagram of a method for generating a business recommendation strategy provided in an embodiment of the present application. Figure 5 As shown, the method for generating the service recommendation strategy may include steps 501-505.
[0084] Step 501: In response to a received business question, determine the intent type corresponding to the business question.
[0085] Step 502: Determine whether the intent type is a task-based intent. If so, proceed to step 603; otherwise, proceed to step 505.
[0086] Step 503: Enter the interactive dialogue service flow, which includes multiple interactive nodes.
[0087] Step 504: When the interactive dialogue service flow reaches a service recommendation node among the multiple interactive nodes, a service recommendation strategy is generated.
[0088] Step 505: Obtain feedback information corresponding to the business problem from the set knowledge base.
[0089] In this embodiment, step 501 can be implemented based on natural language processing (NLP) technology when determining the intent type corresponding to the question, wherein the intent type can include task-based intent and non-task-based intent. Task-based intent refers to a clearly expressed specific task or operation that is associated with a specific business. Non-task-based intent refers to a general intent that does not require association with related businesses, such as general inquiries, small talk, suggestions and feedback. In an embodiment of the present application, when a business question is received, the intent type corresponding to the business question can be determined first to select the next response processing.
[0090] For non-task intents, such as categorization or customized Q&A, corresponding feedback information can be selected from a pre-set knowledge base based on the characteristics of the business question. The pre-set knowledge base is a pre-set database that directly responds to non-task intents.
[0091] For task-based intents, you can enter the interactive dialogue business flow. The interactive dialogue business flow refers to a pre-set multiple interactions with the user terminal to obtain the user terminal's needs, and then enter the business recommendation step when the business recommendation node is triggered. For example, you can interact with the user terminal through a multi-round dialogue process. For task-based intents, you can also determine which business scenario's multi-round dialogue is required based on the business problem and the execution condition results of the published multi-round dialogue start node.
[0092] Figure 6 This is a schematic diagram of an interactive dialogue service flow provided in an embodiment of the present application. Figure 6 As shown, in an embodiment of the present application, a multi-round dialogue refers to interacting with a user terminal according to the process nodes in the flowchart drawn for the business, until the process reaches the triggering business recommendation node, and the multi-round dialogue ends. In an example, all multi-round dialogues for various business scenarios that have been published can be polled, where each process has a start node, and the preconditions for entering the multi-round dialogue process are configured. If the conditions configured in the start node are met, the multi-round dialogue process is entered, otherwise, the judgment of the next process start node is entered. When the intention of the user terminal hits the multi-round dialogue, the multi-round dialogue can be started according to the flowchart, and the dialogue process is executed in sequence according to the drawn interaction nodes. When a business recommendation node is encountered, the business policy configured for the business recommendation node will be determined.
[0093] Figure 7 This is a schematic diagram of a business recommendation strategy generated in an embodiment of the present application. Figure 7As shown in the figure, taking the contract recommendation service as an example, assuming the start node of the multi-round dialogue related to contract recommendation is met, the multi-round dialogue process for contract recommendation begins. First, it is determined whether the user has an outstanding contract. If so, the user enters the recommended contract node. At this point, a contract is recommended based on the contract phase 2 testing policy configured in the node. The user clicks on the contract to proceed with the contract repayment and other transactions. Therefore, the user only needs to enter the relevant business question on the user terminal to receive automated, intelligent business recommendations based on that question. The user no longer needs to sift through a large number of related businesses, which improves user satisfaction with business recommendations and enhances the efficiency of business recommendations. Based on the contract policy, the filter condition configuration list corresponding to the contract policy and the corresponding account data source can be found from the condition grouping table and the condition execution minimum unit table. The data source module is then executed to locate the original account data. Then, the original account data is traversed and executed one by one according to the filter condition priority. Each condition unit is identified by the configured condition filter, and the corresponding data filter is selected for data filtering. The data filter will divide the input data into two parts: data that meets the conditions and data that does not meet the conditions, thereby realizing data classification persistence.
[0094] The following uses the business recommendation in the embodiment of the present application as an example of contract recommendation to illustrate the data processing method in the embodiment of the present application.
[0095] In an embodiment of the present application, the contract recommendation node in the process drawing can be configured to select the same contract strategy, and directly obtain the contract strategy that has been enabled for the business. For example, after a certain business handles a multi-round process recommendation node and selects a certain strategy, such as strategy A, the multi-round process is directly saved and published, and then put into use. When the intent type input by the user terminal is obtained as a task-type intent, the multi-round process is entered and executed to the contract recommendation node, the -A strategy saved in the recommendation node in the process drawing can be obtained, thereby obtaining the data source parameters, filter condition parameters, sorting condition parameters, etc. corresponding to the A strategy, and then obtaining the recommended optimal contract.
[0096] Figure 8 FIG. 1 is a flow chart of a contract recommendation method in a specific embodiment of the present application. Figure 8 As shown, in a specific embodiment of the present application, it is assumed that the interactive dialogue service flow is a multi-round dialogue. The contract recommendation method may include steps 801-810.
[0097] Step 801: Receive a business problem input by a user, for example, the business problem is to deliver resources in advance.
[0098] Step 802: Determine whether the intent type of the business question is task-oriented. For example, NLP can be used to determine the intent type. If the intent type of the current business question is task-oriented, proceed to step 803. Otherwise, proceed to step 810: Obtain feedback information corresponding to the business question from the set knowledge base.
[0099] Step 803: Execute multiple rounds of dialogues in the set node sequence. Specifically, select the multiple rounds of dialogues that have been settled in advance first, and execute the dialogues in sequence according to the drawing nodes of the drawing process.
[0100] Step 804: Determine whether it is a contract recommendation node. If so, proceed to 805. Otherwise, return to 803.
[0101] Step 805: Acquire contract data, as well as filter condition parameters and sort condition parameters of the contract data from the current user's contract database.
[0102] Specifically, a contract recommendation strategy is generated based on the contract recommendation node, the target business system, such as the accounting system, is determined, and contract data containing user characteristics from the target business system is obtained. Furthermore, the corresponding filtering and sorting condition parameters for the contract data are obtained, resulting in the contractList data, which contains the details of the user's contract list pulled from the accounting system.
[0103] Step 806: Filter the contract data based on the filter condition parameters to obtain contract filtering results that meet the filter condition.
[0104] Specifically, contract data can be filtered through filters. The contractList data is copied to the filterDataList list in the filter. Based on the filter conditions, the contract filtering results that meet the filter conditions are obtained. For example, suppose the filter includes four filter conditions. The first filter condition is: Outstanding amount > 0. The outstanding amount field value ycwhAmt of the contract object in filterDatasList is obtained through reflection. Data that does not meet ycwhAmt > 0 is removed from the database, placed in noFilterList1, and then enters the next filter unit for execution. The second filter condition is: The repayment date is later than the current time. The repayment date value hkDate of the contract object in filterDatasList is obtained through reflection. Compare whether hkDate is later than the current time. Data that is not later than the current time is directly removed from the database, placed in noFilterList2, and then enters the next filter unit. The third filter condition is: The contract balance is greater than 0. The contract balance value contractYe of the contract object in filterDatasList is obtained through reflection. The code compares contractYe to see if it's greater than 0. Any data not greater than 0 is removed from the database and placed in noFilterList3, looping through the next filter unit. The fourth filter condition is whether the contract is valid. Reflection is used to obtain the contract status value of the contract object in filterDatasList, determine if the status is valid, and remove invalid data.
[0105] Step 807: Sort the contract filtering results based on the sorting condition parameters, and obtain a sorted list after formatting the data.
[0106] Step 808: Use the first piece of data in the sorted list as recommended contract data.
[0107] Specifically, the remaining contract business data after filtering can be fed into the sorter for sorting, resulting in a sortedList data set. For example, all user contracts can be retrieved from the target business system configured as a data source, and then a list of contracts with a valid account opening date can be selected. Finally, the contracts in the list are sorted in reverse order by account opening date, and the first data item retrieved is the optimal recommended contract data.
[0108] Step 809: Bind the recommended contract data to the answer structure of the responding user and return it to the user. After receiving the user's confirmation instruction, the early settlement service can be processed.
[0109] Specifically, the first data is obtained from the sortedList data and returned to the multi-round dialogue process. The multi-round dialogue process binds the contract details data to the answer structure of the response system and returns it to the user terminal and displays it to the user. The user can then click the confirmation option of the contract to handle the early settlement business.
[0110] The embodiment of the present application can combine contract strategy with contract business processing by adopting a contract recommendation strategy. The above-mentioned screening method can screen through multiple contracts of the user layer by layer to extract the contract data that is most suitable for the business. It should be noted that the above-mentioned contract data screening method that supports the contract recommendation strategy is very flexible in implementation. For example, a new custom filter can be quickly implemented by implementing the execution method of the IDataComparatorExecutor interface. Moreover, the data filter is bound to the data type of the contract detailed attribute. Since the data type is limited, once a certain type of sorter is developed once, it does not need to be developed again, because the filter is bound to the type of data. Therefore, the screening algorithm of the embodiment of the present application is not only limited to the contract recommendation business, but can also be quickly migrated to other business systems to filter other business data. As the company's business system continues to expand, it can be connected to multiple systems through the Software Development Kit (SDK) to realize dynamic configuration data filtering functions, thereby reducing development costs.
[0111] Based on the same inventive concept, an embodiment of the present application further provides a computer device, which can be a server or a terminal device, comprising a memory and a processor, wherein a computer program is stored in the memory, and the processor implements the steps of the above-mentioned data processing method when executing the computer program. Various functions are thereby implemented, such as: obtaining filtering configuration parameters based on parameter configuration operations for a service recommendation strategy, wherein the filtering configuration parameters include filtering condition parameters and sorting condition parameters; filtering first service data of a target service system based on the filtering condition parameters to obtain second service data; sorting the second service data based on the sorting condition parameters to obtain third service data; and generating a first recommended service based on the third service data.
[0112] The specific implementation of the above operations can be found in the previous embodiments and will not be repeated here.
[0113] In one embodiment of the present application, the internal structure diagram of the computer device can be as follows: Figure 9As shown. The computer device includes a processor, a memory, an input / output interface, a communication interface, a display unit and an input device. The processor, the memory and the input / output interface are connected via a system bus, and the communication interface, the display unit and the input device are connected to the system bus via the input / output interface. The processor of the computer device is used to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system and a computer program. The internal memory provides an environment for the operation of the operating system and the computer program in the non-volatile storage medium. The input / output interface of the computer device is used to exchange information between the processor and an external device. The communication interface of the computer device is used to communicate with an external terminal in a wired or wireless manner, and the wireless manner can be implemented through WIFI, a mobile cellular network, NFC (near field communication) or other technologies. When the computer program is executed by the processor, a data processing method is implemented. The display unit of the computer device is used to form a visually visible image, and can be a display screen, a projection device or a virtual reality imaging device. The display screen can be a liquid crystal display screen or an electronic ink display screen. The input device of the computer device can be a touch layer covering the display screen, or a button, trackball or touchpad set on the computer device casing, or an external keyboard, touchpad or mouse, etc.
[0114] Those skilled in the art will understand that Figure 9 The structure shown in the figure is only a block diagram of a part of the structure related to the solution of the present application, and does not constitute a limitation on the computer device to which the solution of the present application is applied. The specific computer device may include more or fewer components than shown in the figure, or combine certain components, or have a different component arrangement.
[0115] Based on the same inventive concept, an embodiment of the present application also provides a computer-readable storage medium, which may include: a read-only memory (ROM), a random access memory (RAM), a disk or an optical disk, etc.
[0116] Since the computer program stored in the computer-readable storage medium can execute any data processing method provided in the embodiments of the present application, the beneficial effects that can be achieved by any data processing method provided in the embodiments of the present application can be achieved. Please refer to the previous embodiments for details and will not be repeated here.
[0117] Based on the same inventive concept, embodiments of the present application further provide a computer program product or computer program, which includes computer instructions stored in a computer-readable storage medium. A processor of a computer device reads the computer instructions from the computer-readable storage medium and executes the computer instructions, causing the computer device to perform the methods provided in various optional implementations of the above embodiments.
[0118] It should be noted that the object data (including but not limited to user device information, user personal information, etc.) and conversation data involved in this application are all information and data authorized by the user or fully authorized by all parties, and the collection, use and processing of relevant data must comply with the relevant laws, regulations and standards of the relevant countries and regions. Those skilled in the art can understand that all or part of the processes in the above-mentioned embodiment methods can be implemented by instructing the relevant hardware through a computer program. The computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the embodiments of the above-mentioned methods.
[0119] Any reference to the memory, database or other media used in the various embodiments provided herein may include at least one of non-volatile and volatile memory. Non-volatile memory may include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetic random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory may include random access memory (RAM) or external cache memory, etc. As an illustration and not limitation, RAM can be in various forms, such as static random access memory (SRAM) or dynamic random access memory (DRAM).
[0120] The databases involved in the various embodiments provided herein may include at least one of a relational database and a non-relational database. Non-relational databases may include, but are not limited to, distributed databases based on blockchains. The processors involved in the various embodiments provided herein may include, but are not limited to, general-purpose processors, central processing units, graphics processing units, digital signal processors, programmable logic units, data processing logic units based on quantum computing, and the like.
[0121] In the above-mentioned computer-readable storage medium, computer device, and computer program product embodiments, the descriptions of each embodiment have different focuses. For parts not described in detail in a particular embodiment, reference can be made to the relevant descriptions of other embodiments. Those skilled in the art will clearly understand that, for the convenience and brevity of description, the specific working processes and beneficial effects of the above-mentioned computer-readable storage medium, computer program product, computer device, and corresponding units can be referred to the description of the data processing method in the above embodiments, and the details will not be repeated here.
[0122] The technical features of the above embodiments can be combined arbitrarily. To make the description concise, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.
[0123] The above is a detailed introduction to a data processing method, computer device, computer-readable storage medium and computer program product provided in the embodiments of the present application. Specific examples are used herein to illustrate the principles and implementation methods of the present application. The description of the above embodiments is only used to help understand the method of the present application and its core ideas. At the same time, for those skilled in the art, based on the ideas of the present application, there may be changes in the specific implementation methods and application scope. In summary, the content of this specification should not be understood as a limitation on the present application.
Claims
1. A data processing method, characterized in that: include: Obtaining screening configuration parameters according to a parameter configuration operation for the business recommendation strategy, wherein the screening configuration parameters include a filtering condition parameter and a sorting condition parameter; Filtering the first business data of the target business system based on the filtering condition parameters to obtain second business data; sorting the second business data based on the sorting condition parameter to obtain third business data; A first recommended service is generated based on the third service data.
2. The data processing method according to claim 1, wherein: The filtering condition parameters include configuration parameters corresponding to multiple condition groups, and the configuration parameters corresponding to each condition group include field type and field data; The filtering of the first business data of the target business system based on the filtering condition parameter to obtain the second business data includes: Determine the field type of each condition group and the field data corresponding to the field type based on the filtering condition parameters; The first business data is filtered based on the field type and the field data to obtain second business data.
3. The data processing method according to claim 2, characterized in that: The filtering the first business data based on the field type and the field data to obtain the second business data includes: Obtaining the execution order of the condition group; According to the execution order, the first business data is filtered based on the field data of each field type in the condition group to obtain the second business data.
4. The data processing method according to claim 2, wherein: Each field type corresponds to a business recommendation executor, and filtering the first business data based on the field type and the field data to obtain the second business data includes: Determining a business recommendation executor that matches the field type according to each field type in the condition group; Comparing the first business data with the field data corresponding to each field type by the business recommendation executor corresponding to each field type; The first business data is filtered according to a comparison result between the first business data and the field data to obtain the second business data.
5. The data processing method according to claim 4, characterized in that: The business recommendation executor is a numerical executor, a character executor or a date executor; The filtering the first business data according to the comparison result between the first business data and the field data to obtain the second business data includes: If the service recommendation executor is the numerical executor, second service data that meets the numerical condition is filtered out from the first service data according to the numerical condition of the numerical executor; If the service recommendation executor is the character type executor, the second service data that meets the character string condition is filtered out from the first service data according to the character string condition of the character type executor; If the business recommendation executor is the date-type executor, second business data that meets the date condition is filtered out from the first business data according to the date condition of the date-type executor.
6. The data processing method according to claim 3, characterized in that: The filtering of the first business data based on the field data of each field type in the condition group in the execution order to obtain the second business data includes: Traversing the condition group in the execution order, putting the first business data of the field data that matches each of the field types in the condition group into the first database, and putting the first business data of the field data that does not match each of the field types in the condition group into the second database; The first business data in the first database is used as the second business data.
7. The data processing method according to claim 1, wherein: The method further comprises: In response to the received business question, determining an intent type corresponding to the business question; If the intent type is a task-based intent, an interactive dialogue service flow is entered, and the interactive dialogue service flow includes multiple interactive nodes; When the interactive dialogue service flow is executed to a service recommendation node among the plurality of interactive nodes, generating the service recommendation strategy; If the intent type is a non-task intent, feedback information corresponding to the business problem is obtained from a set knowledge base.
8. A computer device, characterized in that: The method comprises a processor and a memory, wherein the memory stores a plurality of instructions; the processor loads instructions from the memory to execute the steps of the data processing method according to any one of claims 1 to 7.
9. A computer-readable storage medium, characterized in that The computer-readable storage medium stores a plurality of instructions, where the instructions are suitable for being loaded by a processor to execute the steps of the data processing method according to any one of claims 1 to 7.
10. A computer program product, characterized in that The computer program product comprises a computer program, and the computer program is used by a processor to execute the steps of the data processing method according to any one of claims 1 to 7.