Model building system, method, device and storage medium

By disassembling the machine learning model into a single functional module and using the K8s cluster for interaction, the problem of complex construction of machine learning model service environment and low efficiency in model service deployment in the existing technology is solved, and flexible deployment and efficient R&D of modules are achieved.

CN113112025BActive Publication Date: 2025-04-04SF TECH CO LTD +1
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202010033907.3
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2020-01-13
Publication Date
2025-04-04
Estimated Expiration
2040-01-13

AI Technical Summary

Technical Problem

It is difficult for the existing technology to quickly build a machine learning model service environment, and traditional model services are complex, many components are numerous, and it is difficult to learn and use, and there is a lack of effective technical solutions to achieve the rapid development and deployment of model services.

Method used

By disassembling the model into a single-function module, providing interface service modules and model workflow modules, and interacting with K8s clusters, the modules can be implemented to achieve flexible and scalable deployment, and improve R&D efficiency and resource utilization.

Benefits of technology

The ability to build machine learning model services has been realized, R&D efficiency has been improved, and time cost and container resource utilization has been reduced.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN113112025B_ABST
    Figure CN113112025B_ABST
Patent Text Reader

Abstract

The present application discloses a model building system, method, device and storage medium, wherein the system includes: an interface service module and a model workflow module, the two modules can run independently of each other and interact through the K8s cluster, based on the K8s cluster to receive client requests, the interface service module generates corresponding workflow configuration information in the first target container according to the client request transmitted by the K8s cluster, and sends the workflow configuration information generated by the client request to the model workflow module via the K8s cluster; the model workflow module executes the corresponding Argo workflow task in the second target container according to the client request and workflow configuration information from the interface service module sent by the K8s cluster. The embodiment of the present application can disassemble the model into modules with single functions, improve the ability to build machine learning model services, realize flexible and scalable deployment of modules, and improve R&D efficiency.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The embodiments of the present application relate to the field of machine learning technology, and specifically to a model building system, method, device and storage medium. Background Art

[0002] With the development of technologies such as big data and artificial intelligence, more and more companies are beginning to explore the application of artificial intelligence applications such as machine learning in business scenarios. In the massive amount of business data, how to use machine learning and other technologies to quickly deploy applications, apply them to actual business scenarios, mine the value of data assets, and guide operational decisions are technical challenges faced by the industry.

[0003] At present, most of the machine learning models provided by the industry are based on covering the entire process of machine learning, which involves a variety of components. It is not easy to quickly build an environment. At the same time, too many components are difficult to learn and use, which is complex. In addition, traditional model services often mix different algorithm model interfaces and continue to run in the form of http services waiting for calls. In addition, when applying machine learning model services to product systems, people often pay more attention to how to quickly develop and deploy model services, provide features such as task scheduling, distribution, and flexible resource expansion. There is currently no good technical solution. Summary of the invention

[0004] The embodiments of the present application provide a model building system, method, device and storage medium, which can decompose the model into modules with single functions, improve the ability to build machine learning model services, realize flexible and scalable deployment of modules, improve R&D efficiency, and reduce time costs and container resource utilization.

[0005] The embodiment of the present application provides a model building system, the system comprising: an interface service module and a model workflow module, the interface service module and the model workflow module can run independently of each other and interact through a K8s cluster;

[0006] The interface service module is configured to receive a client request transmitted by the K8s cluster, generate corresponding workflow configuration information in the first target container according to the client request, and send the workflow configuration information generated by the client request to the model workflow module based on the K8s cluster;

[0007] The model workflow module is configured to receive the workflow configuration information generated according to the client request from the interface service module and forwarded by the K8s cluster, and execute the corresponding workflow task in the second target container according to the client request and the workflow configuration information.

[0008] In the model building system described in the embodiment of the present application, the interface service module is configured to generate corresponding workflow configuration information in the first target container according to the client request, specifically including:

[0009] According to the client request, determining a first target container matching the client request from preset container resources;

[0010] Create workflow configuration information corresponding to the client request in the first target container, wherein the workflow configuration information is data created based on a YAML configuration file.

[0011] In the model building system described in the embodiment of the present application, the interface service module is further configured to:

[0012] The code of the interface service module is mounted through the first persistent volume.

[0013] In the model building system described in the embodiment of the present application, the model workflow module is configured to execute the corresponding workflow task in the second target container according to the workflow configuration information generated by the client request, specifically including:

[0014] Starting a workflow engine based on the workflow configuration information generated according to the client request from the interface service module and forwarded by the K8s cluster;

[0015] Controlling the workflow engine to start different workflow tasks according to workflow configuration information generated by different client requests, wherein the workflow configuration information also includes a dependency relationship between the client request and the workflow task;

[0016] Determining a second target container matching the workflow task from preset container resources according to the client request;

[0017] The workflow task is executed in the second target container.

[0018] The present application also provides a model building method, which is applied to an interface service module, and the method includes:

[0019] Receive client requests sent by the K8s cluster;

[0020] Generate corresponding workflow configuration information in the first target container according to the client request;

[0021] Based on the K8s cluster, the workflow configuration information generated according to the client request is sent to the model workflow module, wherein the workflow configuration information is used to instruct the model workflow module to execute the corresponding workflow task.

[0022] In the model building method described in the embodiment of the present application, generating corresponding workflow configuration information in the first target container according to the client request includes:

[0023] According to the client request, determining a first target container matching the client request from preset container resources;

[0024] Create workflow configuration information corresponding to the client request in the first target container, wherein the workflow configuration information is data created based on a YAML configuration file.

[0025] In the model building method described in the embodiment of the present application, the method further includes:

[0026] The code of the interface service module is mounted through the first persistent volume.

[0027] The present application also provides a model building method, which is applied to a model workflow module, and the method includes:

[0028] Receive workflow configuration information generated by client requests from the interface service module forwarded by the K8s cluster;

[0029] Execute the corresponding workflow task in the second target container according to the client request and the workflow configuration information.

[0030] In the model building method described in the embodiment of the present application, executing the corresponding workflow task in the second target container according to the client request and the workflow configuration information includes:

[0031] Starting a workflow engine based on the workflow configuration information generated according to the client request from the interface service module and forwarded by the K8s cluster;

[0032] Controlling the workflow engine to start workflow tasks corresponding to different client requests according to workflow configuration information generated by different client requests, wherein the workflow configuration information also includes a dependency relationship between the client request and the workflow task;

[0033] Determining a second target container matching the workflow task from preset container resources according to the client request;

[0034] The workflow task is executed in the second target container.

[0035] In the model building method described in the embodiment of the present application, after executing the workflow task in the second target container, the method further includes:

[0036] After the workflow task is executed, the resources corresponding to the second target container are released.

[0037] In the model building method described in the embodiment of the present application, the method further includes:

