Algorithm management method and device, electronic equipment and storage medium

By obtaining the management information of multiple configuration information, multiple algorithm processes in the life cycle of the access algorithm are configured, and the problems of complex algorithm configuration process and high management cost in the prior art are solved, and the effect of simplifying configuration and reducing management costs is achieved.

CN120029661APending Publication Date: 2025-05-23CONTEMPORARY AMPEREX FUTURE ENERGY RES INST (SHANGHAI) LTD +1
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202311557908.8
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-11-21
Publication Date
2025-05-23

AI Technical Summary

Technical Problem

In the prior art, multiple processes in the life cycle of an algorithm need to set configuration information separately, resulting in complex algorithm configuration process, high management cost, and difficult to achieve unified management.

Method used

By obtaining management information including multiple configuration information, multiple algorithm processes in the life cycle of the access algorithm are configured to realize one-stop configuration and avoid cross-platform interaction.

Benefits of technology

The algorithm configuration process is simplified, the algorithm management cost is reduced, and the unified management of multiple processes in the algorithm life cycle is realized.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120029661A_ABST
    Figure CN120029661A_ABST
Patent Text Reader

Abstract

The invention is suitable for the technical field of algorithms, and provides an algorithm management method and device, electronic equipment and a storage medium, and the algorithm management method comprises the steps: obtaining the management information of a to-be-accessed algorithm, each piece of configuration information is used for configuring one algorithm process in the life cycle of the to-be-accessed algorithm; the multiple algorithm processes of the life cycle of the to-be-accessed algorithm are configured according to the management information, the multiple algorithm processes of the life cycle of the to-be-accessed algorithm are configured through the management information, and the algorithm configuration process does not need to request configuration information from other platforms, so that cross-platform management is avoided; one-stop configuration is carried out on the algorithm to be accessed through the management information describing the life cycle information of the algorithm, the algorithm configuration process is simplified, and the management cost of the algorithm is reduced.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of algorithm technology, and in particular to an algorithm management method, device, electronic device and storage medium. Background Art

[0002] Algorithm application is the current trend of intelligent applications. In the process of face, vehicle and behavior analysis, algorithms can improve the accuracy and efficiency of analysis. The life cycle of each algorithm includes multiple processes, such as algorithm access, algorithm registration, algorithm planning, algorithm scheduling, algorithm release, etc. Usually, each process is completed by the corresponding device or module. Multiple processes need to set configuration information separately, resulting in a more complicated algorithm configuration process, a long algorithm life cycle, and difficulty in unified management of the algorithm. Summary of the invention

[0003] The present application provides an algorithm management method, device, electronic device and storage medium, which configure multiple algorithm processes of the algorithm life cycle of the access algorithm through management information including multiple configuration information to achieve one-stop configuration, and the configuration information does not need to be obtained from other platforms, avoiding cross-platform interaction, simplifying the algorithm configuration process, and reducing the management cost of the algorithm.

[0004] In order to achieve the above objectives, this application adopts the following technical solutions:

[0005] In a first aspect, an algorithm management method is provided, the method comprising:

[0006] Acquire management information of the algorithm to be accessed, the management information comprising a plurality of configuration information, each of the configuration information being used to configure one of the algorithm processes in the life cycle of the algorithm to be accessed;

[0007] A plurality of algorithm processes of the life cycle of the algorithm to be accessed are configured according to the management information.

[0008] In this way, the multiple algorithm processes of the algorithm life cycle of the access algorithm are configured through management information including multiple configuration information to achieve one-stop configuration, and the configuration information does not need to be obtained from other platforms, avoiding cross-platform interaction, simplifying the algorithm configuration process, and thus reducing the management cost of the algorithm.

[0009] In a possible implementation manner of the first aspect, the management information includes registration information, scheduling information, and scheduling information; and configuring multiple algorithm processes of the life cycle of the algorithm to be accessed according to the management information includes:

[0010] Registering the algorithm to be accessed according to the registration information, and obtaining an algorithm execution package of the algorithm to be accessed;

[0011] Arrange the algorithm execution package according to the arrangement information to obtain an execution plan of the algorithm execution package;

[0012] The algorithm execution package is scheduled according to the execution plan and the scheduling information to obtain a scheduling strategy for the algorithm execution package, so as to schedule the algorithm execution package according to the scheduling strategy.

[0013] In this way, during the algorithm management process, configuration information is provided to the three algorithm processes through management information, and the configuration of the three algorithm processes is completed through management information. The configuration process does not need to interact with other platforms, which simplifies the configuration process of algorithm management and shortens the algorithm configuration time.

[0014] In a possible implementation manner of the first aspect, the management information is generated according to a preset standard protocol.

[0015] In this way, the management information is defined by means of a standard protocol so as to manage the management information in a unified manner. For example, the definition of the standard protocol facilitates the generation and analysis of management information of various types of algorithms according to the standard protocol.

