Operator processing method, device, electronic device and storage medium
By automating the packaging and deployment of public cloud AI operators and generating public cloud and private operator deployment packages, the problem of low efficiency in public cloud privatization transformation is solved, consistency between public cloud and private versions is achieved, user experience is improved, and costs are reduced.
Patent Information
- Application Number
- CN202210582181.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-05-26
- Publication Date
- 2025-10-03
- Estimated Expiration
- 2042-05-26
AI Technical Summary
The existing technology for privatizing public cloud AI operators is inefficient and complex, and the public cloud and private versions are inconsistent, resulting in poor user experience and high costs.
Provides an operator processing method that obtains the target operator and packages it to generate deployment packages for the public cloud cluster and target server, which are stored in the operator warehouse respectively. This enables automated deployment and reinforcement of public cloud and private operators, ensuring consistency of API standards.
It improves the efficiency of privatization transformation of public cloud AI operators, shortens the transformation time, ensures the consistency of public cloud and private versions, improves user experience and reduces costs.
Smart Images

Figure CN114936029B_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to the field of artificial intelligence technology, specifically to the field of cloud computing, and more particularly to an operator processing method, device, electronic device, and storage medium. Background Art
[0002] Currently, public clouds offer a wide range of basic services, such as Application Programming Interfaces (APIs), for users to purchase and integrate into their own products or processes. Artificial Intelligence (AI) APIs account for the majority of these services. After purchasing public cloud services, some users may wish to convert their purchased public cloud AI operators into private versions. However, converting public cloud AI operators into private versions based on relevant technologies is a complex and labor-intensive process. Summary of the Invention
[0003] The present disclosure provides an operator processing method, device, electronic device, and storage medium to at least solve the technical problem of low efficiency in privatizing public clouds in existing solutions.
[0004] According to one aspect of the present disclosure, an operator processing method is provided, including: obtaining a target operator; packaging the target operator to generate a first operator deployment package and a second operator deployment package, wherein the first operator deployment package is used for deployment on a public cloud cluster, and the second operator deployment package is used for deployment on a target server; and storing the first operator deployment package and the second operator deployment package in an operator warehouse.
[0005] According to another aspect of the present disclosure, an operator processing device is provided, including: an acquisition module for acquiring a target operator; a generation module for packaging the target operator to generate a first operator deployment package and a second operator deployment package, wherein the first operator deployment package is used for deployment on a public cloud cluster, and the second operator deployment package is used for deployment on a target server; and a storage module for storing the first operator deployment package and the second operator deployment package in an operator warehouse.
[0006] According to another aspect of the present disclosure, an electronic device is provided, comprising: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to execute the operator processing method proposed in the present disclosure.
[0007] According to another aspect of the present disclosure, a non-transitory computer-readable storage medium storing computer instructions is provided, wherein the computer instructions are used to enable a computer to execute the operator processing method proposed in the present disclosure.
[0008] According to another aspect of the present disclosure, a computer program product is provided, including a computer program, which executes the operator processing method proposed in the present disclosure when a processor executes the computer program.
[0009] In the present disclosure, the target operator is first obtained; then the target operator is packaged and processed to generate a first operator deployment package and a second operator deployment package, wherein the first operator deployment package is used for deployment on a public cloud cluster, and the second operator deployment package is used for deployment on a target server; finally, the first operator deployment package and the second operator deployment package are stored in an operator warehouse. This improves the efficiency of privatizing operators. It is easy to notice that in the process of packaging the target operator, the first operator deployment package deployed on the public cloud cluster and the second operator deployment package deployed on the target server can be obtained at the same time, which can shorten the time for privatizing the operator, thereby solving the technical problem of low efficiency of privatizing the public cloud in related technologies.
[0010] It should be understood that the contents described in this section are not intended to identify the key or important features of the embodiments of the present disclosure, nor are they intended to limit the scope of the present disclosure. Other features of the present disclosure will become readily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS
[0011] The accompanying drawings are provided to facilitate a better understanding of the present invention and do not constitute a limitation of the present disclosure.
[0012] Figure 1 It is a schematic diagram of public cloud and private cloud listing;
[0013] Figure 2a It is a public cloud deployment architecture diagram;
[0014] Figure 2b It is a private deployment architecture diagram;
[0015] Figure 3 is a hardware structure block diagram of a computer terminal (or mobile device) for implementing an operator processing method according to an embodiment of the present disclosure;
[0016] Figure 4 is a flow chart of an operator processing method according to an embodiment of the present disclosure;
[0017] Figure 5 is a flowchart of unified submission of public and private operators according to an embodiment of the present disclosure;
[0018] Figure 6This is an architectural diagram of the unified external API standards of the public cloud and private operators according to an embodiment of the present disclosure;
[0019] Figure 7 is an interaction diagram of main modules according to an embodiment of the present disclosure;
[0020] Figure 8 This is a structural block diagram of an operator processing device according to an embodiment of the present disclosure. DETAILED DESCRIPTION
[0021] The following description of exemplary embodiments of the present disclosure is made in conjunction with the accompanying drawings, including various details of the embodiments of the present disclosure to facilitate understanding. These details should be considered as merely exemplary. Therefore, those skilled in the art will recognize that various changes and modifications may be made to the embodiments described herein without departing from the scope and spirit of the present disclosure. Similarly, for the sake of clarity and conciseness, descriptions of well-known functions and structures are omitted in the following description.
[0022] It should be noted that the terms "first", "second", etc. in the specification and claims of the present disclosure and the above-mentioned drawings are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that the numbers used in this way can be interchanged where appropriate, so that the embodiments of the present disclosure described herein can be implemented in an order other than those illustrated or described herein. 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 units is not necessarily limited to those steps or units clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices.
[0023] Statistics show that many API-based basic services are sold on public clouds, which are convenient for users to purchase and integrate into their own products or processes. Among them, AI-based API services account for the majority. After using public cloud services, some users will request the private version of the operator they have purchased. However, the current process may still have the following problems: long waiting time after ordering the private deployment package of the public cloud service; inconsistent model effects between the purchased private version and the public cloud service; inconsistent API standards, and poor user access experience. Improve user experience, reduce usage costs, and increase R&D rate. The present disclosure can achieve the above functions.
[0024] Currently, there are several main methods to improve the privatization of AI operators in public clouds.
[0025] Solution 1: random access simulation.
[0026] Solution 2 uses multi-way merging. When writing data, it is evenly distributed across the shards using a hash (also known as a hash). Each shard is then sorted separately. When reading, all shards are scanned simultaneously. After the data is transferred back, multi-way merging is performed on the application side to achieve a full-order scan.
[0027] Solution 3, serial scanning technology.
[0028] There are some problems in the relevant technologies, which are as follows: Method 1 can only be used in scenarios where the precise offsets of all data to be accessed are known, such as fixed-length data, or the index key for accessing data is known, etc.; Method 2 can only be used in scenarios where data is already sharded and ordered, such as a web storage system developed by a company's infrastructure department; when using Method 3, the data is automatically sorted into a fully ordered manner when stored. When reading, due to resource limitations, the shards are read and returned serially each time. Since the previous operation does not return, it is impossible to know the starting boundary of the interval to be scanned by the next operation, so it can only be performed in a serial manner.
[0029] In addition, the privatization transformation of AI operators requires manual access, which is cumbersome and costly. In addition, due to the inconsistency of the R&D processes between public cloud and private cloud, version alignment issues may occur. Figure 1 This is a diagram of public cloud and private cloud deployment. As shown in the figure, the public cloud version generated by model training is packaged into a prediction service and hosted in a public cloud cluster. At the same time, the private version is also packaged into a prediction service, and then privately reinforced and finally delivered to the customer for deployment. At the same time, due to the different deployment architectures of public cloud and private cloud, Figure 2a It is a public cloud deployment architecture diagram, such as Figure 2a As shown in the figure, the gateway uses the business logic layer to map and convert the interface of the operator service and encapsulate it into a standard API interface. Figure 2b It is a private deployment architecture diagram. The private version directly exposes the interface of AI operators, such as Figure 2b As shown, the private deployment architecture exposes AI operator services directly to an offline security center through a cluster of Kubernetes (also known as K8S), a portable container orchestration tool that uses Docker. Furthermore, due to inconsistent versions of AI operator services delivered by the public cloud and private deployment, the specific formats of the APIs are also inconsistent.
[0030] According to an embodiment of the present disclosure, an operator processing method is provided. It should be noted that the steps shown in the flowchart of the accompanying drawings can be executed in a computer system such as a set of computer-executable instructions, and although a logical order is shown in the flowchart, in some cases, the steps shown or described can be executed in an order different from that shown here.
[0031] The method embodiments provided in the embodiments of the present disclosure can be executed in a mobile terminal, a computer terminal or a similar electronic device. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device can also represent various forms of mobile devices, such as personal digital processing, cellular phones, smart phones, wearable devices and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely examples and are not intended to limit the implementation of the present disclosure described and / or required herein. Figure 3 A hardware structure block diagram of a computer terminal (or mobile device) for implementing the operator processing method is shown.
[0032] like Figure 3 As shown, the computer terminal 300 includes a computing unit 301, which can perform various appropriate actions and processes according to a computer program stored in a read-only memory (ROM) 302 or a computer program loaded from a storage unit 308 into a random access memory (RAM) 303. Various programs and data required for the operation of the computer terminal 300 can also be stored in the RAM 103. The computing unit 301, the ROM 302, and the RAM 303 are connected to each other via a bus 304. An input / output (I / O) interface 305 is also connected to the bus 304.
[0033] Multiple components in the computer terminal 100 are connected to the I / O interface 305, including an input unit 306, such as a keyboard, a mouse, etc.; an output unit 307, such as various types of displays, speakers, etc.; a storage unit 308, such as a magnetic disk, an optical disk, etc.; and a communication unit 309, such as a network card, a modem, a wireless communication transceiver, etc. The communication unit 309 allows the computer terminal 300 to exchange information / data with other devices via a computer network such as the Internet and / or various telecommunication networks.
[0034] The computing unit 301 can be a variety of general and / or special processing components with processing and computing capabilities. Some examples of the computing unit 301 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various dedicated artificial intelligence (AI) computing chips, various computing units that run machine learning model algorithms, digital signal processors (DSPs), and any appropriate processors, controllers, microcontrollers, etc. The computing unit 301 performs the method described herein. For example, in some embodiments, the operator processing method can be implemented as a computer software program that is tangibly contained in a machine-readable medium, such as a storage unit 308. In some embodiments, part or all of the computer program can be loaded and / or installed on the computer terminal 300 via the ROM 302 and / or the communication unit 309. When the computer program is loaded into the RAM 303 and executed by the computing unit 301, one or more steps of the operator processing method described herein can be performed. Alternatively, in other embodiments, the computing unit 301 can be configured to perform the operator processing method by any other appropriate means (e.g., by means of firmware).
[0035] Various embodiments of the systems and techniques described herein can be implemented in digital electronic circuit systems, integrated circuit systems, field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), application specific standard products (ASSPs), system-on-chip systems (SOCs), programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various embodiments can include being implemented in one or more computer programs that are executable and / or interpreted on a programmable system that includes at least one programmable processor, which can be a special purpose or general purpose programmable processor that can receive data and instructions from a storage system, at least one input device, and at least one output device, and transmit data and instructions to the storage system, the at least one input device, and the at least one output device.
[0036] It should be noted that, in some optional embodiments, the above Figure 3 The electronic device shown may include hardware elements (including circuits), software elements (including computer code stored on a computer-readable medium), or a combination of hardware elements and software elements. Figure 3 This is merely one example of a particular embodiment and is intended to illustrate the types of components that may be present in the electronic device described above.
[0037] Under the above operating environment, the present disclosure provides the following Figure 4 The operator processing method shown in Figure 3 The computer terminal or similar electronic device shown is used for execution. Figure 4 This is a flow chart of an operator processing method provided according to an embodiment of the present disclosure. Figure 4 As shown, the method may include the following steps:
[0038] Step S401: Obtain a target operator.
[0039] The above target operator can be an AI operator of the public cloud.
[0040] In an optional embodiment, after developing an operator, the user may perform a performance test on the operator, and obtain a test result showing that the target operator is available.
[0041] Step S402: Package the target operator to generate a first operator deployment package and a second operator deployment package, wherein the first operator deployment package is used for deployment on a public cloud cluster, and the second operator deployment package is used for deployment on a target server.
[0042] The first operator deployment package may be a deployment package generated by packaging a public cloud operator.
[0043] The second operator deployment package may be a deployment package generated by packaging the privatized operator.
[0044] The target server may be a server of a user on which a privatized operator is to be deployed.
[0045] In an optional embodiment, the target operator to be converted into a private operator can be privately hardened, thereby generating a private operator. Alternatively, relevant personnel can fill in a security hardening configuration file on the system. The system pipeline will perform private hardening on the public cloud operator based on the configuration file and the target language, which can be Java, Python, or other languages.
[0046] After the reinforcement is completed, the system will automatically package the privatized operator to generate a second deployment package. The system can also package another part of the target operators that have not been privatized and reinforced to generate a first deployment package. After packaging the privatized operator, the system can further package another part of the target operators that have not been privatized and reinforced to generate a first deployment package. The first operator deployment package is used for deployment on the public cloud cluster, and the second operator deployment package is used for deployment on the target server. After the deployment package is generated, the system will test the output deployment package to ensure that the two deployment packages are available. Step S403 stores the first operator deployment package and the second operator deployment package in the operator warehouse.
[0047] The above operator warehouse can be used to store the generated operator deployment packages.
[0048] In an optional embodiment, the public cloud operator can be packaged and tested to generate a first operator deployment package, and the privatized operator can be packaged and tested to generate a second operator deployment package. Optionally, the first operator deployment package and the second operator deployment package can be stored in an operator warehouse. If the user needs to purchase a public cloud operator or a privatized operator later, the corresponding deployment package can be quickly determined from the operator warehouse based on the operator characteristics and exported. After the first operator deployment package is exported, the public cloud deployment module will automatically deploy the first operator deployment package to the public cloud cluster. After the second operator deployment package is exported, it can be deployed to the server of the user to deploy the privatized operator through the privatized deployment module.
[0049] According to the above steps S401 to S403 of the present disclosure, the target operator is packaged to generate a first operator deployment package and a second operator deployment package, wherein the first operator deployment package is used for deployment on a public cloud cluster, and the second operator deployment package is used for deployment on a target server; the first operator deployment package and the second operator deployment package are stored in an operator warehouse. This improves the efficiency of privatizing the AI operators of the public cloud. It is easy to notice that in the process of packaging the target operator, the first operator deployment package deployed on the public cloud cluster and the second operator deployment package deployed on the target server can be obtained at the same time, which can shorten the time for privatizing the operator, thereby solving the technical problem of low efficiency in privatizing the public cloud in related technologies.
[0050] Optionally, the target operator is packaged to generate a first operator deployment package and a second operator deployment package, including: reinforcing the target operator to generate a public cloud operator and a privatized operator; and packaging the public cloud operator and the privatized operator respectively to generate a first operator deployment package and a second operator deployment package.
[0051] In the present disclosure, relevant staff can reinforce the target operator by filling in the security reinforcement configuration file to the system. The system pipeline will privatize and reinforce the target operator that needs to be transformed into a privatized operator based on different configuration files and target languages. The target language can be Java, Python and other languages.
[0052] After the privatized operator hardening is complete, the privatized operator is generated and then enters automated packaging. The system uses a specific method to package the hardened privatized operator and the unhardened public cloud operator. Packaging the public cloud operator generates a first operator deployment package, while packaging the privatized operator generates a second operator deployment package. The first operator deployment package is used for deployment on the public cloud cluster, while the second operator deployment package is used for deployment on the server of the user to deploy the privatized operator.
[0053] Currently, there are two deployment methods for private deployment. One is deployment based on the application container engine (docker), and the other is deployment based on the orchestration management tool of portable containers (kubernetes, abbreviated as k8s). Both deployment methods can be completed through images.
[0054] When packaging is completed, the system will also test the output deployment package to ensure that the generated deployment package is usable.
[0055] Through the above steps, the target operator can be hardened first, and after the hardening process, a private operator can be generated. Then, the public cloud operator and the private operator can be packaged. After the public cloud operator is packaged, a first operator deployment package can be generated, and after the private operator is packaged, a second operator deployment package can be generated. In an optional embodiment, a corresponding private version can be generated after obtaining the public cloud operator. This allows users to quickly obtain the corresponding private operator when they need to obtain the private version of the public cloud operator, further improving the accuracy of the private transformation of the public cloud AI operator.
[0056] Optionally, the target operator is reinforced to generate a public cloud operator and a privatized operator, including: encapsulating the target operator to generate a public cloud operator; and reinforcing the public cloud operator using a reinforcement configuration file to generate a privatized operator.
[0057] In an optional embodiment, after obtaining the target operator, the target operator can be encapsulated to generate a public cloud operator, and the encapsulated public cloud operator can be stress tested. After the test is completed, the public cloud operator can be reinforced using a reinforcement configuration file to generate a privatized operator.
[0058] The above encapsulation is a processing method for target operators that do not need to be transformed into privatized operators.
[0059] The above reinforcement processing is to perform a reinforcement operation on the target operator that needs to be transformed into a privatized operator, so that it generates a privatized operator.
[0060] In an optional embodiment, C language or C++ language coding can be selected to encapsulate the target operator that does not need to be transformed into a privatized operator. The target operator that needs to be transformed into a privatized operator can be reinforced to become a privatized operator.
[0061] In another optional embodiment, operators can be hardened through code encryption, model encryption, and anti-debugging hardening. Code encryption involves hardening operators by writing code, generating private operators. Available languages include Java and Python. Model encryption involves hardening operators through model training, generating private operators. Anti-debugging hardening involves hardening files to prevent debugging tools from debugging them. Relevant personnel can enter a security hardening configuration file into the system, and the system pipeline will perform private hardening based on the configuration file and target language.
[0062] Through the above steps, the target operator is encapsulated to obtain a public cloud operator. The public cloud operator to be converted into a private operator is hardened using the hardening configuration file to generate the private operator. After obtaining the public cloud operator, the corresponding private version is generated, making it easy for users to quickly obtain the private version of the public cloud operator when they need it.
[0063] Optionally, encapsulating the target operator to generate a public cloud operator includes: testing the target operator to obtain a test result, wherein the test result is used to indicate whether the target operator is available; in response to the test result satisfying the condition that the target operator is available, encapsulating the target operator to generate a public cloud operator.
[0064] In an optional embodiment, whether the target operator is available may be determined by testing the target operator.
[0065] In another optional embodiment, the target operator can be tested by the running time under stress. If the target operator runs continuously for more than 12 hours under stress, its availability will be greater than 99.9%, and it can be considered that the target operator is available.
[0066] In another optional embodiment, corresponding stress testing services can be performed based on the stress testing cluster to obtain performance data of the central processing unit, memory display program, positioning system, etc. Based on these performance parameters, stability testing and performance testing of operators can be implemented.
[0067] In another optional embodiment, the target operator shown to be available in the test results may be packaged to generate a public cloud operator.
[0068] Through the above steps, the acquired target operators are tested, and available target operators are screened out. These available target operators are then packaged to generate public cloud operators. This can improve the accuracy of converting public cloud operators into private operators.
[0069] Optionally, the method further includes: determining a target operator deployment package in response to the received deployment instruction; and deploying the target operator deployment package.
[0070] The deployment instruction is a computer instruction. It can be issued by an operator repository, a public cloud cluster where the first operator deployment package is to be deployed, a server of a user where the second operator deployment package is to be deployed, or triggered manually. The deployment instruction can carry the identification information of the deployment package to be deployed. Upon receiving the deployment instruction, the system will select the first operator deployment package or the second operator deployment package for automated deployment based on the identification information carried in the deployment instruction.
[0071] The target operator deployment package mentioned above may be an operator deployment package to be deployed determined according to the deployment instruction, wherein the operator deployment package to be deployed may be the first operator deployment package or the second operator deployment package.
[0072] In an optional embodiment, when the deployment instruction carries identification information for deploying a first operator deployment package, the first operator deployment package corresponding to the identification information can be obtained from the operator warehouse based on the identification information; when the deployment instruction carries identification information for deploying a second operator deployment package, the second operator deployment package corresponding to the identification information can be obtained from the operator warehouse based on the identification information.
[0073] In another optional embodiment, after receiving the deployment instruction, the deployment module can automatically deploy the first operator deployment package and the second operator deployment package. The deployment module automatically deploys the first operator deployment package to the public cloud cluster and the second operator deployment package to the server of the user to deploy the privatized operator.
[0074] Through the above steps, different deployment methods can be used for different deployment packages, which can further improve the accuracy of deployment.
[0075] Optionally, the operator warehouse includes at least one of the following: a first operator warehouse, a second operator warehouse, and determines the target operator deployment package in response to the received deployment instruction, including: obtaining the deployment version and identification information based on the deployment instruction, wherein the deployment version includes at least one of the following: a public cloud version and a privatized version; in response to the deployment version being a public cloud version, determining the first operator warehouse as the target operator warehouse; in response to the deployment version being a privatized version, determining the second operator warehouse as the target operator warehouse; and determining the target operator deployment package from the target operator warehouse based on the identification information.
[0076] The target operator warehouse may include a first operator warehouse and a second operator warehouse, and may respond to the deployment instruction according to the identification information and deployment version information carried by the deployment instruction, and further determine the target operator deployment package.
[0077] The above deployment versions may include public cloud versions or private cloud versions.
[0078] The above identification information may be information carried by the deployment instruction, and the public cloud operator or private version of the public cloud required by the user may be determined based on the information.
[0079] In an optional embodiment, when the received deployment instruction is to deploy a public cloud version, the deployment module will determine the first operator warehouse as the target operator warehouse, obtain the first operator deployment package from the target operator warehouse, and then deploy the first operator deployment package to the public cloud cluster. When the received deployment instruction is to deploy a private version, the deployment module will determine the second operator warehouse as the target operator warehouse, obtain the second operator deployment package from the target operator warehouse, and then deploy the second operator deployment package to the server of the user to deploy the private operator. Through the above steps, different versions of deployment packages are deployed in different ways, which can further improve the efficiency of converting public cloud operators into private operators.
[0080] Optionally, deploying the target operator deployment package includes: deploying the target operator deployment package using a target gateway, wherein the target gateway is used to provide a unified interface for the target operator.
[0081] The target operator deployment package may be a first operator deployment package or a second operator deployment package.
[0082] The above-mentioned target gateway can perform operator interface mapping and API interface encapsulation, and provide unified operator API services to the outside world, thereby ensuring unified API standards for public cloud and private cloud.
[0083] Among them, the public cloud achieves mapping and forwarding through the commercial network service resolution technology of the container matrix technology (also known as the bns resolution technology of the matrix container technology); when privatized, it achieves mapping and forwarding through the orchestration management tool method of accessing portable containers through external traffic (also known as the nodeport technology of k8s).
[0084] Figure 5 This is a flowchart of a unified submission of public and private operators in an embodiment of the present disclosure, such as Figure 5 As shown, during the coding phase, the authentication software development kit (SDK) is integrated. Then, you can choose to compile the code with obfuscation in C or C++, harden the code against debugging, and select a model encryption solution before packaging the service-oriented operators. After packaging is complete, the public cloud access phase begins. First, the public cloud operators are submitted, deployed in a stress testing environment, and then stress tested. After testing, a subset of available operators are displayed for automated packaging and testing, and the public cloud operator deployment packages are stored in the public cloud operator repository. The remaining available operators enter the private access phase, where they are first submitted for private configuration. Automatic encryption can then be performed using code such as Java or Python. Automatic encryption of the service model can be performed using C or C++. Automated packaging and testing of the private operators are then performed, and finally, the tested private operator deployment packages are stored in the operator repository.
[0085] according to Figure 5 The method shown can integrate the entire operator submission process into a single flow. That is, submitting an operator once can automatically complete the output of public cloud and private operators. Relevant personnel only need to focus on integration such as authentication and encryption during the coding stage, without having to worry about subsequent system automatic reinforcement and packaging operations. The reinforcement and packaging operations of private operators are completely automated processes and do not require human intervention. After the public cloud and private operators are output, they are stored in the relevant public cloud and private operator warehouses and associated with a unified version number to solve the problem of inconsistent public and private versions.
[0086] Figure 6 This is the architecture diagram of the unified API standards for public cloud and private operators in the embodiment of this disclosure. Figure 6 As shown in the figure, a gateway module is introduced to unify the interface mapping and encapsulation modules into a relatively standard trait transfer state application program interface (also known as RESTful API service). After the interface receives the protocol request, the back-end public cloud and private operator services uniformly perform mapping and forwarding of the back-end operator services.
[0087] In an optional embodiment, a gateway is used to package and deploy the target operator, further ensuring the unified API standard of the public cloud and privatization, thereby improving the accuracy of transforming the public cloud operator into the privatization operator.
[0088] Optionally, the target operator deployment package is deployed using the target gateway, including: in response to the target operator deployment package being the first operator deployment package, the target operator deployment package is deployed in the public cloud cluster using the target gateway through the deployment module; in response to the target operator deployment package being the second operator deployment package, the target operator deployment package is deployed in the target server using the target gateway through the deployment module.
[0089] The target gateway may be a gateway in a deployment module, which may automatically deploy the target operator deployment package based on the deployment instructions.
[0090] The target server may be a server of a user on which a privatized operator is to be deployed.
[0091] In an optional embodiment, the target operator deployment package can be deployed using the target gateway. Based on the deployment instructions, the first operator deployment package is deployed in the public cloud; and the second operator deployment package is deployed on the server of the user of the privatized operator to be deployed.
[0092] By following the above steps and using the target gateway to package and deploy the target operator, the API standards of public cloud operators and private operators can be unified, further improving the accuracy of transforming public cloud operators into private operators.
[0093] Figure 7 This is a diagram showing the interaction of the main modules in the embodiment of the present disclosure. Figure 7 As shown, first submit the operator and enter the operator submission module. The operator submission module transfers a part of the public cloud operators directly to the automated packaging and testing module, and transfers the other part of the operators that need to be reinforced with private operators to the operator reinforcement module for reinforcement. The processed module will also be passed to the automated packaging and testing module. The further automated packaging and testing module stores all operators in the operator warehouse, and the operator warehouse then sends the operators to the deployment module for public cloud deployment and private export. The deployment module automatically deploys the operators, and at the same time introduces the gateway module to unify the interface mapping and encapsulation modules into a relatively standard trait transfer state application program interface (also known as restful api service). After the interface receives the protocol request, the back-end public cloud collection and private operator service will uniformly perform the mapping and forwarding of the back-end operator service.
[0094] By packaging the target operator, a first operator deployment package and a second operator deployment package are generated, wherein the first operator deployment package is used for deployment on the public cloud cluster, and the second operator deployment package is used for deployment on the target server; the first operator deployment package and the second operator deployment package are stored in the operator warehouse. This improves the efficiency of privatizing the public cloud's AI operators. It is easy to notice that by packaging the target operator and generating two different operator deployment packages at the same time, and storing them in the operator warehouse, a corresponding privatized version can be generated after the public cloud operator is obtained, so that users can quickly obtain the privatized version of the public cloud operator when they need it. The accuracy of the privatization of the public cloud's AI operators can be further improved, so as to at least solve the technical problems of low efficiency and low accuracy in the privatization of the public cloud's AI operators in existing solutions.
[0095] In the technical solutions disclosed herein, the collection, storage, use, processing, transmission, provision and disclosure of user personal information involved comply with the provisions of relevant laws and regulations and do not violate public order and good morals.
[0096] Through the description of the above embodiments, those skilled in the art can clearly understand that the method according to the above embodiment can be implemented by means of software plus the necessary general hardware platform, or of course by hardware, but in many cases the former is a better implementation method. Based on this understanding, the technical solution of the present disclosure, or the part that contributes to the prior art, can be embodied in the form of a software product, which is stored in a storage medium and includes a number of instructions for enabling a terminal device (which can be a mobile phone, computer, server, or network device, etc.) to execute the methods described in each embodiment of the present disclosure.
[0097] The present disclosure also provides an operator processing device for implementing the above-mentioned embodiments and preferred embodiments. Details already described will not be repeated. As used below, the term "module" may refer to a combination of software and / or hardware that implements a predetermined function. Although the devices described in the following embodiments are preferably implemented in software, implementation using hardware, or a combination of software and hardware, is also possible and contemplated.
[0098] Figure 8 is a structural block diagram of an operator processing device according to one embodiment of the present disclosure, such as Figure 8 As shown, an operator processing device 800 includes:
[0099] Acquisition module 801, used to acquire the target operator;
[0100] A generation module 802 is configured to package the target operator to generate a first operator deployment package and a second operator deployment package, wherein the first operator deployment package is used for deployment on a public cloud cluster, and the second operator deployment package is used for deployment on a target server;
[0101] The storage module 803 is used to store the first operator deployment package and the second operator deployment package in the operator warehouse.
[0102] Optionally, the generation module includes: a reinforcement unit, used to reinforce the target operator to generate a public cloud operator and a privatized operator; a packaging processing unit, used to package the public cloud operator and the privatized operator respectively to generate a first operator deployment package and a second operator deployment package.
[0103] Optionally, the reinforcement unit includes: an encapsulation subunit, used to encapsulate the target operator to generate a public cloud operator; and a reinforcement subunit, used to reinforce the public cloud operator using a reinforcement configuration file to generate a privatized operator.
[0104] Optionally, the encapsulation subunit is further used to test the target operator and obtain a test result, wherein the test result is used to indicate whether the target operator is available; the encapsulation subunit is further used to encapsulate the target operator in response to the condition that the test result indicates that the target operator is available, and generate a public cloud operator.
[0105] Optionally, the device further includes: a determination module, configured to determine a target operator deployment package in response to a received deployment instruction; and a deployment module, configured to deploy the target operator deployment package.
[0106] Optionally, the determination module also includes: an acquisition unit, used to acquire the deployment version and identification information based on the deployment instruction, wherein the deployment version includes at least one of the following: a public cloud version and a privatized version; a first determination unit, used to determine the first operator warehouse as the target operator warehouse in response to the deployment version being a public cloud version; a second determination unit, used to determine the second operator warehouse as the target operator warehouse in response to the deployment version being a privatized version; and a third determination unit, used to determine the target operator deployment package from the target operator warehouse based on the identification information.
[0107] Optionally, the deployment module includes: a deployment unit, configured to deploy a target operator deployment package using a target gateway, wherein the target gateway is configured to provide a unified interface for the target operator.
[0108] Optionally, the deployment unit includes: a first deployment sub-unit, used to deploy the target operator deployment package in the public cloud cluster using the target gateway through the deployment module in response to the target operator deployment package being the first operator deployment package; a second deployment sub-unit, used to deploy the target operator deployment package in the target server using the target gateway through the deployment module in response to the target operator deployment package being the second operator deployment package.
[0109] It should be noted that the above modules can be implemented through software or hardware. For the latter, it can be implemented in the following ways, but not limited to: the above modules are all located in the same processor; or the above modules are located in different processors in any combination.
[0110] According to an embodiment of the present disclosure, the present disclosure further provides an electronic device, including a memory and at least one processor, wherein the memory stores computer instructions, and the processor is configured to execute the computer instructions to perform the steps in any of the above method embodiments.
[0111] Optionally, the electronic device may further include a transmission device and an input / output device, wherein the transmission device is connected to the processor, and the input / output device is connected to the processor.
[0112] Optionally, in the present disclosure, the processor may be configured to execute the following steps through a computer program:
[0113] S1, obtain the target operator;
[0114] S2: Package the target operator to generate a first operator deployment package and a second operator deployment package. The first operator deployment package is used for deployment on a public cloud cluster, and the second operator deployment package is used for deployment on a target server.
[0115] S3: Store the first operator deployment package and the second operator deployment package in the operator warehouse.
[0116] Optionally, specific examples in this embodiment may refer to the examples described in the above embodiments and optional implementation modes, and this embodiment will not be described in detail here.
[0117] According to an embodiment of the present disclosure, the present disclosure also provides a non-transitory computer-readable storage medium storing computer instructions, wherein the non-transitory computer-readable storage medium stores computer instructions, wherein the computer instructions are configured to execute the steps of any of the above method embodiments during runtime.
[0118] Optionally, in this embodiment, the non-volatile storage medium may be configured to store a computer program for executing the following steps:
[0119] S1, obtain the target operator;
[0120] S2: Package the target operator to generate a first operator deployment package and a second operator deployment package. The first operator deployment package is used for deployment on a public cloud cluster, and the second operator deployment package is used for deployment on a target server.
[0121] S3: Store the first operator deployment package and the second operator deployment package in the operator warehouse.
[0122] Alternatively, in this embodiment, the non-transitory computer-readable storage medium may include, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, devices, or any suitable combination of the above. More specific examples of readable storage media include electrical connections based on one or more wires, portable computer disks, hard disks, random access memories (RAM), read-only memories (ROM), erasable programmable read-only memories (EPROM or flash memory), optical fibers, portable compact disk read-only memories (CD-ROMs), optical storage devices, magnetic storage devices, or any suitable combination of the above.
[0123] According to an embodiment of the present disclosure, the present disclosure also provides a computer program product. The program code for implementing the audio processing method of the present disclosure can be written in any combination of one or more programming languages. These program codes can be provided to a processor or controller of a general-purpose computer, a special-purpose computer, or other programmable data processing device, so that when the program code is executed by the processor or controller, the functions / operations specified in the flowchart and / or block diagram are implemented. The program code can be executed entirely on the machine, partially on the machine, as a stand-alone software package, partially on the machine and partially on a remote machine, or entirely on a remote machine or server.
[0124] In the above embodiments of the present disclosure, the description of each embodiment has its own focus. For parts that are not described in detail in a certain embodiment, reference can be made to the relevant descriptions of other embodiments.
[0125] In the several embodiments provided in the present disclosure, it should be understood that the disclosed technical content can be implemented in other ways. Among them, the device embodiments described above are only exemplary. For example, the division of the units can be a logical function division. In actual implementation, there may be other division methods, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of units or modules, which can be electrical or other forms.
[0126] The units described as separate components may or may not be physically separate, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed across multiple units. Some or all of the units may be selected according to actual needs to achieve the purpose of the present embodiment.
[0127] In addition, the functional units in the various embodiments of the present disclosure may be integrated into a single processing unit, or each unit may exist physically separately, or two or more units may be integrated into a single unit. The aforementioned integrated units may be implemented in the form of hardware or software functional units.
[0128] If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present disclosure is essentially or the part that contributes to the prior art or all or part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium, including a number of instructions for enabling a computer device (which can be a personal computer, a server or a network device, etc.) to perform all or part of the steps of the method described in each embodiment of the present disclosure. The aforementioned storage medium includes: various media that can store program codes, such as a U disk, a read-only memory (ROM), a random access memory (RAM), a mobile hard disk, a magnetic disk or an optical disk.
[0129] The above is only a preferred embodiment of the present disclosure. It should be pointed out that for ordinary technicians in this technical field, several improvements and modifications can be made without departing from the principles of the present disclosure. These improvements and modifications should also be regarded as within the scope of protection of the present disclosure.
Claims
1. A method for processing an operator, wherein: include: Get the target operator; Packaging the target operator to generate a first operator deployment package and a second operator deployment package, wherein the first operator deployment package is used for deployment on a public cloud cluster, and the second operator deployment package is used for deployment on a target server; Storing the first operator deployment package and the second operator deployment package in the operator warehouse; The target operator is packaged to generate a first operator deployment package and a second operator deployment package, including: Performing reinforcement processing on the target operator to generate a public cloud operator and a privatized operator; Packaging the public cloud operator and the privatized operator respectively to generate the first operator deployment package and the second operator deployment package; The target operator is reinforced to generate a public cloud operator and a privatized operator, including: Encapsulating the target operator to generate the public cloud operator; The public cloud operator is reinforced using the reinforcement configuration file to generate the privatized operator.
2. The method according to claim 1, wherein Encapsulating the target operator to generate the public cloud operator includes: Testing the target operator to obtain a test result, wherein the test result is used to indicate whether the target operator is available; In response to the test result satisfying the condition that the target operator is available, the target operator is packaged to generate the public cloud operator.
3. The method according to claim 1, wherein The method further comprises: In response to the received deployment instruction, determining a target operator deployment package; Deploy the target operator deployment package.
4. The method according to claim 3, wherein: The operator warehouse includes at least one of the following: a first operator warehouse and a second operator warehouse, and determines a target operator deployment package in response to a received deployment instruction, including: Based on the deployment instruction, obtaining a deployment version and identification information, wherein the deployment version includes at least one of the following: a public cloud version and a privatized version; In response to the deployment version being the public cloud version, determining the first operator warehouse as a target operator warehouse; In response to the deployed version being the privatized version, determining the second operator warehouse as the target operator warehouse; The target operator deployment package is determined from the target operator warehouse based on the identification information.
5. The method according to claim 3, wherein: Deploying the target operator deployment package includes: The target operator deployment package is deployed using a target gateway, wherein the target gateway is used to provide a unified interface for the target operator.
6. The method according to claim 5, wherein: Deploying the target operator deployment package using the target gateway includes: In response to satisfying the condition that the target operator deployment package is the first operator deployment package, deploying the target operator deployment package in the public cloud cluster by using the target gateway through a deployment module; In response to the condition that the target operator deployment package is the second operator deployment package, the target operator deployment package is deployed in the target server by using the target gateway through the deployment module.
7. An operator processing device, wherein: include: Acquisition module, used to obtain the target operator; A generation module, configured to package the target operator to generate a first operator deployment package and a second operator deployment package, wherein the first operator deployment package is used for deployment on a public cloud cluster, and the second operator deployment package is used for deployment on a target server; A storage module, configured to store the first operator deployment package and the second operator deployment package in an operator warehouse; The generation module includes: A reinforcement unit, configured to perform reinforcement processing on the target operator to generate a public cloud operator and a privatized operator; a packaging processing unit, configured to package the public cloud operator and the privatized operator respectively to generate the first operator deployment package and the second operator deployment package; The reinforcement unit comprises: An encapsulation subunit, configured to encapsulate the target operator to generate the public cloud operator; The reinforcement subunit is used to use the reinforcement configuration file to reinforce the public cloud operator to generate the privatized operator.
8. The device according to claim 7, wherein Encapsulates subunits and is also used for: Testing the target operator to obtain a test result, wherein the test result is used to indicate whether the target operator is available; In response to the test result satisfying the condition that the target operator is available, the target operator is packaged to generate the public cloud operator.
9. The device according to claim 7, wherein An operator processing device further comprising: A determination module, configured to determine a target operator deployment package in response to a received deployment instruction; A deployment module is used to deploy the target operator deployment package.
10. The device according to claim 9, wherein Determine the module, also includes: An acquiring unit, configured to acquire a deployment version and identification information based on the deployment instruction, wherein the deployment version includes at least one of the following: a public cloud version and a private version; a first determining unit, configured to determine, in response to the deployment version being the public cloud version, the first operator warehouse as the target operator warehouse; a second determining unit, configured to, in response to the deployment version being the privatized version, determine a second operator warehouse as the target operator warehouse; A third determining unit is configured to determine the target operator deployment package from the target operator warehouse based on the identification information.
11. The device according to claim 9, wherein Deployment modules, including: A deployment unit is used to deploy the target operator deployment package using a target gateway, wherein the target gateway is used to provide a unified interface for the target operator.
12. The device according to claim 11, wherein Deployment unit, including: a first deployment subunit, configured to deploy the target operator deployment package in the public cloud cluster by using the target gateway through a deployment module in response to a condition that the target operator deployment package is the first operator deployment package; The second deployment subunit is configured to deploy the target operator deployment package in the target server by using the target gateway through the deployment module in response to the condition that the target operator deployment package is the second operator deployment package.
13. An electronic device comprising: at least one processor; as well as a memory communicatively connected to the at least one processor; wherein, The memory stores instructions that can be executed by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to perform the method according to any one of claims 1 to 6.
14. A non-transitory computer-readable storage medium storing computer instructions, wherein: The computer instructions are used to cause the computer to execute the method according to any one of claims 1 to 6.
15. A computer program product comprising a computer program, which, when executed by a processor, implements the method according to any one of claims 1 to 6.
Citation Information
Patent Citations
Model development and deployment method based on cloud native micro-service
CN113961174A