[0038] The code of the model workflow module is mounted through the second persistent volume.

[0039] The embodiment of the present application also provides a model building device, which is applied to the interface service module, and the device includes:

[0040] A first receiving unit, used to receive a client request transmitted by the K8s cluster;

[0041] A generating unit, configured to generate corresponding workflow configuration information in a first target container according to the client request;

[0042] A sending unit is used to send the client request and the workflow configuration information to the model workflow module based on the K8s cluster, wherein the workflow configuration information is used to instruct the model workflow module to execute the corresponding workflow task.

[0043] The present application also provides a model building device, which is applied to a model workflow module, and the device includes:

[0044] A second receiving unit is used to receive workflow configuration information generated according to a client request from an interface service module and forwarded by a K8s cluster;

[0045] The execution unit is used to execute the corresponding workflow task in the second target container according to the client request and the workflow configuration information.

[0046] An embodiment of the present application further provides a storage medium, wherein the storage medium stores a plurality of instructions, wherein the instructions are suitable for loading by a processor to execute the steps in the method described in any of the above embodiments.

[0047] The model building system provided by the embodiment of the present application includes an interface service module and a model workflow module. The interface service module and the model workflow module can run independently of each other and interact through the K8s cluster. Based on the K8s cluster, the interface service module receives the client request. According to the client request transmitted by the K8s cluster, the interface service module generates the corresponding workflow configuration information in the first target container, and sends the workflow configuration information generated according to the client request to the model workflow module based on the K8s cluster; the model workflow module executes the corresponding Argo workflow task in the second target container according to the client request and workflow configuration information sent from the interface service module by the K8s cluster. The embodiment of the present application can decompose the model into modules with single functions, improve the ability to build machine learning model services, realize flexible and scalable deployment of modules, improve R&D efficiency, and reduce time costs and container resource utilization. BRIEF DESCRIPTION OF THE DRAWINGS

[0048] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings required for use in the description of the embodiments will be briefly introduced below. 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.

[0049] Figure 1 A schematic diagram of the structure of a model building system provided in an embodiment of the present application.

[0050] Figure 2 A first flow chart of a model building method applied to an interface service model provided in an embodiment of the present application.

[0051] Figure 3 A second flow chart of a model building method applied to an interface service model provided in an embodiment of the present application.

[0052] Figure 4 A first flow chart of a model building method applied to a model workflow module provided in an embodiment of the present application.

[0053] Figure 5 A second flow chart of a model building method applied to a model workflow module provided in an embodiment of the present application.

[0054] Figure 6 A first structural schematic diagram of a first model building device provided in an embodiment of the present application.

[0055] Figure 7 A second structural schematic diagram of the first model building device provided in an embodiment of the present application.

[0056] Figure 8 A first structural schematic diagram of a second model building device provided in an embodiment of the present application.

[0057] Fig. 9 A second structural schematic diagram of a second model building device provided in an embodiment of the present application.

[0058] Fig.10 A schematic diagram of the structure of a server provided in an embodiment of the present application.

[0059] Fig.11 A schematic diagram of the structure of an electronic device provided in an embodiment of the present application. DETAILED DESCRIPTION

[0060] The following will be combined with the drawings in the embodiments of the present application to clearly and completely describe the technical solutions in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by those skilled in the art without creative work are within the scope of protection of this application.

[0061] The terms "first" and "second" etc. in this application are used to distinguish different objects, rather than to describe a specific order. In addition, the terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions. For example, a process, method, system, product or device that includes a series of steps or modules is not limited to the listed steps or modules, but optionally includes steps or modules that are not listed, or optionally includes other steps or modules inherent to these processes, methods, products or devices.

[0062] Reference to "embodiments" herein means that a particular feature, structure, or characteristic described in conjunction with the embodiments may be included in at least one embodiment of the present application. The appearance of the phrase in various locations in the specification does not necessarily refer to the same embodiment, nor is it an independent or alternative embodiment that is mutually exclusive with other embodiments. It is explicitly and implicitly understood by those skilled in the art that the embodiments described herein may be combined with other embodiments.

[0063] The model building system and method provided in the embodiments of the present application may be implemented in a model building device, which may be specifically integrated into electronic devices, including but not limited to logistics terminals, computers, mobile phones and other devices.

[0064] Each of the embodiments will be described in detail below. The order of description of the following embodiments does not constitute a limitation on the order of specific implementation.

[0065] See also Figure 1 , Figure 1 A structural diagram of a model building system provided in an embodiment of the present application. The model building system 100 includes: an interface service module 10 and a model workflow module 20, the interface service module 10 and the model workflow module 20 can operate independently of each other and interact through a K8s cluster 30. The model building system 100 is connected to a client 200, and a user can access it on the client 200, and the client 200 sends the request parameters generated by the user's access to the model building system 100.

[0066] Among them, the model building system 100 uses Python and Flask as the development technology stack of algorithm model and interface service respectively, and is constructed in combination with container technology components such as K8s, Docker and Argo. Specifically, the system 100 quickly develops algorithm models based on Python and third-party algorithm libraries, and develops lightweight interface service modules 10 around the Flask Web framework. Secondly, the system 100 uses the container virtualization technology Docker, and the interface service module 10 and the model workflow module 20 can be quickly deployed to avoid the environmental dependency problems of the underlying operating system and Python third-party module packages. Moreover, K8s is used to orchestrate and manage containers to achieve automated deployment, flexible scaling and application container management. In addition, Argo in the model workflow module 20, as a workflow engine for the K8s ecosystem, provides flexible task scheduling capabilities to make up for the limitations of K8s' own task scheduling.

[0067] Kubernetes (K8s) cluster is an open source system for managing containerized applications in cloud platforms. K8s cluster can make the deployment of containerized applications simple and efficient. K8s cluster provides a mechanism for application deployment, planning, updating and maintenance. Kubernetes (K8s) cluster is implemented by deploying containers. Each container is isolated from each other. Each container has its own file system. The processes between containers will not affect each other, and computing resources can be distinguished. Compared with virtual machines, containers can be deployed quickly. Since containers are decoupled from the underlying facilities and machine file systems, they can be migrated between different clouds and different versions of operating systems. Containers occupy less resources and are deployed quickly. Each application can be packaged into a container image. The one-to-one relationship between each application and the container also makes containers have greater advantages. Using containers, container images can be created for applications at the build or release stage. Each application does not need to be combined with the rest of the application stack, nor does it rely on the production environment infrastructure, which enables a consistent environment from R&D to testing and production. Containers are lighter and more "transparent" than virtual machines, making them easier to monitor and manage.