[0016] In a possible implementation of the first aspect, before configuring the algorithm life cycle of the algorithm to be accessed based on the management information, the method also includes: parsing the at least two configuration information in a multi-threaded manner to obtain at least two configuration information; then configuring the algorithm process of the life cycle of the algorithm to be accessed based on the management information, including: configuring the algorithm process of the life cycle of the algorithm to be accessed based on at least two configuration information.

[0017] Since the management information includes multiple configuration information, and the multiple configuration information are independent of each other, the multiple configuration information can be parsed in parallel in a multi-threaded manner to improve the parsing efficiency.

[0018] In a possible implementation manner of the first aspect, the management information satisfies a preset data format and at least two of the configuration information satisfy a preset arrangement rule.

[0019] In this way, by limiting the data format of management information, it is convenient to uniformly manage the management information of different types of algorithms to reduce algorithm management costs; by limiting the arrangement of at least two configuration information, at least two configuration information can be parsed in parallel according to the arrangement to improve parsing efficiency.

[0020] In a possible implementation manner of the first aspect, the algorithm to be accessed is obtained through development and verification processing, and obtaining management information of the algorithm to be accessed includes: obtaining management information of the algorithm to be accessed based on the development and verification processing.

[0021] Since the algorithm development and verification process includes multiple steps, such as algorithm operation, algorithm testing, algorithm operator name, operator performance testing, etc., that is, the algorithm development and verification process requires the algorithm function to be tested, various information of the algorithm can be obtained during the test process, such as operator name, operator rules, etc., and management information is formed based on this information. This realizes the combination of algorithm development and verification and algorithm configuration, providing a unified information source for management information and ensuring the authenticity and accuracy of management information.

[0022] In a possible implementation manner of the first aspect, each algorithm to be accessed includes multiple operators, and the registration information includes operator information; and registering the algorithm to be accessed according to the registration information to obtain an algorithm execution package of the algorithm to be accessed includes:

[0023] The algorithm to be accessed is registered according to the operator information to obtain an algorithm execution package of the algorithm to be accessed.

[0024] In this way, the algorithm to be accessed is registered through the operator information to obtain the execution package corresponding to each operator, so as to implement the call to each operator according to the execution package.

[0025] In a possible implementation manner of the first aspect, the registration information further includes rule information corresponding to the algorithm to be accessed, and the registering the algorithm to be accessed according to the operator information to obtain the algorithm execution package of the algorithm to be accessed includes:

[0026] The algorithm to be accessed is registered according to the operator information and the rule information to obtain an algorithm execution package of the algorithm to be accessed.

[0027] In this way, the corresponding algorithm execution package is determined according to the operator information and the rule information corresponding to each operator, so that the execution package corresponding to each operator in the multiple operators is implemented according to the corresponding rule.

[0028] In a possible implementation manner of the first aspect, the algorithm to be accessed includes multiple operators, and the orchestration information includes lineage information between the multiple operators;

[0029] The step of arranging the algorithm execution package according to the arrangement information to obtain an execution plan of the algorithm execution package includes:

[0030] The algorithm execution package is arranged according to the lineage information to obtain an execution plan of the algorithm execution package.

[0031] In this way, the execution plan of the algorithm execution package is determined through the blood relationship information between operators, so as to determine the scheduling strategy of multiple operators in the algorithm execution package.

[0032] In a possible implementation of the first aspect, the management information is in the form of a schema. Thus, due to the characteristics of the Schema protocol itself, the management information is easy to expand and personalize, thereby making the content of the management information more flexible.

[0033] In a second aspect, an algorithm management device is provided, the algorithm management device comprising:

[0034] An acquisition module, used to acquire management information of the algorithm to be accessed, wherein the management information includes a plurality of configuration information, each of which is used to configure one of the algorithm processes in the life cycle of the algorithm to be accessed;

[0035] A configuration module is used to configure multiple algorithm processes of the life cycle of the algorithm to be accessed according to the management information.

[0036] In a third aspect, an electronic device is provided, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein when the processor executes the computer program, the steps of the algorithm management method in any optional implementation of the first aspect are implemented.

[0037] In a fourth aspect, a computer-readable storage medium is provided, wherein the computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the steps of the algorithm management method as described in any one of the first aspects are implemented.

[0038] In a fifth aspect, the present application provides a computer program product. When the computer program product is run on an electronic device, the electronic device executes any one of the methods described in the first aspect.

[0039] It can be understood that the beneficial effects of the second to fifth aspects mentioned above can be found in the relevant description of the first aspect mentioned above, and will not be repeated here. BRIEF DESCRIPTION OF THE DRAWINGS

[0040] Figure 1 A flowchart of an algorithm management method provided in an embodiment of the present application;

[0041] Figure 2 A flowchart of an algorithm management method provided in an embodiment of the present application;

