Methods, apparatus, machine-readable storage media, and processors for a decision engine
By introducing Docker images and Kubernetes architecture into the decision engine, automated AI model training and deployment are achieved, solving the problems of traditional decision engines supporting fewer AI models and complex deployment, thus improving the flexibility and efficiency of the decision engine.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- CHINA CONSTRUCTION BANK
- Filing Date
- 2021-12-16
- Publication Date
- 2026-07-03
AI Technical Summary
Traditional decision engines support fewer AI models, and their deployment process is complex and technically challenging, making it difficult to automate and efficiently train and deploy models.
By introducing Docker image technology into the decision engine, using the SceneHub image library to automate the modeling and deployment of AI models, and combining the Kubernetes management architecture to decouple rules and AI models, it supports a variety of AI algorithms and data processing methods, enabling one-click modeling and deployment.
It improves the flexibility and usability of the decision engine, reduces the technical background requirements for business personnel, enables cross-platform migration and efficient model training and deployment, and improves modeling efficiency and quality.
Smart Images

Figure CN114217825B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of computer technology, and more specifically to a method, apparatus, machine-readable storage medium, and processor for a decision engine. Background Technology
[0002] Traditional business logic was initially implemented through "hard-coding" embedded code. With the advent of decision engines, business logic rules can be developed using a graphical editor, including decision tables, decision trees, expert scoring cards, and other rule formats, enabling rapid response to business needs. The constructed decision model is then validated and analyzed through data simulation, and the decision model file is subsequently published in the decision engine and takes effect immediately. The decision engine receives data input, performs calculations according to the business logic defined in the decision model, and ultimately outputs the decision result. The introduction of decision engines significantly reduces development workload, and business logic can be adjusted on demand at any time; once the rules are adjusted and deployed, the business operation logic takes effect immediately. Traditional decision engines are primarily rule-based, mainly including a strategy development environment for business personnel, PMML file import functionality for simple machine learning models, and a final model deployment service.
[0003] For the installation and configuration of traditional decision engines, taking BlazeAdvisor from the US-based FICO company as an example, the steps include installing and configuring the Java Development Kit (JDK) environment, installing the main decision engine program, installing a web server and database to support real-time deployment and data management, and finally manually configuring some parameters. After the decision engine is installed, business personnel can configure rules and policies through a visual interface. They can import Predictive Model Markup Language (PMML) files from some simple Artificial Intelligence (AI) models, ultimately generating the decision engine's model files and publishing the service through a web server. Traditional decision engines only provide PMML model file import functionality, and PMML model files support limited AI algorithms and data preprocessing capabilities; therefore, traditional decision engines support a limited number of AI models. Summary of the Invention
[0004] The purpose of this application is to provide a method, apparatus, machine-readable storage medium, and processor for a decision engine, aiming to solve the problem that traditional decision engines in the prior art support fewer AI models.
[0005] To achieve the above objectives, a first aspect of this application provides a method for a decision engine, comprising:
[0006] Determine the business scenarios and sample data for selecting external AI model nodes based on the decision engine;
[0007] Find the first Docker image corresponding to the business scenario from the preset scenario image library;
[0008] The first Docker image is controlled to model based on sample data, resulting in a model file;
[0009] Control the deployment of model files using the first Docker image.
[0010] In this embodiment of the application, controlling the first Docker image to model based on sample data includes:
[0011] Control the first Docker image to access sample data;
[0012] The system controls the first Docker image to train the AI model in the modeling framework within the first Docker image based on the invoked sample data and the training code within the first Docker image.
[0013] In this embodiment of the application, controlling the deployment of the model file by the first Docker image includes:
[0014] Control the first Docker image to publish the AI model service interface based on the model file.
[0015] In this application embodiment, the method for the decision engine further includes:
[0016] Obtain rule node selection instructions from external sources based on rule node input within the decision engine;
[0017] The first rule node selected externally is determined based on the rule node selection instruction;
[0018] Obtain external AI model node selection instructions based on AI model node input;
[0019] The first externally selected AI model node is determined based on the AI model node selection instruction;
[0020] A decision flow is generated based on the first rule node and the first AI model node.
[0021] In this application embodiment, the method for the decision engine further includes:
[0022] Obtain external modeling and deployment instructions based on the first preset control input;
[0023] In response to modeling and deployment instructions, control the Docker image to model and deploy according to the decision flow, wherein the Docker image includes the first Docker image.
[0024] In this application embodiment, the method for the decision engine further includes:
[0025] Obtain the export command input from an external source based on a second preset control;
[0026] In response to an export command, output one or more of the following: decision flow, model file, and deployed image file.
[0027] In this application embodiment, the method for the decision engine further includes:
[0028] Determine the second Docker image corresponding to the general rule model;
[0029] Control the second Docker image to model and deploy according to the rules corresponding to the first rule node.
[0030] In this application embodiment, the method for the decision engine further includes:
[0031] Obtain the rule model service corresponding to the first rule node and the AI model service corresponding to the first AI model node;
[0032] Create a Pod container group for the rule model service;
[0033] Create the AI model service Pod corresponding to the AI model service;
[0034] Based on Kubernetes, the Service assigns the same entry address to both the Rule Model Service Pod and the AI Model Service Pod.
[0035] In this application embodiment, the method for the decision engine further includes:
[0036] Assign the first node to the rule model service Pod;
[0037] Assign a second Node to the AI model service Pod, where the second Node is different from the first Node;
[0038] Determine the resource usage information of the second node by the AI model service Pod when the AI model is running;
[0039] The number of AI model service Pods in the second Node is determined based on resource usage information.
[0040] In this application embodiment, the method for the decision engine further includes:
[0041] Establish the management relationships between Service, rule model service Pod, and AI model service Pod;
[0042] Determine if the number of Pods managed by the Service meets the access requirements;
[0043] If the access requirement is not met, create or destroy the Pod based on the access requirement.
[0044] In this application embodiment, the method for the decision engine further includes:
[0045] Obtain scene information from sample data;
[0046] The category of Docker images in the preset scenario image library is determined based on the scenario information.
[0047] In this application embodiment, the method for the decision engine further includes:
[0048] Obtain the path to external sample data selected based on AI model nodes;
[0049] The sample data is determined based on the path.
[0050] A second aspect of this application provides a processor configured to perform the above-described method for a decision engine.
[0051] A third aspect of this application provides an apparatus for a decision engine, including the processor described above.
[0052] A fourth aspect of this application provides a machine-readable storage medium storing instructions that, when executed by a processor, cause the processor to perform the aforementioned method for a decision engine.
[0053] The fifth aspect of this application provides a computer program product, including a computer program that, when executed by a processor, implements the above-described method for a decision engine.
[0054] Through the above technical solutions
[0055] Other features and advantages of the embodiments of this application will be described in detail in the following detailed description section. Attached Figure Description
[0056] The accompanying drawings are provided to further illustrate the embodiments of this application and form part of the specification. They are used together with the following detailed description to explain the embodiments of this application, but do not constitute a limitation on the embodiments of this application. In the drawings:
[0057] Figure 1 The schematic diagram illustrates a flow chart of a method for a decision engine according to an embodiment of this application;
[0058] Figure 2This illustration schematically shows a classification diagram of Docker images in a preset scenario image library according to an embodiment of this application;
[0059] Figure 3 This illustration schematically shows a process diagram of modeling in step 206 according to an embodiment of this application;
[0060] Figure 4 The schematic diagram illustrates the process deployed in step 208 according to an embodiment of this application;
[0061] Figure 5 A schematic flowchart of a method for a decision engine according to another embodiment of this application is shown;
[0062] Figure 6 A functional block diagram of the decision flow according to another embodiment of this application is illustrated schematically;
[0063] Figure 7 A flowchart illustrating modeling and deployment according to another embodiment of this application is shown schematically;
[0064] Figure 8 This illustration schematically shows a deployment diagram of a decision engine according to another embodiment of this application;
[0065] Figure 9 The diagram illustrates the internal structure of a computer device according to an embodiment of this application. Detailed Implementation
[0066] To make the objectives, technical solutions, and advantages of the embodiments of this application clearer, the technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. It should be understood that the specific embodiments described herein are only for illustration and explanation of the embodiments of this application and are not intended to limit the embodiments of this application. All other embodiments obtained by those skilled in the art based on the embodiments of this application without creative effort are within the scope of protection of this application.
[0067] It should be noted that if the embodiments of this application involve directional indicators (such as up, down, left, right, front, back, etc.), the directional indicators are only used to explain the relative positional relationship and movement of the components in a certain specific posture (as shown in the figure). If the specific posture changes, the directional indicators will also change accordingly.
[0068] Furthermore, if the embodiments of this application involve descriptions such as "first" or "second," these descriptions are for descriptive purposes only and should not be construed as indicating or implying their relative importance or implicitly specifying the number of technical features indicated. Therefore, features defined with "first" or "second" may explicitly or implicitly include at least one of those features. Additionally, the technical solutions of various embodiments can be combined with each other, but this must be based on the ability of those skilled in the art to implement them. If the combination of technical solutions is contradictory or impossible to implement, it should be considered that such a combination of technical solutions does not exist and is not within the scope of protection claimed in this application.
[0069] Figure 1 A schematic flowchart illustrating a method for a decision engine according to an embodiment of this application is shown. Figure 1 As shown in one embodiment of this application, a method for a decision engine is provided, which may include the following steps:
[0070] Step 202: Determine the business scenarios and sample data for external selection based on the AI model nodes within the decision engine.
[0071] It should be understood that the AI model portion of a traditional decision engine is an independent module, imported as a pre-trained AI model PMML file, which is completely different from the design of rule nodes. In this embodiment, the AI model portion is designed as a node, just like rule nodes (such as rule sets, rule tables, rule trees, code expressions, and decision flows). In this way, business personnel can combine rule nodes and AI model nodes through a graphical interface to design the decision flow.
[0072] In practical implementation, the design of AI model nodes and rule nodes can be implemented in the decision engine based on the Rete algorithm and the Drools open-source decision engine.
[0073] It should be understood that business scenarios refer to use cases related to specific business operations, such as anti-fraud, anti-money laundering, credit lending, third-party payments, and supply chain finance. Sample data refers to the data used to train the AI model.
[0074] In practical implementation, business personnel can select the icon corresponding to the AI model node from the menu, drag it into the decision flow of the design, double-click the selected AI model node, and then select the business scenario and sample data path corresponding to the AI model in the pop-up AI model node definition dialog box. After obtaining the business scenario and sample data path selected by the external AI model node, the system determines the selected business scenario as the business scenario used in this application embodiment, and determines the sample data according to the selected path.
[0075] Step 204: Locate the first Docker image corresponding to the business scenario from the preset scenario image library.
[0076] The preset scene image library SceneHub contains a series of Docker images that support automatic modeling and automatic deployment. When designing AI model nodes, business personnel can select the business scene in SceneHub and pull the corresponding Docker image (i.e., the first Docker image) from SceneHub to complete the design of the AI model node.
[0077] It's important to note that the closer the Docker image classification in SceneHub is to the actual business scenario of the sample data, the better the automated modeling effect. To achieve better modeling results, the decision engine can build a multi-level classification SceneHub guided by the business scenario. In one example, scene information from the sample data can be obtained; based on this scene information, the category of the Docker images in SceneHub can be determined.
[0078] Figure 2 This illustration shows a classification diagram of Docker images in a preset scenario image library according to an embodiment of this application. (See also...) Figure 2 SceneHub's Docker images are categorized into business scenarios such as anti-fraud, anti-money laundering, credit lending, third-party payment, and supply chain finance. Anti-fraud scenarios can be further subdivided into loan fraud, fraudulent activity, "wool party" (a term referring to groups exploiting promotional offers), and fake SMS messages; anti-money laundering scenarios can be subdivided into list screening and suspicious transaction monitoring; and credit scenarios include pre-loan, during-loan, and post-loan stages. As SceneHub's multi-level classification continues to improve, these scenarios can be further subdivided. For example, suspicious transaction monitoring within anti-money laundering can be further subdivided into scenarios such as abnormal wire transfer transactions, abnormal trade finance transactions, and abnormal real estate activities.
[0079] Step 206: Control the first Docker image to model based on the sample data and obtain the model file.
[0080] Each Docker image in SceneHub corresponds to a specific business scenario. The Docker image includes an AutoML module and an AutoDeploy module. The AutoML module contains the training code for that business scenario and best practice automated modeling frameworks, such as Auto-Sklearn, MLBox, Tree-based Pipeline Optimisation Technique (TPOT), H2O, and Auto-Keras. After determining the sample data, the system can control the first Docker image to call the sample data; and control the first Docker image to train the AI model in the modeling framework in the first Docker image based on the called sample data and the training code in the first Docker image.
[0081] Figure 3 This schematic diagram illustrates the modeling process in step 206 according to an embodiment of the present application, and is also referred to in conjunction with... Figure 3 After determining the sample data and business scenario, the AutoML module in the first Docker image can automatically perform functions such as data preprocessing, feature engineering, feature selection, AI model training, and optimal model selection, and finally send the trained model file to the AutoDeploy module.
[0082] Step 208: Control the first Docker image to deploy the model files.
[0083] The AutoDeploy module in the Docker image is used to deploy model files output by the AutoML module. The deployment frameworks within the AutoDeploy module can include TensorFlow Serving, Torchserve, MLflow, Kubeflow, Cortex, Seldon, etc., supporting various AI models trained on different frameworks for different business scenarios. The system can control the first Docker image to publish AI model service interfaces based on the model files; these AI model service interfaces refer to the API calls for AI model services.
[0084] Figure 4 A schematic diagram illustrating the deployment in step 208 according to an embodiment of this application is shown, and reference is made to... Figure 4 After training, the model files obtained by the AutoML module are automatically pushed to the corresponding deployment framework path in the AutoDeploy module, and an AI model service interface is output for external use. This AI model service interface is automatically bound to the rule nodes that are related to each other in the rule model during the decision flow design, without the need for manual configuration.
[0085] It's important to note that traditional decision engines have several shortcomings: First, they require customized deployment and have numerous software dependencies. Developers need to spend a significant amount of time deploying the engine in development, testing, and production environments, and it's difficult to ensure consistency between these environments and the actual production environment. Second, traditional decision engines have weak support for AI models, only offering the ability to import PMML format model files. The design methods for AI models differ greatly from those for rule nodes, and PMML supports limited AI algorithms and data preprocessing capabilities, while also lacking support for AI model computation acceleration. Third, traditional decision engines require business personnel to train AI models using third-party platforms before importing them, demanding expertise in complex data cleaning, feature engineering, feature selection, AI modeling, and model deployment, resulting in a high technical threshold and learning cost.
[0086] In this implementation, the decision engine is configured and runs using Docker technology, exhibiting excellent cross-platform migration capabilities, enabling configuration from a single point and operation across multiple platforms. By setting AI model nodes within the decision engine, it overcomes the limitation of traditional decision engines that only support PMML format model files, supporting all AI algorithms, AI frameworks, and data processing methods. This eliminates the need to use third-party platforms to train commonly used scoring cards or other AI models, thus improving the decision engine's flexibility. Automated modeling and deployment within Docker images reduces the technical background requirements for business personnel in data processing, feature engineering, algorithm selection, model training, parameter tuning, evaluation, and deployment, improving the decision engine's usability. The business-scenario-oriented SceneHub design facilitates the continuous accumulation and consolidation of enterprise data and AI model value, enhancing modeling efficiency and quality.
[0087] Figure 5 A schematic flowchart of a method for a decision engine according to another embodiment of this application is illustrated. Figure 5 As shown, in another embodiment of this application, based on one embodiment, the method for a decision engine may further include the following steps:
[0088] Step 102: Obtain the rule node selection instruction from the external rule node input within the decision engine.
[0089] Step 104: Determine the first rule node selected externally based on the rule node selection instruction.
[0090] Step 106: Obtain the AI model node selection instruction based on the external AI model node input.
[0091] Step 108: Determine the first externally selected AI model node according to the AI model node selection instruction.
[0092] Step 110: Generate a decision flow based on the first rule node and the first AI model node.
[0093] It should be understood that the AI model part in the traditional decision engine is an independent module, and it is introduced by importing the PMML file of the externally trained AI model, which is completely different from the design of the rule node.
[0094] Figure 6 A functional block diagram of a decision flow according to another embodiment of this application is illustrated schematically. (See also...) Figure 6 In this embodiment, the AI model part is designed as a node, just like rule nodes such as rule sets, rule tables, rule trees, code expressions, and decision flows. In this way, external business personnel can combine rule nodes and AI model nodes by selecting or dragging on the graphical interface to design the decision flow.
[0095] In practical implementation, the design of AI model nodes and rule nodes can be implemented in the decision engine based on the Rete algorithm and the Drools open-source decision engine.
[0096] Furthermore, the method used for the decision engine may also include the following steps:
[0097] Step 112: Obtain external modeling and deployment instructions based on the first preset control input.
[0098] Step 114: In response to the modeling and deployment instructions, control the Docker image to model and deploy according to the decision flow, wherein the Docker image includes the first Docker image.
[0099] In one example, after the decision flow is generated, an AI model node definition dialog box can be displayed on the graphical interface, allowing external parties to select business scenarios and sample data. Once the business scenarios and sample data are determined, a first preset control, such as a "one-click modeling and deployment" control, can be displayed on the graphical interface. When external modeling and deployment instructions are received based on this control, the Docker image can be automatically modeled and deployed, achieving one-click automated modeling and deployment of the decision model.
[0100] Figure 7 A flowchart illustrating modeling and deployment according to another embodiment of this application is shown schematically. (See also...) Figure 7 In response to modeling and deployment commands, the Docker image completes the modeling and deployment of rule nodes and AI model nodes respectively.
[0101] The modeling and deployment of AI model nodes can be achieved by pulling the first Docker image of the business scenario from SceneHub. The first Docker image can then be used to model and deploy the AI model and provide an AI model service interface for external calls. For details, please refer to the above embodiment; further elaboration is omitted here.
[0102] The modeling and deployment of rule nodes differ from those of AI model nodes. Specifically, a second Docker image corresponding to the general rule model can be determined; this second Docker image is then controlled to model and deploy according to the rules corresponding to the first rule node. The rule model service implements the functionality of the AI model node in the decision flow by calling the AI model service interface, and provides a unique decision service interface to the outside world.
[0103] Furthermore, the method used for the decision engine may also include the following steps:
[0104] Step 116: Obtain the export command input from the outside based on the second preset control.
[0105] Step 118, in response to the export command, output one or more of the decision flow, model file, and deployed image file.
[0106] In one example, after deployment is complete, a second preset control, such as an "Export" control, can be displayed on the graphical interface. When an export command is received from an external source based on this control, one or more of the decision flow, model file, and deployed image file can be output, thus realizing the cross-platform migration of the decision engine.
[0107] It should be noted that in traditional decision engines, for deployed decision engine services supporting AI models, the AI model module and the rule module are too tightly coupled, making it difficult to automatically adjust the computing power requirements of the AI model module. To solve this problem, embodiments of this application can also decouple the rule model service and the AI model service based on Docker containerization technology and Kubernetes container management architecture.
[0108] Kubernetes, also known as K8S, is a portable, scalable, and automated open-source platform for implementing Linux container operations. It helps users save a lot of manual deployment and scaling operations in the application containerization process, and can also be used to manage containerized workloads and services, supporting declarative configuration and automation.
[0109] A Pod is the smallest deployable unit of computing that can be created and managed in Kubernetes, and typically consists of one or more containers.
[0110] A Node is the workload that actually runs a Pod in Kubernetes. A Node can be a virtual machine or a physical machine.
[0111] Specifically, it can obtain the rule model service corresponding to the first rule node and the AI model service corresponding to the first AI model node; create a rule model service container group Pod corresponding to the rule model service; create an AI model service Pod corresponding to the AI model service; and allocate the same entry address to the rule model service Pod and the AI model service Pod based on Kubernetes Service.
[0112] In the Kubernetes management architecture, both the rule model service and the AI model service are packaged into Docker images, each a Pod, and both can provide services externally via IP addresses. However, since each Pod has a lifecycle, its IP address changes after destruction and recreation. Therefore, the Kubernetes Service mechanism can be used to provide a fixed and unified access interface and load balancing capabilities for the rule model service Pod and the AI model service Pod. Figure 8 A schematic diagram illustrating the deployment of a decision engine according to another embodiment of this application is shown. (See also...) Figure 8 Service A is composed of a rule model service Pod and an AI model service Pod. The rule model service Pod mainly contains various rule sets, decision tables, decision trees, etc., in the decision flow. The AI model service Pod provides an artificial intelligence model service interface, which supports remote procedure call (RPC) frameworks such as Google Remote Procedure Call (GRPC) or Baidu Remote Procedure Call (BRPC). The choice of AI framework can be based on business scenario requirements, such as scikit-learn, PyTorch, or TensorFlow. When using AI models (such as Xgboost, LightGBM, or deep learning neural network models) for judgment based on the needs of the decision flow nodes, the rule model service Pod calls the internal service interface of the AI model service Pod, passing in the feature parameters required for AI model calculation. After accelerated computation by the central processing unit (CPU) or graphics processing unit (GPU), the AI model service Pod obtains the AI model calculation results and feeds them back to the rule model service Pod through the internal service interface.
[0113] Since AI model computation can consume a lot of computing resources, AI model service Pods and rule model service Pods can be distributed on different nodes, and the nodes can autonomously allocate the number of AI model service Pods based on the model's usage of computing resources.
[0114] Specifically, a first node can be assigned to the rule model service Pod; a second node can be assigned to the AI model service Pod, wherein the second node is different from the first node; the resource usage information of the AI model service Pod on the second node when the AI model is running can be determined; and the number of AI model service Pods in the second node can be determined based on the resource usage information.
[0115] It should be noted that, in order to meet the high availability and high concurrency requirements of the decision engine service, this application embodiment can also utilize the Pod horizontal auto-scaling mechanism in Kubernetes to achieve automatic scaling of the number of Pods based on CPU utilization and other custom metrics.
[0116] Specifically, it can establish management relationships between Services, rule model service Pods, and AI model service Pods; determine whether the number of Pods managed by the Service meets the access requirements; and if the access requirements are not met, create or destroy Pods according to the access requirements.
[0117] Taking Service A as an example, when the number of Pods in Service A cannot meet the surge in access demand during peak periods or the low access demand during idle periods, the scaling-up and scaling-down behaviors can be specified through the `scaleUp` and `scaleDown` methods of the `HorizontalPodAutoscaler` controller, respectively. Simultaneously, scaling-down stability windows and scaling-down rates can be specified to limit fluctuations in the number of Pod replicas. In one example, when Service A is in a period of high access demand, the number of Pods can be scaled up to three times its original size to meet the high concurrency calls of the decision engine. In another example, when Service A is in a period of low demand, the number of Pods can be reduced back to one. Regardless of the change in the number of Pods, whether Pods are created or destroyed, the external interface of Service A remains consistent.
[0118] In Kubernetes, Pod self-healing capabilities can be achieved through health checks and restart strategies. Scheduling algorithms can be used to deploy Pods in a distributed manner. For example, three identical Pods in Service A can be distributed across different Nodes. At the same time, by monitoring the expected number of Pod replicas and automatically starting new Pods on normal Nodes based on Node failure status, high availability of the decision engine service can be achieved.
[0119] This application embodiment utilizes Docker technology for configuration and operation, exhibiting excellent cross-platform migration capabilities, enabling configuration from one place and operation from multiple locations. It generates decision flows through the design of rule nodes and AI model nodes, and automatically deploys the decision flow model to the production environment based on preset controls, supporting high availability and high concurrency. Furthermore, the final intelligent decision flow design file and deployment image can be exported, achieving "design once, run everywhere," thus improving the flexibility and reliability of the decision engine.
[0120] Figure 1 and Figure 5 This is a flowchart illustrating a method for a decision engine in one embodiment. It should be understood that, although... Figure 1 and Figure 5 The steps in the flowchart are shown sequentially as indicated by the arrows, but these steps are not necessarily executed in the order indicated by the arrows. Unless otherwise specified herein, there is no strict order in which these steps are executed, and they can be performed in other orders. Figure 1 and Figure 5 At least some of the steps in the process may include multiple sub-steps or multiple stages. These sub-steps or stages are not necessarily completed at the same time, but can be executed at different times. The execution order of these sub-steps or stages is not necessarily sequential, but can be executed in turn or alternately with other steps or at least some of the sub-steps or stages of other steps.
[0121] This application also provides a processor for running a program, wherein the program executes the above-described method for a decision engine during runtime.
[0122] This application also provides an apparatus for a decision engine, including the processor described above.
[0123] This application also provides a machine-readable storage medium storing a program that, when executed by a processor, implements the above-described method for a decision engine.
[0124] This application also provides a computer program product, including a computer program that, when executed by a processor, implements the above-described method for a decision engine.
[0125] This application also provides a computer device, which may be a terminal, and its internal structure diagram may be as follows: Figure 9 As shown, the computer device includes a processor A01, a network interface A02, a display screen A04, an input device A05, and a memory (not shown) connected via a system bus. The processor A01 provides computing and control capabilities. The memory includes internal memory A03 and a non-volatile storage medium A06. The non-volatile storage medium A06 stores an operating system B01 and a computer program B02. The internal memory A03 provides an environment for the operation of the operating system B01 and the computer program B02 stored in the non-volatile storage medium A06. The network interface A02 is used for communication with external terminals via a network connection. When the computer program is executed by the processor A01, it implements a method for a decision engine. The display screen A04 can be a liquid crystal display (LCD) or an e-ink display. The input device A05 can be a touch layer covering the display screen, buttons, a trackball, or a touchpad mounted on the computer device casing, or an external keyboard, touchpad, or mouse.
[0126] Those skilled in the art will understand that Figure 9 The structure shown is merely a block diagram of a portion of the structure related to the present application and does not constitute a limitation on the computer device to which the present application is applied. Specific computer devices may include more or fewer components than those shown in the figure, or combine certain components, or have different component arrangements.
[0127] Those skilled in the art will understand that embodiments of this application can be provided as methods, systems, or computer program products. Therefore, this application can take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, this application can take the form of a computer program product embodied on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.
[0128] This application is described with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of this application. It will be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, special-purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, generate instructions for implementing the flowchart... Figure 1 One or more processes and / or boxes Figure 1 A device that provides the functions specified in one or more boxes.
[0129] These computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable data processing device to function in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including instruction means, which are implemented in a process Figure 1 One or more processes and / or boxes Figure 1 The function specified in one or more boxes.
[0130] These computer program instructions may also be loaded onto a computer or other programmable data processing equipment to cause a series of operational steps to be performed on the computer or other programmable equipment to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable equipment for implementing the process. Figure 1 One or more processes and / or boxes Figure 1 The steps of the function specified in one or more boxes.
[0131] In a typical configuration, a computing device includes one or more processors (CPU), input / output interfaces, network interfaces, and memory.
[0132] Memory may include non-persistent memory in computer-readable media, such as random access memory (RAM) and / or non-volatile memory, such as read-only memory (ROM) or flash RAM. Memory is an example of computer-readable media.
[0133] Computer-readable media include both permanent and non-permanent, removable and non-removable media, which can store information using any method or technology. Information can be computer-readable instructions, data structures, modules of programs, or other data. Examples of computer storage media include, but are not limited to, phase-change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technologies, CD-ROM, digital versatile optical disc (DVD) or other optical storage, magnetic tape, magnetic magnetic disk storage or other magnetic storage devices, or any other non-transferable medium that can be used to store information accessible by a computing device. As defined herein, computer-readable media does not include transient computer-readable media, such as modulated data signals and carrier waves.
[0134] It should also be noted that the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such process, method, article, or apparatus. Unless otherwise specified, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes that element.
[0135] The above are merely embodiments of this application and are not intended to limit the scope of this application. Various modifications and variations can be made to this application by those skilled in the art. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this application should be included within the scope of the claims of this application.
Claims
1. A method for a decision engine, characterized in that, include: Determine the business scenarios and sample data for selecting external AI model nodes based on the decision engine; Find the first Docker image corresponding to the business scenario from the preset scenario image library; Control the first Docker image to call the sample data; The first Docker image is controlled to train the AI model in the modeling framework in the first Docker image based on the called sample data and the training code in the first Docker image, so as to obtain the model file; Control the first Docker image to publish the AI model service interface based on the model file; Obtain external rule node selection instructions based on the rule nodes within the decision engine; The first rule node selected externally is determined according to the rule node selection instruction; Obtain the external AI model node selection instruction based on the input of the AI model node; The first externally selected AI model node is determined according to the AI model node selection instruction; A decision flow is generated based on the first rule node and the first AI model node.
2. The method according to claim 1, characterized in that, Also includes: Obtain the modeling and deployment instructions input from the external source based on the first preset control; In response to the modeling and deployment instructions, the Docker image is controlled to model and deploy according to the decision flow, wherein the Docker image includes the first Docker image.
3. The method according to claim 2, characterized in that, Also includes: Obtain the export command input from the external source based on the second preset control; In response to the export command, one or more of the decision flow, the model file, and the deployed image file are output.
4. The method according to claim 1, characterized in that, Also includes: Determine the second Docker image corresponding to the general rule model; The second Docker image is controlled to model and deploy according to the rules corresponding to the first rule node.
5. The method according to claim 4, characterized in that, Also includes: Obtain the rule model service corresponding to the first rule node and the AI model service corresponding to the first AI model node; Create the rule model service container group Pod corresponding to the rule model service; Create the AI model service Pod corresponding to the AI model service; The Kubernetes-based Service assigns the same entry address to both the rule model service Pod and the AI model service Pod.
6. The method according to claim 5, characterized in that, Also includes: Assign a first Node to the rule model service Pod; Assign a second Node to the AI model service Pod, wherein the second Node is different from the first Node; Determine the resource usage information of the second Node by the AI model service Pod when the AI model is running; The number of AI model service Pods in the second Node is determined based on the resource usage information.
7. The method according to claim 6, characterized in that, Also includes: Establish the management relationship between the Service, the Rule Model Service Pod, and the AI Model Service Pod; Determine whether the number of Pods managed by the Service meets the access requirements; If the access requirement is not met, create or destroy the Pod according to the access requirement.
8. The method according to claim 1, characterized in that, Also includes: Obtain scene information from the sample data; The category of the Docker images in the preset scenario image library is determined based on the scenario information.
9. The method according to claim 1, characterized in that, Also includes: Obtain the path of the sample data selected externally based on the AI model node; The sample data is determined based on the path.
10. A processor, characterized in that, Configured to perform the method for a decision engine as described in any one of claims 1 to 9.
11. An apparatus for a decision engine, characterized in that, include: The processor according to claim 10.
12. A machine-readable storage medium storing instructions thereon, characterized in that, When executed by a processor, the instruction causes the processor to be configured to perform the method for a decision engine according to any one of claims 1 to 9.
13. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by a processor, it implements the method for a decision engine according to any one of claims 1 to 9.