[0068] In the embodiment of the present application, only the management mechanism of Kubernetes for Docker container applications and simple scheduling processing are used, and the K8s cluster 30 is used as a basic application environment. The request from the client 200 is received through the K8s cluster 30, and the client request and the Docker container directory matching the client request are sent to the interface service module 10, and then the workflow configuration information generated in the interface service module 10 is sent to the model workflow module 20, and the interaction between the interface service module 10 and the model workflow module 20 is completed. The interface service module 10 and the model workflow module 20 are independently operated and deployed, and the degree of dependence between them is low. They only interact through the K8s cluster 30 when data interaction is required. There is no need to integrate the interface service module 10 and the model workflow module 20. The task setting of the K8s cluster 30 is relatively simple, which reduces the complexity of system development, improves the application deployment performance and efficiency of the machine learning model service, and accelerates the online application of the machine learning model.

[0069] Docker is an open source application container engine that allows developers to package their applications and dependent packages into a portable container and then publish them to any popular Linux or Windows machine. It can also achieve virtualization. The container completely uses the sandbox mechanism and there is no interface between them.

[0070] Argo is an open source container-native workflow engine for completing work on Kubernetes. Argo can customize resources. For example, each step in a customized workflow is a workflow corresponding to a Docker container. You can model a workflow with multiple steps as a series of tasks, or use a graph to capture dependencies between tasks.

[0071] For example, by using K8s cluster 30 to schedule Argo workflows, you can easily run compute-intensive jobs in a very short time for machine learning or data processing. In the traditional model, Kubernetes' own scheduling capabilities are imperfect. It generally runs machine learning models in a direct pipeline manner, and uses a single container application to carry multiple machine learning model services. Resources are persistently occupied and management is difficult to control. The embodiment of the present application utilizes Argo's enhanced features of Kubernetes' native scheduling functions to assist in the online operation of machine learning models, and uses a workflow method to run machine learning model services. The process decomposition steps are clear and resource utilization is more efficient.

[0072] The K8s cluster 30 in the embodiment of the present application is used to provide functions such as routing services, load balancing and other management operations.

[0073] Among them, the interface service module 10 interacts with the client 200 through the K8s cluster 30. When a user accesses the client 200, the client 200 generates a client request and transmits the client request to the interface service module 10 through the K8s cluster 30.

[0074] The interface service module 10 is configured to receive a client request transmitted by the K8s cluster 30 , generate corresponding workflow configuration information in the first target container 11 according to the client request, and send the workflow configuration information generated according to the client request to the model workflow module 20 based on the K8s cluster 30 .

[0075] In some embodiments, the interface service module 10 is configured to generate corresponding workflow configuration information in the first target container 11 according to the client request, specifically including:

[0076] According to the client request, determine a first target container 11 matching the client request from preset container resources;

[0077] The workflow configuration information corresponding to the client request is created in the first target container 11 , wherein the workflow configuration information is data created based on the YAML configuration file.

[0078] In some embodiments, the interface service module 10 is further configured to release resources corresponding to the first target container 11 after the workflow configuration information is created.

[0079] In some embodiments, the interface service module 10 is further configured to mount the code of the interface service module 10 through the first persistent volume 12 .

[0080] Specifically, the interface service module 10 is developed based on Python and Flask. The interface service module 10 is used to receive client requests, parse request parameters of client requests, generate corresponding workflow configuration information, and then trigger the Argo workflow through the application interface of the K8s cluster 30.

[0081] For example, client requests may include requests for data preprocessing, model training, and model application, etc., where the request parameters of the client request may include necessary parameters related to data input, model training method, and data output, such as the download address of data input, the time granularity of model prediction, and the address of prediction result data output, etc. Other extended parameters may also be passed in according to business settings.

[0082] Among them, the interface service module 10 can run in the K8s cluster 30 in the form of a Docker container application, and the K8s cluster 30 provides routing services, load balancing and other management operation functions.

[0083] like Figure 1 As shown, step ① is that the client 200 accesses the network service of the K8s cluster 30 to send a client request to the interface service module 10 through the K8s cluster 30.

[0084] Step ② is that the K8s cluster 30 routes the client request to the Docker container application, that is, determines the first target container 11 that matches the client request from the preset Docker container resources, and creates workflow configuration information corresponding to the client request in the first target container 11. Different client requests match different container applications, and the workflow configuration information is data created based on the YAML configuration file. In the K8s cluster, the YAML configuration file is equivalent to the specification of the K8s cluster resource object, which defines the elements contained in the object and the actions taken. Each object can be created through the YAML configuration file. For example, after the workflow configuration information is created, the resources corresponding to the first target container 11 are released.

[0085] Step ③ is to mount the Python and Flask-based codes in the interface service module 10 through the first persistent volume (Persistence Volume) 12 to facilitate code changes and logging.

[0086] Among them, the model workflow module 20 is configured to receive the workflow configuration information generated according to the client from the interface service module 10 and forwarded by the K8s cluster 30, and execute the corresponding workflow task in the second target container 21 according to the client request and the workflow configuration information.

[0087] Specifically, the model workflow module 20 is configured to execute the corresponding workflow task in the second target container 22 according to the client request and the workflow configuration information, specifically including:

[0088] Based on the workflow configuration information generated by the client request from the interface service module 10 forwarded by the K8s cluster 30, the workflow engine 21 is started;

[0089] Control the workflow engine 21 to start different workflow tasks according to the workflow configuration information (including dependency relationships) generated by different client requests, that is, the workflow configuration information also includes the dependency relationship between the client request and the workflow task;

[0090] Determine a second target container 22 matching the workflow task from preset container resources according to the client request;

[0091] The workflow task is executed in the second target container 22 .

[0092] In some embodiments, the model workflow module 20 is further configured to release resources corresponding to the second target container 22 after the workflow task is executed.

[0093] In some embodiments, the model workflow module 20 is further configured to mount the code of the model workflow module 20 through the second persistent volume 23 .

[0094] In some embodiments, the workflow tasks include data preprocessing tasks, model training tasks, and model application tasks.

[0095] Specifically, the model workflow module 20 is used to execute the workflow tasks corresponding to the defined workflow configuration information, and run multiple Argo workflow tasks through a predefined YAML configuration file, where each Argo workflow task is implemented by executing it separately in the Docker container application, and the workflow of the entire workflow task is managed by K8s.

[0096] like Figure 1 As shown, step ④ is based on the scheduling of the K8s cluster 30, and the Argo workflow engine 21 is started according to the workflow configuration information generated according to the client request and transmitted by the interface service module 10.

[0097] Step ⑤ is to control the Argo workflow engine 21 to execute workflow tasks corresponding to different client requests according to the workflow configuration information (including dependencies) generated by different client requests, such as the machine learning model life cycle including workflow tasks such as data preprocessing, model training and model application. For example, different workflow tasks are executed in different container applications, such as data preprocessing tasks are executed in container application 22A, model training tasks are executed in container application 22B, and model application tasks are executed in container application 22C. Among them, the container resources are released after the container application corresponding to each workflow task is completed.