[0042] Figure 3 A schematic diagram of a multi-threaded parsing process provided in an embodiment of the present application;

[0043] Figure 4 A schematic diagram of the structure of an algorithm management device provided in an embodiment of the present application;

[0044] Figure 5A schematic diagram of the structure of an electronic device provided in an embodiment of the present application. DETAILED DESCRIPTION

[0045] It should be noted that the terms used in the embodiments of the present application are only used to explain the specific embodiments of the present application, and are not intended to limit the present application. In the description of the embodiments of the present application, unless otherwise specified, "multiple" refers to two or more than two, and "at least one", "one or more" refers to one, two or more. The terms "first" and "second" are only used for descriptive purposes and cannot be understood as indicating or implying relative importance or implicitly indicating the number of indicated technical features. Thus, it is defined that the "first" and "second" features can explicitly or implicitly include one or more of the features.

[0046] References to "one embodiment" or "some embodiments" etc. described in this specification mean that a particular feature, structure or characteristic described in conjunction with the embodiment is included in one or more embodiments of the present application. Thus, the phrases "in one embodiment", "in some embodiments", "in some other embodiments", "in some other embodiments", etc. that appear at different places in this specification do not necessarily refer to the same embodiment, but mean "one or more but not all embodiments", unless otherwise specifically emphasized in other ways. The terms "including", "comprising", "having" and their variations all mean "including but not limited to", unless otherwise specifically emphasized in other ways.

[0047] Algorithm management includes algorithm development verification and algorithm configuration, which are usually completed by two independent systems. For example, algorithm development verification is implemented by the algorithm development verification platform, and algorithm configuration is implemented by the business management platform. Algorithm management includes multiple processes, such as algorithm registration, algorithm orchestration, algorithm scheduling, etc. Each process requires corresponding configuration information. Some configuration information can be configured by the user, and some configuration information needs to be provided by the algorithm development verification platform. There is cross-platform management and a more complicated configuration process, which leads to a longer algorithm management process and increases the management cost of the algorithm.

[0048] Based on the above problems, an embodiment of the present application provides an algorithm management method. The present application configures multiple algorithm processes of the algorithm life cycle of the access algorithm through management information including multiple configuration information to achieve one-stop configuration, and the configuration information does not need to be obtained from other platforms, avoiding cross-platform interaction, simplifying the algorithm configuration process, and reducing the management cost of the algorithm.

[0049] See also Figure 1 , Figure 1 A flowchart of an algorithm management method provided in an embodiment of the present application, the algorithm management method comprises the following steps:

[0050] S101. Acquire management information of an algorithm to be accessed, where the management information includes a plurality of configuration information, each of which is used to configure one of the algorithm processes in the life cycle of the algorithm to be accessed.

[0051] It can be understood that the life cycle of an algorithm includes multiple algorithm processes, such as algorithm registration, algorithm scheduling, algorithm publishing, etc. Each process requires corresponding configuration information, for example, the scheduling process requires configuration of scheduling information, and the publishing process requires configuration of publishing information.

[0052] S102: Configure multiple algorithm processes of the life cycle of the access algorithm according to the management information.

[0053] It is easy to understand that the life cycle of an algorithm includes multiple algorithm processes, such as algorithm registration, algorithm scheduling, and algorithm release. The management information includes multiple configuration information, and the corresponding algorithm process is configured through each configuration information.

[0054] Optionally, the management information may include configuration information of all algorithm processes in the algorithm's life cycle, and may also include configuration information of specific algorithm processes in the algorithm's life cycle, such as configuration information of algorithm processes such as algorithm registration, algorithm scheduling, and algorithm release.

[0055] In this way, since the management information includes multiple configuration information, and the algorithm process of the life cycle of the algorithm to be accessed is configured through multiple configuration information, and multiple configuration processes of the life cycle of the algorithm to be accessed are configured through one management information, the configuration information acquisition process and the configuration process of the algorithm to be accessed are simplified, and the management cost of the algorithm is reduced.

[0056] It is easy to understand that before obtaining the algorithm, the algorithm needs to be developed and verified. The development and verification of the algorithm refers to the testing and verification of the newly developed algorithm (i.e., the initial algorithm) to ensure that it can correctly achieve the expected functions and effects, thereby obtaining the algorithm to be connected that meets the expected functions and effects. The development and verification process of the algorithm includes multiple steps, such as algorithm operation, algorithm testing, algorithm operator name, operator performance testing, etc., that is, the development and verification process of the algorithm requires the function of the algorithm to be tested. Various information about the algorithm can be obtained during the test, such as operator name, operator rules, etc., and management information is formed based on this information. Thereby realizing the combination of algorithm development verification and algorithm configuration. Then S101 includes:

[0057] Based on the development verification process, obtain the management information of the algorithm to be accessed.