[0098] Step ⑥ is to mount the machine learning model code through the second persistent volume (Persistence Volume) 23 to facilitate code changes, log records, and result preservation.

[0099] Among them, the Docker container application corresponding to the interface service module 10 and the model workflow module 20 is orchestrated and scheduled by the K8s cluster 30. The containers corresponding to the interface service module 10 and the model workflow module are different. They are container applications generated by different Docker images and correspond to different functions. For example, the container application 11 corresponding to the interface service module 10 provides http requests for external clients. The container application 22 corresponding to the model workflow module 20 corresponds to different data processing or analysis modeling content. The client request is mainly sent to the container application 11 of the interface service module 10, and then the interface service module 10 generates a configuration file according to the request parameters of the client request, and then triggers the Argo workflow engine 21 in the model workflow module 20 to correspond to the container application 22. Among them, the routing redirection of the container application 11 and the container application 22 are uniformly managed by the k8s cluster 30, and the interface service model 10 and the model workflow model 20 do not need to consider the routing details.

[0100] The workflow configuration information corresponding to the client request contains different workflow tasks, and the configuration file describes the dependencies between the workflow tasks in the same workflow configuration information to ensure the execution order of the workflow tasks. However, different workflow tasks run independently in isolated container applications and are not affected by other tasks.

[0101] The model building system 100 of the machine learning model based on workflow scheduling provided in the embodiment of the present application makes full use of the container application orchestration management capabilities of the K8s cluster and the advantages of the flexible scheduling of the Argo workflow engine, solves the limitations of model service deployment such as complex dependencies, poor workflow scheduling capabilities, and large resource usage, and quickly builds machine learning model services to achieve flexible and scalable deployment. Among them, this division of labor focuses on research and development, unifies interface services and application deployment, improves research and development efficiency, and reduces time costs. Among them, the model building system 100 can be disassembled into modules with single functions, that is, it can be disassembled into an interface service module 10 and a model workflow module 20. R&D personnel only need to focus on developing algorithm modules and defining module entrances. The interface service module only needs to be uniformly developed to process client access requests. The model workflow module 20 for application deployment is deployed inside the K8s cluster through the Docker container application, and all container applications are uniformly managed by the K8s cluster. The model workflow module 20 runs the machine learning model service in the Argo workflow mode. The process decomposition steps are clear and resource utilization is efficient. The machine learning model runs in workflow mode, and the different workflow tasks and dependencies of the machine learning life cycle are refined. With the help of K8s cluster and Argo workflow, each step is implemented through container application. The container resources are released after the step is executed, realizing efficient resource utilization and flexible task scheduling, forming a repeatable machine learning model pipeline.

[0102] The model building system provided by the embodiment of the present application includes an interface service module and a model workflow module. The interface service module and the model workflow module can run independently of each other and interact through the K8s cluster. The interface service module receives client requests based on the K8s cluster. The interface service module generates corresponding workflow configuration information in the first target container according to the client requests transmitted by the K8s cluster, and sends the client requests and workflow configuration information to the model workflow module based on the K8s cluster; the model workflow module executes the corresponding Argo workflow task in the second target container according to the client requests and workflow configuration information from the interface service module sent by the K8s cluster. The embodiment of the present application can decompose the model into modules with single functions, improve the ability to build machine learning model services, realize flexible and scalable deployment of modules, improve R&D efficiency, and reduce time costs and container resource utilization.

[0103] See also Figure 2 , Figure 2 A first flow chart of a model building method applied to an interface service model provided in an embodiment of the present application. The method is applied to an interface service module, and the method includes:

[0104] Step 101, receiving a client request transmitted by the K8s cluster.

[0105] Step 102: Generate corresponding workflow configuration information in the first target container according to the client request.

[0106] Step 103: Based on the K8s cluster, the workflow configuration information generated according to the client request is sent to the model workflow module, wherein the workflow configuration information is used to instruct the model workflow module to execute the corresponding workflow task.

[0107] Please refer to Figure 1 , the interface service module 10 interacts with the client 200 through the K8s cluster 30. When the user accesses the client 200, the client 200 generates a client request, and transmits the client request to the interface service module 10 through the K8s cluster 30. The interface service module 10 receives the client request transmitted by the K8s cluster 30, generates corresponding workflow configuration information in the first target container 11 according to the client request, and then sends the workflow configuration information to the model workflow module 20 based on the K8s cluster 30.

[0108] See also Figure 3 , Figure 3 A second flow chart of a model building method applied to an interface service model provided in an embodiment of the present application. The method is applied to an interface service module, and the method further includes:

[0109] Step 201, receiving a client request transmitted by the K8s cluster;

[0110] Step 202: Determine, according to the client request, a first target container matching the client request from preset container resources;

[0111] Step 203: Create workflow configuration information corresponding to the client request in the first target container, wherein the workflow configuration information is data created based on a YAML configuration file;

[0112] Step 204: Based on the K8s cluster, the workflow configuration information generated according to the client request is sent to the model workflow module, wherein the workflow configuration information is used to instruct the model workflow module to execute the corresponding workflow task.

[0113] Step 205: Mount the code of the interface service module through the first persistent volume.

[0114] See also Figure 1 The client 200 accesses the network service of the K8s cluster 30 to send a client request to the interface service module 10 through the K8s cluster 30. The interface service module 10 receives the client request transmitted by the K8s cluster 30, and determines the first target container 11 that matches the client request from the preset Docker container resources, and creates workflow configuration information corresponding to the client request in the first target container 11. Then, based on the K8s cluster 30, the workflow configuration information generated according to the client request is sent to the model workflow module 20, and the Python and Flask-based codes in the interface service module 10 are mounted through the first persistent volume 12 to facilitate code changes and logging.

[0115] The model building method provided in the embodiment of the present application is applied to the interface service module, by receiving the client request transmitted by the K8s cluster; generating corresponding workflow configuration information in the first target container according to the client request; sending the workflow configuration information generated according to the client request to the model workflow module based on the K8s cluster, wherein the workflow configuration information is used to instruct the model workflow module to execute the corresponding workflow task. The embodiment of the present application can develop the interface service module separately, and the interface service module only needs to be uniformly developed to process the client's access request, improve the ability to build machine learning model services, realize flexible and scalable deployment of modules, improve R&D efficiency, and reduce time costs and container resource utilization.

[0116] See also Figure 4 , Figure 4A first flow chart of a model building method applied to a model workflow module provided in an embodiment of the present application. The method is applied to a model workflow module, and the method includes:

[0117] Step 301, receiving workflow configuration information generated according to a client request from an interface service module and forwarded by a K8s cluster;

[0118] Step 302: Execute the corresponding workflow task in the second target container according to the client request and the workflow configuration information.

[0119] See also Figure 1 The model workflow module 20 receives the workflow configuration information generated according to the client request from the interface service module 10 and forwarded by the K8s cluster 30, and executes the corresponding workflow task in the second target container 21 according to the workflow configuration information.

[0120] See also Figure 5 , Figure 5 A second flow chart of a model building method applied to a model workflow module provided in an embodiment of the present application. The method is applied to a model workflow module, and the method includes:

[0121] Step 401, receiving workflow configuration information generated according to a client request from an interface service module and forwarded by a K8s cluster;

[0122] Step 402, starting the workflow engine based on the workflow configuration information generated according to the client request from the interface service module and forwarded by the K8s cluster;

[0123] Step 403, controlling the workflow engine to start workflow tasks corresponding to different client requests according to workflow configurations generated by different client requests, wherein the workflow configuration information also includes a dependency relationship between the client request and the workflow task;

[0124] Step 404: determining a second target container matching the workflow task from preset container resources according to the client request;

[0125] Step 405: execute the workflow task in the second target container.

[0126] Step 406: Release the resources corresponding to the second target container after the workflow task is executed.

[0127] Step 407: Mount the code of the model workflow module through the second persistent volume.

[0128] See also Figure 1, the model workflow module 20 receives the workflow configuration information generated according to the client request from the interface service module 10 and forwarded by the K8s cluster 30; and based on the workflow configuration information generated according to the client request from the interface service module 10 and forwarded by the K8s cluster 30; starts the workflow engine, and then controls the Argo workflow engine to execute the workflow tasks corresponding to different client requests according to the workflow configuration information (including dependencies) generated by different client requests, such as the machine learning model life cycle including workflow tasks such as data preprocessing, model training and model application. For example, different workflow tasks are executed in different container applications, such as data preprocessing tasks are executed in container application 22A, model training tasks are executed in container application 22B, and model application tasks are executed in container application 22C; wherein, the container resources are released after the container application corresponding to each workflow task is completed; and then the machine learning model code is mounted through the second persistent volume (Persistence Volume) 23 to facilitate code changes, diary records and result preservation.

[0129] The model building method provided in the embodiment of the present application is applied to the model workflow module, by receiving the workflow configuration information generated according to the client request from the interface service module forwarded by the K8s cluster; executing the corresponding workflow task in the second target container according to the client request and the workflow configuration information. The embodiment of the present application can develop the model workflow module separately, run it in workflow mode, refine the different workflow tasks and dependencies of the machine learning life cycle, improve the ability to build machine learning model services, realize flexible and scalable deployment of modules, improve R&D efficiency, and reduce time costs and container resource utilization.

[0130] All of the above technical solutions can be arbitrarily combined to form optional embodiments of the present application, which will not be described in detail here.

[0131] The present application also provides a model building device, such as Figure 6 As shown, Figure 6 The first structural diagram of the first model building device provided in the embodiment of the present application is as follows: The first model building device 50 is applied to the interface service module, and the first model building device 50 may include a first receiving unit 51 , a generating unit 52 and a sending unit 53 .

[0132] Wherein, the first receiving unit 51 is used to receive the client request transmitted by the K8s cluster.

[0133] The generating unit 52 is configured to generate corresponding workflow configuration information in the first target container according to the client request.

[0134] The sending unit 53 is used to send the client request and the workflow configuration information to the model workflow module based on the K8s cluster, wherein the workflow configuration information is used to instruct the model workflow module to execute the corresponding workflow task.

[0135] like Figure 7 As shown, Figure 7 The second structural diagram of the first model building device provided in the embodiment of the present application is as follows: The first model building device 50 is applied to the interface service module, and the first model building device 50 may include a first receiving unit 51, a generating unit 52, a sending unit 53 and a first mounting unit 54.

[0136] Wherein, the first receiving unit 51 is used to receive the client request transmitted by the K8s cluster.

[0137] The generating unit 52 is configured to generate corresponding workflow configuration information in the first target container according to the client request.

[0138] In some embodiments, the generating unit 52 further includes:

[0139] A first determining subunit 521 is configured to determine, according to the client request, a first target container matching the client request from preset container resources;

[0140] The creation subunit 522 is configured to create workflow configuration information corresponding to the client request in the first target container, wherein the workflow configuration information is data created based on a YAML configuration file.

[0141] The sending unit 53 is used to send the client request and the workflow configuration information to the model workflow module based on the K8s cluster, wherein the workflow configuration information is used to instruct the model workflow module to execute the corresponding workflow task.

[0142] The first mounting unit 54 is used to mount the code of the interface service module through the first persistent volume.

[0143] The first model building device 50 provided in the embodiment of the present application is applied to the interface service module, and receives the client request transmitted by the K8s cluster through the first receiving unit 51. The generating unit 52 generates the corresponding workflow configuration information in the first target container according to the client request, and the sending unit 53 sends the client request and the workflow configuration information to the model workflow module based on the K8s cluster, wherein the workflow configuration information is used to instruct the model workflow module to execute the corresponding workflow task. The embodiment of the present application can develop the interface service module separately, and the interface service module only needs to be uniformly developed to process the access request of the client, improve the ability to build machine learning model services, realize flexible and scalable deployment of modules, improve R&D efficiency, and reduce time cost and container resource utilization.

[0144] like Figure 8 As shown, Figure 8 The first structural diagram of the second model building device provided in the embodiment of the present application is as follows: The second model building device 60 is applied to the model workflow module, and the second model building device 60 may include a second receiving unit 61 and an executing unit 62 .

[0145] Among them, the second receiving unit 61 is used to receive the workflow configuration information generated according to the client request from the interface service module and forwarded by the K8s cluster.

[0146] The execution unit 62 is used to execute the corresponding workflow task in the second target container according to the client request and the workflow configuration information.

[0147] like Fig. 9 As shown, Fig. 9 Another structural diagram of the second model building device provided in the embodiment of the present application. The second model building device 60 is applied to the model workflow module, and the second model building device 60 may include a second receiving unit 61, an execution unit 62 and a second mounting unit 63.

[0148] Among them, the second receiving unit 61 is used to receive the workflow configuration information generated according to the client request from the interface service module and forwarded by the K8s cluster.

[0149] The execution unit 62 is used to execute the corresponding workflow task in the second target container according to the client request and the workflow configuration information.

[0150] In some embodiments, the execution unit 62 includes:

[0151] A startup subunit 621, configured to start a workflow engine based on the workflow configuration information generated according to the client request from the interface service module and forwarded by the K8s cluster;

[0152] A control subunit 622, configured to control the workflow engine to start workflow tasks corresponding to different client requests according to workflow configuration information generated by different client requests, wherein the workflow configuration information also includes a dependency relationship between the client request and the workflow task;

[0153] A second determining subunit 623 is configured to determine a second target container matching the workflow task from preset container resources according to the client request;