[0058] Furthermore, in addition to obtaining information based on the development verification process, information forming management information may also be obtained from other means, such as scheduling information configured by a user.

[0059] It is easy to understand that the life cycle of an algorithm includes several core algorithm processes, such as algorithm registration, algorithm orchestration, and algorithm scheduling. Through the configuration of the above core algorithm processes, the scheduling and execution of the access algorithm can be realized.

[0060] In some embodiments, the management information includes registration information, scheduling information, and scheduling information. Figure 2 , Figure 2 A schematic diagram of an algorithm management method provided in an embodiment of the present application, Figure 1 The S102 includes:

[0061] S201. Register the algorithm to be accessed according to the registration information, and obtain an algorithm execution package of the algorithm to be accessed.

[0062] Specifically, the registration of the algorithm to be accessed can be implemented according to the algorithm name, algorithm code address (such as algorithm git address) and algorithm version number in the registration information, and an algorithm execution package is formed after the registration is completed.

[0063] Optionally, the registration information includes algorithm information, such as the algorithm name, algorithm code address (such as algorithm git address) and algorithm version number.

[0064] Furthermore, if the algorithm to be accessed includes multiple operators, the algorithm information includes operator information, such as operator name, operator code, operator version number, etc., then S201 registers the algorithm to be accessed based on the operator information to obtain algorithm execution packages corresponding to multiple operators, and the algorithm execution package is an execution package corresponding to multiple operators.

[0065] Among them, the algorithm execution package refers to a set of software tools and libraries used to execute specific algorithms so that users can easily call and use the algorithms. They usually provide an easy-to-use interface that allows users to execute algorithms through simple function calls.

[0066] S202: Arrange the algorithm execution package according to the arrangement information to obtain an execution plan of the algorithm execution package.

[0067] It can be understood that since each algorithm execution package usually includes multiple operators, the algorithm execution package is algorithmically arranged to determine the execution plans of the multiple operators, where the execution plan includes the execution order, execution time, algorithm results, etc. of the multiple operators.

[0068] Among them, algorithm orchestration refers to organizing the operators of multiple algorithms in a certain order or condition to form a complete algorithm flow. Algorithm orchestration can be used to determine the execution plans of multiple operators.

[0069] S203: Determine a scheduling strategy for the algorithm execution package according to the execution plan and scheduling information, so as to schedule the algorithm according to the scheduling strategy.

[0070] It can be understood that after determining the execution plan, since the execution plan is only an implementation plan, in the actual scheduling process of the algorithm execution package, it is necessary to select the final scheduling strategy according to the actual scenario, that is, the final implementation method. For example, the execution plan in S202 includes three implementation methods. When scheduling the algorithm execution package, one of the implementation methods is selected as the scheduling strategy based on actual needs or actual application scenarios.

[0071] In this way, during the algorithm management process, management information is used to provide configuration information for algorithm processes in multiple algorithm life cycles, which simplifies the configuration process of algorithm management and shortens the algorithm configuration time. In addition, multiple algorithm processes can be uniformly configured and managed, reducing the management cost of the algorithm.

[0072] It can be understood that there are many types of algorithms. For example, different battery algorithms in different fields, such as battery fault algorithms, battery status-related algorithms, battery life-related algorithms, etc., have different algorithm structures and algorithm descriptions. If the corresponding management information is determined based on the type of algorithm, the operation is complicated and it is difficult to uniformly manage multiple algorithms. In order to facilitate the unified management of the management information of multiple algorithms, or the multiple configuration information of each algorithm, the management information in S101 is generated based on a preset standard protocol, that is, the management information meets the requirements of the preset standard protocol, so as to facilitate the unified management of the management information of different types of algorithms to reduce the algorithm management cost.

[0073] Furthermore, the management information satisfies a preset data format and the multiple configuration information satisfies a preset arrangement rule. Thus, by limiting the data format of the management information, it is convenient to uniformly manage the management information of different types of algorithms to reduce the algorithm management cost; by limiting the arrangement of multiple configuration information, it is convenient to perform parallel analysis of multiple configuration information according to the arrangement to improve the analysis efficiency.

[0074] The present application provides an example of management information. The following example illustrates the data format of the management information and the arrangement of the three types of configuration information: registration information, arrangement information, and scheduling information.

[0075] {"name":"Operator name"

[0076] toperatorInfo':{

[0077] "operatorCode":"Operator code"

[0078] operatorName": "Operator name"

[0079] "operatorGit":"Operator address"

[0080] "vexsion":"version number"}

[0081] "ruleInfo":{

[0082] "ruleCode":"Rule code"

[0083] "ruleName":"Rule name"

[0084] "gscope": "Applicable area"

[0085] "ruleCofig":"Rule Configuration"}

[0086] "dsInfo:{

[0087] / / ds information};

[0088] "osl":{ / / os1 information}