[0154] The execution subunit 624 is configured to execute the workflow task in the second target container.

[0155] The releasing subunit 625 is used to release the resources corresponding to the second target container after the workflow task is executed.

[0156] The second mounting unit 63 is used to mount the code of the model workflow module through the second persistent volume.

[0157] All of the above technical solutions can be arbitrarily combined to form optional embodiments of the present application, which will not be described in detail here.

[0158] The second model building device 60 provided in the embodiment of the present application is applied to the model workflow module, and receives the workflow configuration information generated according to the client request from the interface service module forwarded by the K8s cluster through the second receiving unit 61, and the execution unit 62 executes the corresponding workflow task in the second target container according to the client request and the workflow configuration information. The embodiment of the present application can develop the model workflow module separately, run it in workflow mode, refine the different workflow tasks and dependencies of the machine learning life cycle, improve the ability to build machine learning model services, realize flexible and scalable deployment of modules, improve R&D efficiency, and reduce time costs and container resource utilization.

[0159] The present application also provides a server, such as Fig.10 As shown, it shows a schematic diagram of the structure of the server involved in the embodiment of the present application. The server may include one or more processors 701 of processing cores, one or more computer-readable storage media memories 702, a power supply 703, an input unit 704 and other components. Those skilled in the art can understand that Fig.10 The server structure shown in the figure does not constitute a limitation on the server, and may include more or fewer components than shown in the figure, or combine certain components, or arrange the components differently. Among them:

[0160] The processor 701 is the control center of the server, and uses various interfaces and lines to connect various parts of the entire server. By running or executing software programs and / or modules stored in the memory 702, and calling data stored in the memory 702, the processor 701 performs various functions of the server and processes data, thereby monitoring the server as a whole. Optionally, the processor 701 may include one or more processing cores; preferably, the processor 701 may integrate an application processor and a modem processor, wherein the application processor mainly processes the operating system, user interface, and application programs, and the modem processor mainly processes wireless communications. It is understandable that the above-mentioned modem processor may not be integrated into the processor 701.

[0161] The memory 702 can be used to store software programs and modules. The processor 701 executes various functional applications and data processing by running the software programs and modules stored in the memory 702. The memory 702 may mainly include a program storage area and a data storage area, wherein the program storage area may store an operating system, an application required for at least one function (such as a sound playback function, an image playback function, etc.), etc.; the data storage area may store data created according to the use of the server, etc. In addition, the memory 702 may include a high-speed random access memory, and may also include a non-volatile memory, such as at least one disk storage device, a flash memory device, or other volatile solid-state storage devices. Accordingly, the memory 702 may also include a memory controller to provide the processor 701 with access to the memory 702.

[0162] The server also includes a power supply 703 for supplying power to each component. Preferably, the power supply 703 can be logically connected to the processor 701 through a power management system, so as to manage charging, discharging, power consumption and other functions through the power management system. The power supply 703 can also include one or more DC or AC power supplies, recharging systems, power failure detection circuits, power converters or inverters, power status indicators and other arbitrary components.

[0163] The server may further include an input unit 704, which may be used to receive input digital or character information and generate keyboard, mouse, joystick, optical or trackball signal input related to user settings and function control.

[0164] Although not shown, the server may further include a display unit, etc., which will not be described in detail herein. Specifically in this embodiment, the processor 701 in the server will load the executable files corresponding to the processes of one or more application programs into the memory 702 according to the following instructions, and the processor 701 will run the application programs stored in the memory 702 to implement various functions.

[0165] When executing the executable file corresponding to the process of the application program applied to the interface service module, the processor 701 performs the following steps:

[0166] Receive a client request transmitted by a K8s cluster; generate corresponding workflow configuration information in a first target container according to the client request; send the client request and the workflow configuration information to the model workflow module based on the K8s cluster, wherein the workflow configuration information is used to instruct the model workflow module to execute the corresponding workflow task.

[0167] In some embodiments, when the processor 701 executes the step of generating corresponding workflow configuration information in the first target container according to the client request, the step includes:

[0168] According to the client request, determining a first target container matching the client request from preset container resources;

[0169] Create workflow configuration information corresponding to the client request in the first target container, wherein the workflow configuration information is data created based on a YAML configuration file.

[0170] In some embodiments, the processor 701 is further configured to execute: mounting the code of the interface service module through the first persistent volume.

[0171] When executing the executable file corresponding to the process of the application program applied to the model workflow module, the processor 701 performs the following steps:

[0172] Receive workflow configuration information generated according to a client request from an interface service module and forwarded by a K8s cluster; and execute a corresponding workflow task in a second target container according to the client request and the workflow configuration information.

[0173] In some embodiments, the processor 701 performs the step of executing the corresponding workflow task in the second target container according to the client request and the workflow configuration information, including:

[0174] Starting a workflow engine based on the workflow configuration information generated according to the client request from the interface service module and forwarded by the K8s cluster;

[0175] Controlling the workflow engine to start workflow tasks corresponding to different client requests according to workflow configuration information generated by different client requests, wherein the workflow configuration information also includes a dependency relationship between the client request and the workflow task;

[0176] Determining a second target container matching the workflow task from preset container resources according to the client request;

[0177] The workflow task is executed in the second target container.

[0178] After executing the step of executing the workflow task in the second target container, the processor 701 further includes: releasing resources corresponding to the second target container after the workflow task is executed.

[0179] In some embodiments, the processor 701 is further configured to execute: mounting the code of the interface service module through the first persistent volume.

[0180] The above operations are specifically described in the previous embodiments and will not be described in detail here.

[0181] Accordingly, the embodiment of the present application also provides an electronic device, and the model building system described in the embodiment of the present application can be run in the electronic device. Fig.11 As shown, the electronic device may include a radio frequency (RF) circuit 801, a memory 802 including one or more computer-readable storage media, an input unit 803, a display unit 804, a sensor 805, an audio circuit 806, a wireless fidelity (WiFi) module 807, a processor 808 including one or more processing cores, and a power supply 809. Those skilled in the art will appreciate that Fig.11 The electronic device structure shown in the figure does not constitute a limitation on the electronic device, and may include more or fewer components than shown in the figure, or combine certain components, or arrange the components differently.

[0182] The RF circuit 801 can be used for receiving and sending signals during information transmission or calls. In particular, after receiving the downlink information of the base station, it is handed over to one or more processors 808 for processing; in addition, the uplink data is sent to the base station. Generally, the RF circuit 801 includes but is not limited to an antenna, at least one amplifier, a tuner, one or more oscillators, a subscriber identity module (SIM) card, a transceiver, a coupler, a low noise amplifier (LNA), a duplexer, etc. In addition, the RF circuit 801 can also communicate with the network and other devices through wireless communication.