[0089] *input":{}

[0090] "config":{

[0091] "output":{}}

[0092] "relatedInfo":{ / / blood relationship

[0093] "relatedcodelist':{

[0094] "braz11sx"}}

[0095] "pulishInfo":

[0096] / / Publish information}

[0097] nscheduleInfo":{

[0098] / / Scheduling information

[0099] }};

[0100] The management information includes registration information, orchestration information and scheduling information. The registration information includes operator name, operator orchestration (operator code), operator name, operator git address and operator version number; the registration information also includes: rule orchestration (rule code), rule name, rule configuration, ds information and osl information. The orchestration information includes lineage information (lineage relationship). The registration information, orchestration information and scheduling information are arranged in sequence.

[0101] Optionally, the management information includes multiple process configuration information of the life cycle of the algorithm to be accessed. Before S101, the process further includes: importing the management information so as to subsequently configure the algorithm based on the imported management information. The importing method of the management information includes but is not limited to:

[0102] Import method 1: Upload management information through the web page to import management information;

[0103] Import method 2: communicate through the Remote Procedure Call (RPC) protocol to import the management information into another device to realize the import of management information;

[0104] Import method three: forward the configuration information to a specific device through a message middleware (such as a gateway or router with data forwarding function) to realize the import of management information.

[0105] Optionally, the management information includes configuration information of multiple algorithm processes in the life cycle of the algorithm to be accessed, and the multiple process configuration information is independent of each other. Before obtaining the management information and configuring the multiple algorithm management processes according to the management information, it is necessary to parse the multiple configuration information in the management information. In order to improve the parsing efficiency, the multiple configuration information in the management information can be parsed in parallel through multi-threading. Then, before configuring the multiple algorithm processes in the life cycle of the algorithm to be accessed according to the management information, the method further includes:

[0106] At least two pieces of configuration information are parsed in a multi-threaded manner to obtain at least two pieces of configuration information.

[0107] Accordingly, S102 includes:

[0108] The algorithm process of the life cycle of the access algorithm is configured according to at least two of the configuration information.

[0109] For example, see Figure 3 , Figure 3 A schematic diagram of a data parsing process provided in an embodiment of the present application, Figure 3The management information in the system includes registration information, arrangement information and scheduling information. The registration information, arrangement information and scheduling information in the management information are parsed in parallel by three threads; and the parsed information is then stored in a corresponding database.

[0110] Furthermore, after parsing the configuration information, the configuration information corresponding to each algorithm process is stored in a corresponding position, for example, the operator information and the blood relationship information are stored in different storage areas respectively.

[0111] It can be understood that the algorithm rule refers to a series of steps or regulations that need to be followed when solving a specific problem. For example, the input, output, and determinism of the algorithm. If the algorithm to be connected includes multiple operators, it is necessary to determine the rule information corresponding to each operator so that the algorithm execution package of the corresponding operator can be executed according to the corresponding rule. The registration information also includes the rule information. In S201, the algorithm to be connected is registered according to the algorithm information and the rule information to obtain the algorithm execution package of the algorithm to be connected.

[0112] It can be understood that since each algorithm to be connected can be executed in a variety of operating environments, the operating environment of the algorithm to be connected needs to be considered in the process of generating the algorithm execution package, so the registration information also includes the operating environment information, and then S201 is registered according to the operator information and the operating environment information to obtain the algorithm execution package of the algorithm to be connected. The operating environment information refers to the software and hardware environment required when executing the algorithm, such as the development environment and the test environment.

[0113] Optionally, the registration information also includes data structure (ds) information, which refers to the way to organize and store data. Common data structures include arrays, linked lists, stacks, queues, trees, graphs, etc. Different data structures are suitable for different application scenarios, and choosing a suitable data structure can improve the efficiency of the algorithm.

[0114] Optionally, the registration information also includes information about the order of space and time complexity (osl). The order of time complexity and space complexity of an algorithm are important indicators of the quality of the algorithm, and can help us evaluate the efficiency and feasibility of the algorithm.

[0115] It can be understood that if each algorithm to be connected includes multiple operators, each operator has corresponding rules and the operators also have corresponding rules, the rules between operators can be determined by the blood relationship (blood relationship information) of the algorithm. Blood relationship information refers to the dependency and call relationship between the operators of the algorithm. It describes how an algorithm is derived from other algorithms or depends on other algorithms for implementation. Blood relationship information may include the following: parent-child relationship, reference relationship, parameter relationship, etc. If the arrangement information includes blood relationship information, then S202 includes:

[0116] The algorithm execution package is arranged according to the lineage information to obtain the execution plan of the algorithm execution package.

[0117] In an optional implementation, the algorithm execution package is arranged according to the lineage information to obtain an execution plan of the algorithm execution package, including:

[0118] After obtaining the lineage information, the execution order of the algorithm execution package is determined based on the lineage information, and each lineage node is configured. Each lineage node represents a data processing step, that is, the processing process of each operator. Then, the algorithm result table is determined based on the output results of multiple operators, where the algorithm result is the output result of multiple operators; then, the execution time is allocated to each operator based on factors such as the resources required for the execution of each operator and the complexity of each operator; then, the execution plan of the algorithm execution package is determined based on the execution order, the algorithm result table, and the execution time. In this way, the execution plan of the algorithm execution package can be determined through the algorithm lineage relationship (lineage information).

[0119] It can be understood that in other embodiments, the orchestration information may also be user configuration information, and the execution order of multiple operators and other execution plans are determined based on the user configuration information. Then S202 is to orchestrate the algorithm execution package based on the user configuration information to obtain the execution plan of the algorithm execution package.

[0120] Optionally, the scheduling information includes scheduling information, wherein the scheduling information refers to the relevant information for scheduling and managing the algorithm tasks during the execution of the algorithm. The scheduling information includes but is not limited to the following aspects: task priority, task dependency, resource allocation, etc. The execution order of multiple operators can be determined according to the task priority, the output results of multiple operators can be determined according to the task dependency, and the execution time of multiple operators can be determined according to the resource allocation. The scheduling strategy of the algorithm execution package can be determined through the scheduling information. Then S203 includes:

[0121] Determine the scheduling strategy of the algorithm execution package based on the scheduling information and execution plan, and schedule the algorithm based on the scheduling strategy.

[0122] Optionally, the scheduling information further includes a scheduling mode, and the scheduling mode includes an online scheduling mode and an offline scheduling mode. Then, in S203, algorithm scheduling is performed according to the scheduling strategy, including:

[0123] Algorithm scheduling is performed based on scheduling mode and scheduling strategy.

[0124] In this way, according to different scenario requirements, the corresponding scheduling mode is selected for scheduling to meet different scheduling requirements.

[0125] Among them, the offline scheduling mode is to import the original data in the form of file import, that is, after the task file is imported, the algorithm application interface is called: the algorithm interface can be scheduled according to the information of the task-related user, wherein the user information can be the user ID, the user's product arrangement and other information, and the algorithm execution package list is obtained according to the user ID and the product arrangement, and the corresponding basic class algorithm is determined, and then the parameter splicing and ds call are executed, and the comprehensive class algorithm scheduling parameters are assembled according to the basic class algorithm call results, and the comprehensive class algorithm scheduling information is stored; then the comprehensive class algorithm is scheduled regularly (for example, once every 2 minutes), and the unexecuted comprehensive class algorithm is obtained; then it is determined whether the basic class algorithm is executed successfully, if it is executed successfully, ds is called for execution; if it fails, the state is marked. The difference between the online scheduling mode and the offline scheduling mode is that the task file is obtained in real time.

[0126] Optionally, the management information is in the form of a schema, where a schema is a specification that describes data structures, data types, data constraints, and data relationships. It can be used in databases, data exchange formats, and programming languages ​​to define and describe the organization, attributes, and operations of data. Management data in the form of a schema is easy to expand so that users can adjust the content of management information according to their needs. It has expansion flexibility and is suitable for the access of various scenario algorithms, especially algorithms in the battery field. Management information in the form of a schema is easy to import management information.

[0127] In an optional implementation, the scheduling information further includes publishing information, wherein the publishing information includes a publishing address and a publishing protocol, the publishing address may be a publishing platform of the algorithm execution package, for example, the GitHub platform, and the publishing protocol may be a protocol followed by the algorithm release, for example, the GNU General Public License (GPL), then after S203, it further includes:

[0128] The algorithm execution package is published according to the publishing information. That is, the algorithm execution package is published to the corresponding platform according to the preset publishing protocol.

[0129] In an optional implementation, the management information of the algorithm to be accessed is obtained, and the management information includes registration information, orchestration information and scheduling information; the algorithm to be accessed is registered according to the registration information to obtain the algorithm execution package of the algorithm to be accessed, wherein the registration information includes algorithm information, rule information, ds information and os l information, the orchestration information includes lineage information, and the orchestration information includes lineage information (lineage relationship); the scheduling information includes scheduling information and publishing information. Multiple threads are used to parse the registration information, orchestration information and scheduling information in parallel, and the parsed information is stored in a corresponding position, and then the algorithm to be accessed is registered according to the registration information to obtain the algorithm execution package of the algorithm to be accessed; the algorithm execution package is orchestrated according to the orchestration information to obtain the execution plan of the algorithm execution package; the algorithm execution package is scheduled according to the execution plan and the scheduling information to obtain the scheduling strategy of the algorithm execution package, the algorithm execution package is scheduled according to the scheduling strategy, and then the algorithm execution package is published according to the publishing information.