[0183] The memory 802 can be used to store software programs and modules, and the processor 808 executes various functional applications and data processing by running the software programs and modules stored in the memory 802. The memory 802 may mainly include a program storage area and a data storage area, wherein the program storage area may store an operating system, an application required for at least one function, etc.; the data storage area may store data created according to the use of the electronic device, etc. In addition, the memory 802 may include a high-speed random access memory, and may also include a non-volatile memory, such as at least one disk storage device, a flash memory device, or other volatile solid-state storage devices. Accordingly, the memory 802 may also include a memory controller to provide the processor 808 and the input unit 803 with access to the memory 802.

[0184] The input unit 803 can be used to receive input digital or character information, and generate keyboard, mouse, joystick, optical or trackball signal input related to user settings and function control. Specifically, in a specific embodiment, the input unit 803 may include a touch-sensitive surface and other input devices. The touch-sensitive surface, also known as a touch display screen or a touchpad, can collect user touch operations on or near it (such as operations performed by the user using any suitable object or accessory such as a finger, stylus, etc. on or near the touch-sensitive surface), and drive the corresponding connection device according to a pre-set program. In addition to the touch-sensitive surface, the input unit 803 may also include other input devices. Specifically, other input devices may include, but are not limited to, one or more of a physical keyboard, function keys (such as volume control keys, switch keys, etc.), a trackball, a mouse, a joystick, etc.

[0185] The display unit 804 can be used to display information input by the user or information provided to the user and various graphical user interfaces of the electronic device, which can be composed of graphics, text, icons, videos and any combination thereof. The display unit 804 may include a display panel. Further, the touch-sensitive surface may cover the display panel, and when the touch-sensitive surface detects a touch operation on or near it, it is transmitted to the processor 808 to determine the type of touch event, and then the processor 808 provides corresponding visual output on the display panel according to the type of touch event. Although in Fig.11 In the embodiment, the touch-sensitive surface and the display panel are used as two independent components to realize input and output functions, but in some embodiments, the touch-sensitive surface and the display panel can be integrated to realize input and output functions.

[0186] The electronic device may further include at least one sensor 805, such as a light sensor, a motion sensor, and other sensors. The electronic device may also be equipped with other sensors such as a gyroscope, a barometer, a hygrometer, a thermometer, an infrared sensor, etc., which will not be described in detail here.

[0187] The audio circuit 806, the speaker, and the microphone can provide an audio interface between the user and the electronic device. The audio circuit 806 can transmit the electrical signal converted from the received audio data to the speaker, which is converted into a sound signal for output; on the other hand, the microphone converts the collected sound signal into an electrical signal, which is received by the audio circuit 806 and converted into audio data, and then the audio data is output to the processor 808 for processing, and then sent to another electronic device through the RF circuit 801, or the audio data is output to the memory 802 for further processing. The audio circuit 806 may also include an earplug jack to provide communication between an external headset and the electronic device.

[0188] WiFi is a short-range wireless transmission technology. Electronic devices can help users send and receive emails, browse web pages, and access streaming media through WiFi module 807. It provides users with wireless broadband Internet access. Fig.11 A WiFi module 807 is shown, but it is understandable that it is not an essential component of the electronic device and can be omitted as needed without changing the essence of the invention.

[0189] The processor 808 is the control center of the electronic device. It uses various interfaces and lines to connect various parts of the entire mobile phone. It executes various functions of the electronic device and processes data by running or executing software programs and / or modules stored in the memory 802, and calling data stored in the memory 802. Optionally, the processor 808 may include one or more processing cores; preferably, the processor 808 may integrate an application processor and a modem processor, wherein the application processor mainly processes the operating system, user interface, and application programs, and the modem processor mainly processes wireless communications. It is understandable that the above-mentioned modem processor may not be integrated into the processor 808.

[0190] The electronic device also includes a power source 809 (such as a battery) for supplying power to various components. Preferably, the power source can be logically connected to the processor 808 through a power management system, so that the power management system can manage functions such as charging, discharging, and power consumption.

[0191] Although not shown, the electronic device may also include a camera, a Bluetooth module, etc., which will not be described in detail herein. Specifically in this embodiment, the processor 808 in the electronic device will load the executable files corresponding to the processes of one or more computer programs into the memory 802 according to the following instructions, and the processor 808 will run the computer programs stored in the memory 802 to implement various functions.

[0192] When executing the executable file corresponding to the process of the application program applied to the interface service module, the processor 808 performs the following steps:

[0193] Receive a client request transmitted by a K8s cluster; generate corresponding workflow configuration information in a first target container according to the client request; send the client request and the workflow configuration information to the model workflow module based on the K8s cluster, wherein the workflow configuration information is used to instruct the model workflow module to execute the corresponding workflow task.

[0194] In some embodiments, when the processor 808 executes the step of generating corresponding workflow configuration information in the first target container according to the client request, the step includes:

[0195] According to the client request, determining a first target container matching the client request from preset container resources;

[0196] Create workflow configuration information corresponding to the client request in the first target container, wherein the workflow configuration information is data created based on a YAML configuration file.

[0197] In some embodiments, the processor 808 is further configured to execute: mounting the code of the interface service module through the first persistent volume.

[0198] When executing the executable file corresponding to the process of the application program applied to the model workflow module, the processor 808 performs the following steps:

[0199] Receive workflow configuration information generated according to a client request from an interface service module and forwarded by a K8s cluster; and execute a corresponding workflow task in a second target container according to the client request and the workflow configuration information.

[0200] In some embodiments, the processor 701 performs the step of executing the corresponding workflow task in the second target container according to the client request and the workflow configuration information, including:

[0201] Starting a workflow engine based on the workflow configuration information generated according to the client request from the interface service module and forwarded by the K8s cluster;

[0202] Controlling the workflow engine to start workflow tasks corresponding to different client requests according to workflow configuration information generated by different client requests, wherein the workflow configuration information also includes a dependency relationship between the client request and the workflow task;

[0203] Determining a second target container matching the workflow task from preset container resources according to the client request;

[0204] The workflow task is executed in the second target container.

[0205] After executing the step of executing the workflow task in the second target container, the processor 808 further includes: releasing resources corresponding to the second target container after the workflow task is executed.

[0206] In some embodiments, the processor 808 is further configured to execute: mounting the code of the interface service module through the first persistent volume.

[0207] The above operations are specifically described in the previous embodiments and will not be described in detail here.

[0208] A person of ordinary skill in the art will appreciate that all or part of the steps in the various methods of the above embodiments may be completed by instructions, or by controlling related hardware through instructions. The instructions may be stored in a computer-readable storage medium and loaded and executed by a processor.

[0209] To this end, an embodiment of the present application provides a storage medium in which a plurality of instructions are stored, and the instructions can be loaded by a processor to execute the steps in any one of the model building methods provided in the embodiment of the present application. For example, the instructions can execute the following steps:

[0210] Receive a client request transmitted by a K8s cluster; generate corresponding workflow configuration information in a first target container according to the client request; send the client request and the workflow configuration information to the model workflow module based on the K8s cluster, wherein the workflow configuration information is used to instruct the model workflow module to execute the corresponding workflow task.

[0211] For example, the instruction can also perform the following steps:

[0212] Receive workflow configuration information generated according to a client request from an interface service module and forwarded by a K8s cluster; and execute a corresponding workflow task in a second target container according to the client request and the workflow configuration information.

[0213] The specific implementation of the above operations can be found in the previous embodiments, which will not be described in detail here.

[0214] The storage medium may include: a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk, etc.

[0215] Since the instructions stored in the storage medium can execute the steps in any one of the model building methods provided in the embodiments of the present application, the beneficial effects that can be achieved by any one of the model building methods 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.

[0216] The above is a detailed introduction to a model building system, method, device and storage medium provided in the embodiments of the present application. The principles and implementation methods of the present application are explained in this article using specific examples. The description of the above embodiments is only used to help understand the method of the present application and its core idea. At the same time, for technical personnel in this field, according to the ideas of the present application, there will 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 model building system, characterized in that: The system includes: an interface service module and a model workflow module, wherein the interface service module and the model workflow module operate independently of each other, and the interface service module and the model workflow module interact with each other through a K8s cluster; The interface service module is configured to receive a client request transmitted by the K8s cluster, generate corresponding workflow configuration information in the first target container according to the client request, and send the workflow configuration information generated according to the client request to the model workflow module based on the K8s cluster; The model workflow module is configured to receive the workflow configuration information generated according to the client request from the interface service module and forwarded by the K8s cluster, and execute the corresponding workflow task in the second target container according to the client request and the workflow configuration information; The model workflow module is configured to execute the corresponding workflow task in the second target container according to the client request and the workflow configuration information, specifically including: Starting a workflow engine based on the workflow configuration information generated according to the client request from the interface service module and forwarded by the K8s cluster; Controlling the workflow engine to start different workflow tasks according to workflow configuration information generated by different client requests, wherein the workflow configuration information also includes a dependency relationship between the client request and the workflow task; Determining a second target container matching the workflow task from preset container resources according to the client request; The workflow task is executed in the second target container.

2. The model building system according to claim 1, characterized in that: The interface service module is configured to generate corresponding workflow configuration information in the first target container according to the client request, specifically including: According to the client request, determining a first target container matching the client request from preset container resources; Create workflow configuration information corresponding to the client request in the first target container, wherein the workflow configuration information is data created based on a YAML configuration file.

3. The model building system according to claim 1, wherein: The interface service module is further configured to: The code of the interface service module is mounted through the first persistent volume.

4. A model building method, applied to an interface service module, characterized in that: The method comprises: Receive client requests sent by the K8s cluster; Generate corresponding workflow configuration information in the first target container according to the client request; Based on the K8s cluster, the workflow configuration information generated according to the client request is sent to the model workflow module, wherein the workflow configuration information is used to instruct the model workflow module to execute the corresponding workflow task; The model workflow module executes corresponding workflow tasks, including: Starting a workflow engine based on the workflow configuration information generated according to the client request from the interface service module and forwarded by the K8s cluster; Controlling the workflow engine to start different workflow tasks according to workflow configuration information generated by different client requests, wherein the workflow configuration information also includes a dependency relationship between the client request and the workflow task; Determining a second target container matching the workflow task from preset container resources according to the client request; The workflow task is executed in the second target container.

5. The model building method according to claim 4, characterized in that: Generating corresponding workflow configuration information in the first target container according to the client request includes: According to the client request, determining a first target container matching the client request from preset container resources; Create workflow configuration information corresponding to the client request in the first target container, wherein the workflow configuration information is data created based on a YAML configuration file.

6. The model building method according to claim 4, characterized in that: The method further comprises: The code of the interface service module is mounted through the first persistent volume.

7. A model building method, applied to a model workflow module, characterized in that: The method comprises: Receive workflow configuration information generated by client requests from the interface service module forwarded by the K8s cluster; Execute the corresponding workflow task in the second target container according to the client request and the workflow configuration information; The executing the corresponding workflow task in the second target container according to the client request and the workflow configuration information includes: Starting a workflow engine based on workflow configuration information generated by the client request from the interface service module forwarded by the K8s cluster; Controlling the workflow engine to start different workflow tasks according to workflow configuration information generated by different client requests, wherein the workflow configuration information also includes a dependency relationship between the client request and the workflow task; Determining a second target container matching the workflow task from preset container resources according to the client request; The workflow task is executed in the second target container.

8. The model building method according to claim 7, characterized in that: After executing the workflow task in the second target container, the method further includes: After the workflow task is executed, the resources corresponding to the second target container are released.

9. The model building method according to claim 7, characterized in that: The method further comprises: The code of the model workflow module is mounted through the second persistent volume.

10. A model building device, applied to an interface service module, characterized in that: The device comprises: A first receiving unit, used to receive a client request transmitted by the K8s cluster; A generating unit, configured to generate corresponding workflow configuration information in a first target container according to the client request; A sending unit, configured to send the workflow configuration information generated according to the client request to the model workflow module based on the K8s cluster, wherein the workflow configuration information is used to instruct the model workflow module to execute the corresponding workflow task; The model workflow module executes corresponding workflow tasks, including: Starting a workflow engine based on the workflow configuration information generated according to the client request from the interface service module and forwarded by the K8s cluster; Controlling the workflow engine to start different workflow tasks according to workflow configuration information generated by different client requests, wherein the workflow configuration information also includes a dependency relationship between the client request and the workflow task; Determining a second target container matching the workflow task from preset container resources according to the client request; The workflow task is executed in the second target container.

11. A model building device, applied to a model workflow module, characterized in that: The device comprises: A second receiving unit is used to receive workflow configuration information generated by a client request from an interface service module forwarded by a K8s cluster; An execution unit, configured to execute a corresponding workflow task in a second target container according to the client request and the workflow configuration information; The execution unit is further used to start the workflow engine based on the workflow configuration information generated by the client request from the interface service module forwarded by the K8s cluster; Controlling the workflow engine to start different workflow tasks according to workflow configuration information generated by different client requests, wherein the workflow configuration information also includes a dependency relationship between the client request and the workflow task; Determining a second target container matching the workflow task from preset container resources according to the client request; The workflow task is executed in the second target container.

12. A storage medium, characterized in that: The storage medium stores a plurality of instructions, and the instructions are suitable for being loaded by a processor to execute the steps in any one of the methods of claims 4 to 9.

Citation Information

Patent Citations

  • Method, system and related equipment for scheduling deep learning jobs

    CN108920259A

  • Running method of data analysis workflow, data analysis system and storage medium

    CN109189750A