[0130] It should be understood that the size of the serial numbers of the steps in the above embodiments does not mean the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of the present application.

[0131] It should be understood that, although the various steps in the flowcharts involved in the above-mentioned embodiments are displayed in sequence according to the indication of the arrows, these steps are not necessarily executed in sequence according to the order indicated by the arrows. Unless there is a clear explanation in this article, the execution of these steps does not have a strict order restriction, and these steps can be executed in other orders. Moreover, at least a part of the steps in the flowcharts involved in the above-mentioned embodiments can include multiple steps or multiple stages, and these steps or stages are not necessarily executed at the same time, but can be executed at different times, and the execution order of these steps or stages is not necessarily to be carried out in sequence, but can be executed in turn or alternately with other steps or at least a part of the steps or stages in other steps.

[0132] Based on the same inventive concept, the embodiment of the present application also provides an algorithm management device. The algorithm management device provided in the embodiment of the present application can implement each process of the embodiment of the above-mentioned algorithm management method, and can achieve the same technical effect, so the specific limitations in one or more algorithm management device embodiments provided below can refer to the limitations on the graphics rendering method above, and will not be repeated here to avoid repetition.

[0133] Reference Figure 4 , Figure 4 A schematic diagram of the structure of an algorithm management device provided in an embodiment of the present application.

[0134] The algorithm management device includes an acquisition module and a configuration module, wherein:

[0135] The acquisition module is used to obtain the management information of the algorithm to be accessed;

[0136] The configuration module is used to configure multiple algorithm processes of the life cycle of the algorithm to be accessed according to the management information.

[0137] The configuration module is further used to: register the algorithm to be accessed according to the registration information, and obtain an algorithm execution package of the algorithm to be accessed;

[0138] Arrange the algorithm execution package according to the arrangement information to obtain an execution plan of the algorithm execution package;

[0139] The algorithm execution package is scheduled according to the execution plan and the scheduling information to obtain a scheduling strategy for the algorithm execution package, so as to schedule the algorithm execution package according to the scheduling strategy.

[0140] Furthermore, each algorithm to be accessed includes multiple operators, and the registration information includes operator information;

[0141] The configuration module is further used to register the algorithm to be connected according to the operator information to obtain an algorithm execution package of the algorithm to be connected.

[0142] Furthermore, the registration information also includes rule information corresponding to the algorithm to be accessed, and the configuration module is further used to: register the algorithm to be accessed according to the operator information and the rule information to obtain an algorithm execution package of the algorithm to be accessed.

[0143] Furthermore, the algorithm to be connected includes multiple operators, and the orchestration information includes lineage information between the multiple operators; the orchestration module is further used to: orchestrate the algorithm execution package according to the lineage information to obtain an execution plan of the algorithm execution package.

[0144] Furthermore, the configuration module is also used to publish the algorithm execution package according to the publishing information.

[0145] The configuration module is also used to parse the management information using multiple threads to obtain any two of the registration information, the scheduling information and the scheduling information.

[0146] Furthermore, the management information is in the form of a schema.

[0147] See also Figure 5 , is a schematic diagram of the structure of an electronic device provided in an embodiment of the present application. Figure 5As shown, the electronic device 50 provided in this embodiment may include: a processor 540, a memory 541, and a computer program 542 stored in the memory 541 and executable on the processor 540, such as a program corresponding to the algorithm management method. When the processor 540 executes the computer program 542, the steps applied in the algorithm management method embodiment are implemented, such as Figure 1 and Figure 2 Steps shown.

[0148] Exemplarily, the computer program 542 may be divided into one or more modules / units, one or more modules / units are stored in the memory 541, and are executed by the processor 540 to complete the present application. One or more modules / units may be a series of computer program instruction segments capable of completing specific functions, and the instruction segments are used to describe the execution process of the computer program 542 in the electronic device 50.

[0149] Those skilled in the art will understand that Figure 5 The electronic device 50 is merely an example and does not limit the electronic device 50 . The electronic device 50 may include more or less components than those shown in the figure, or some components may be combined, or different components may be included.

[0150] The processor 540 may be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSP), application specific integrated circuits (ASIC), field programmable gate arrays (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. A general-purpose processor may be a microprocessor or any conventional processor, etc.

[0151] The memory 541 may be an internal storage unit of the electronic device 50, such as a hard disk or memory of the electronic device 50. The memory 541 may also be an external storage device of the electronic device 50, such as a plug-in hard disk, a smart media card (SMC), a secure digital (SD) card, or a flash card, etc. equipped on the electronic device. Furthermore, the memory 541 may also include both an internal storage unit of the electronic device 50 and an external storage device.

[0152] The memory 541 is used to store computer programs and other programs and data required by the electronic device. The memory 541 can also be used to temporarily store data that has been output or is to be output.

[0153] Those skilled in the art can clearly understand that for the convenience and simplicity of description, only the division of the above-mentioned functional units is used as an example for illustration. In actual applications, the above-mentioned functions can be assigned to different functional units as needed, that is, the internal structure of the power supply control device can be divided into different functional units to complete all or part of the functions described above. The functional units in the embodiment can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The above-mentioned integrated unit can be implemented in the form of hardware or in the form of software functional units. In addition, the specific names of the functional units are only for the convenience of distinguishing each other, and are not used to limit the scope of protection of this application. The specific working process of the units in the above-mentioned system can refer to the corresponding process in the aforementioned method embodiment, which will not be repeated here.

[0154] An embodiment of the present application further provides a computer-readable storage medium, in which a computer program is stored. When the computer program is executed by a processor, the steps in the above-mentioned method embodiments can be implemented.

[0155] An embodiment of the present application provides a computer program product. When the computer program product is executed on an electronic device, the electronic device implements the steps in the above-mentioned method embodiments.

[0156] In the above embodiments, the description of each embodiment has its own emphasis. For parts that are not described or recorded in detail in a certain embodiment, reference can be made to the relevant descriptions of other embodiments.

[0157] Those of ordinary skill in the art will appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of this application.

[0158] The above-described embodiments are only used to illustrate the technical solutions of the present application, rather than to limit it; although the present application has been described in detail with reference to the foregoing embodiments, those of ordinary skill in the art should understand that: they can still modify the technical solutions described in the foregoing embodiments, or perform equivalent replacements on some of the technical features; and these modifications or replacements do not make the essence of the corresponding technical solutions deviate from the spirit and scope of the technical solutions of the various embodiments of the present application, and should all be included in the protection scope of the present application.

[0159] Finally, it should be noted that: the above is only the specific implementation manner of the present application, but the protection scope of the present application is not limited thereto. Any changes or replacements within the technical scope disclosed in the present application should be covered by the protection scope of the present application. Therefore, the protection scope of the present application should be subject to the protection scope of the claims.

Claims

1. An algorithm management method, It is characterized in that The method comprises: Acquire management information of the algorithm to be accessed, the management information comprising a plurality of configuration information, each of the configuration information being used to configure one of the algorithm processes in the life cycle of the algorithm to be accessed; A plurality of algorithm processes of the life cycle of the algorithm to be accessed are configured according to the management information.

2. The method according to claim 1, It is characterized in that The management information includes registration information, scheduling information and scheduling information; the configuration of multiple algorithm processes of the life cycle of the algorithm to be accessed according to the management information includes: Registering the algorithm to be accessed according to the registration information to obtain an algorithm execution package of the algorithm to be accessed; Arrange the algorithm execution package according to the arrangement information to obtain an execution plan of the algorithm execution package; The algorithm execution package is scheduled according to the execution plan and the scheduling information to obtain a scheduling strategy for the algorithm execution package.

3. The method according to claim 1, It is characterized in that The management information is generated according to a preset standard protocol.

4. The method according to claim 3, It is characterized in that Before configuring multiple algorithm processes of the life cycle of the algorithm to be accessed according to the management information, the method further includes: Parsing the management information in a multi-threaded manner to obtain a plurality of configuration information; The algorithm process of the life cycle of the access algorithm is configured according to the management information, including: The algorithm process of the life cycle of the access algorithm is configured according to the plurality of configuration information.

5. The method according to claim 3, It is characterized in that The management information satisfies a preset data format and the plurality of configuration information satisfies a preset arrangement rule.

6. The method according to any one of claims 1 to 5, It is characterized in that The algorithm to be accessed is obtained through development and verification processing, and the management information of the algorithm to be accessed is obtained, including: Based on the development verification process, management information of the algorithm to be accessed is obtained.

7. The method according to claim 2, It is characterized in that The algorithm to be accessed includes multiple operators, and the arrangement information includes blood relationship information between the multiple operators; The step of arranging the algorithm execution package according to the arrangement information to obtain an execution plan of the algorithm execution package includes: The algorithm execution package is arranged according to the lineage information to obtain an execution plan of the algorithm execution package.

8. An algorithm management device, It is characterized in that The algorithm management device comprises: An acquisition module, used to acquire management information of the algorithm to be accessed, wherein the management information includes a plurality of configuration information, each of which is used to configure one of the algorithm processes in the life cycle of the algorithm to be accessed; A configuration module is used to configure multiple algorithm processes of the life cycle of the algorithm to be accessed according to the management information.

9. An electronic device, It is characterized in that The method comprises a memory, a processor and a computer program stored in the memory and executable on the processor, wherein the processor implements the steps of the algorithm management method according to any one of claims 1 to 7 when executing the computer program.

10. A computer-readable storage medium storing a computer program. It is characterized in that When the computer program is executed by a processor, the steps of the algorithm management method according to any one of claims 1 to 7 are implemented.