CN114881235A - Inference service calling method and device, electronic equipment and storage medium - Google Patents

Inference service calling method and device, electronic equipment and storage medium Download PDF

Info

Publication number
CN114881235A
CN114881235A CN202210593740.5A CN202210593740A CN114881235A CN 114881235 A CN114881235 A CN 114881235A CN 202210593740 A CN202210593740 A CN 202210593740A CN 114881235 A CN114881235 A CN 114881235A
Authority
CN
China
Prior art keywords
function
running
virtual machine
inference service
context
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202210593740.5A
Other languages
Chinese (zh)
Inventor
王国彬
袁正雄
褚振方
李金麒
胡鸣人
罗阳
黄悦
钱正宇
施恩
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN202210593740.5A priority Critical patent/CN114881235A/en
Publication of CN114881235A publication Critical patent/CN114881235A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Evolutionary Computation (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • Artificial Intelligence (AREA)
  • Stored Programmes (AREA)

Abstract

The disclosure provides a reasoning service calling method and device, electronic equipment and a storage medium, and relates to the technical field of artificial intelligence, in particular to the technical field of cloud computing and artificial intelligence development platforms. The implementation scheme is as follows: acquiring a request for calling a function to perform inference service, wherein the request comprises a function identifier of the function; determining a function running sandbox corresponding to the function identification, wherein the function running sandbox comprises a running context for running the function; and executing the run context to obtain a result of the inference service.

Description

Inference service calling method and device, electronic equipment and storage medium
Technical Field
The present disclosure relates to the field of artificial intelligence technologies, particularly to the field of cloud computing and artificial intelligence development platforms, and in particular, to a method and an apparatus for invoking inference services for an artificial intelligence development platform, an electronic device, a computer-readable storage medium, and a computer program product.
Background
Artificial intelligence is the subject of research that makes computers simulate some human mental processes and intelligent behaviors (such as learning, reasoning, thinking, planning, etc.), both at the hardware level and at the software level. Artificial intelligence hardware technologies generally include technologies such as sensors, dedicated artificial intelligence chips, cloud computing, distributed storage, big data processing, and the like; the artificial intelligence software technology mainly comprises a computer vision technology, a voice recognition technology, a natural language processing technology, machine learning/deep learning, a big data processing technology, a knowledge map technology and the like.
In recent years, artificial intelligence development platforms have been emerging that provide developers with machine learning/deep learning related applications such as intelligent tagging, distributed training, automated model generation, and the like. The reasoning service is an important link in an artificial intelligence development platform and is also a core function for determining whether various applications can be effectively applied. Accordingly, reasoning services are also crucial for such things as the expansion of different industries or users. With the continuous progress of the artificial intelligence technology and the development platform thereof, higher requirements are provided for the effective expansion of the reasoning service.
The approaches described in this section are not necessarily approaches that have been previously conceived or pursued. Unless otherwise indicated, it should not be assumed that any of the approaches described in this section qualify as prior art merely by virtue of their inclusion in this section. Similarly, unless otherwise indicated, the problems mentioned in this section should not be considered as having been acknowledged in any prior art.
Disclosure of Invention
The present disclosure provides a reasoning service calling method, apparatus, electronic device, computer-readable storage medium, and computer program product for an artificial intelligence development platform.
According to an aspect of the present disclosure, there is provided an inference service calling method for an artificial intelligence development platform, including: obtaining a request for calling a function for inference service, the request comprising a function identification of the function; determining a function running sandbox corresponding to the function identification, wherein the function running sandbox comprises a running context for running the function; and executing the run context to obtain a result of the inference service.
According to another aspect of the present disclosure, there is provided an inference service invoking device for an artificial intelligence development platform, including: a request acquisition module configured to acquire a request for calling a function for inference service, the request including a function identification of the function; a determination module configured to determine a function running sandbox corresponding to the function identification, wherein the function running sandbox comprises a running context for running the function; and an execution module configured to execute the run context to obtain a result of the inference service.
According to another aspect of the present disclosure, there is provided an electronic device including: at least one processor; and a memory communicatively coupled to the at least one processor; wherein the memory stores instructions executable by the at least one processor to enable the at least one processor to perform the method as described above.
According to another aspect of the present disclosure, there is provided a non-transitory computer readable storage medium having stored thereon computer instructions for causing a computer to perform the method as described above.
According to another aspect of the present disclosure, a computer program product is provided, comprising a computer program, wherein the computer program realizes the method as described above when executed by a processor.
According to one or more embodiments of the present disclosure, inference services may be invoked with security guaranteed.
It should be understood that the statements in this section do not necessarily identify key or critical features of the embodiments of the present disclosure, nor do they limit the scope of the present disclosure. Other features of the present disclosure will become apparent from the following description.
Drawings
The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate exemplary embodiments of the embodiments and, together with the description, serve to explain the exemplary implementations of the embodiments. The illustrated embodiments are for purposes of illustration only and do not limit the scope of the claims. Throughout the drawings, identical reference numbers designate similar, but not necessarily identical, elements.
FIG. 1 illustrates a schematic diagram of an exemplary system in which various methods described herein may be implemented, according to an embodiment of the present disclosure;
FIG. 2 illustrates a flow diagram of a reasoning service invocation method in accordance with an embodiment of the present disclosure;
FIG. 3 shows a schematic diagram of a process of calling a function, according to an embodiment of the disclosure;
FIG. 4 shows a schematic diagram of a process of creating a function and deleting a function according to an embodiment of the disclosure;
FIG. 5 illustrates a schematic diagram of a compilation toolchain in accordance with an embodiment of the present disclosure;
FIG. 6 shows a block diagram of an inference service invocation apparatus, according to an embodiment of the present disclosure;
fig. 7 shows a block diagram of an inference service invocation apparatus according to another embodiment of the present disclosure;
FIG. 8 illustrates a block diagram of an exemplary electronic device that can be used to implement embodiments of the present disclosure.
Detailed Description
Exemplary embodiments of the present disclosure are described below with reference to the accompanying drawings, in which various details of the embodiments of the disclosure are included to assist understanding, and which are to be considered as merely exemplary. Accordingly, those of ordinary skill in the art will recognize that various changes and modifications of the embodiments described herein can be made without departing from the scope of the present disclosure. Also, descriptions of well-known functions and constructions are omitted in the following description for clarity and conciseness.
In the present disclosure, unless otherwise specified, the use of the terms "first", "second", and the like to describe various elements is not intended to limit the positional relationship, the temporal relationship, or the importance relationship of the elements, and such terms are used only to distinguish one element from another. In some examples, a first element and a second element may refer to the same instance of the element, and in some cases, based on the context, they may also refer to different instances.
The terminology used in the description of the various described examples in this disclosure is for the purpose of describing particular examples only and is not intended to be limiting. Unless the context clearly indicates otherwise, if the number of elements is not specifically limited, the elements may be one or more. Furthermore, the term "and/or" as used in this disclosure is intended to encompass any and all possible combinations of the listed items.
In the related art, the inference service in the artificial intelligence development platform generally comprises a routing module, a preprocessing module, a real-time inference module and a post-processing module. The routing module is responsible for forwarding requests from upstream traffic to the preprocessing module. The preprocessing module preprocesses input such as forms, images, texts, voice, video and the like from the outside and transmits the preprocessed result to the real-time reasoning module. For example, the pre-processing module may implement a variety of pre-processing such as scaling and/or warping of images, acoustic denoising, text segmentation, and the like. The real-time reasoning module is an interface service provided by a machine learning or deep learning framework. After the processing of the real-time reasoning module, the post-processing processes the reasoning result again to obtain a format meeting the downstream business requirements. For example, the post-processing module may implement conversion of tensors, characters, etc. calculated by the real-time reasoning module into image, text, etc. formats.
The inference service does not run on the user's local device, but on a server that is equipped with specialized hardware, such as a GPU. This means that the user cannot change the outcome of the inference service by direct operation. However, in practical applications, users want to extend the main module of the inference service by means of custom code.
Traditional methods for extending the inference service include, for example, embedding a Python language program and mounting and executing the Python language program, or embedding a virtual machine of a script programming language and mounting and executing a related language file. However, the above-described conventional method has problems in either execution efficiency or scalability. More importantly, the conventional methods cannot ensure the security, because no effective method is used for controlling the behavior of the user-defined code, the user can arbitrarily launch a network attack or a system vulnerability attack, damage the operation flow of the original program and the like through the user-defined code, and thus the reasoning result may fail.
In view of the above technical problems, according to an aspect of the embodiments of the present disclosure, a method for invoking inference services for an artificial intelligence development platform is provided.
Before describing the method of an embodiment of the present disclosure in detail, an exemplary system to which the method according to an embodiment of the present disclosure may be applied is first described in conjunction with fig. 1.
Fig. 1 illustrates a schematic diagram of an exemplary system 100 in which various methods and apparatus described herein may be implemented in accordance with embodiments of the present disclosure. Referring to fig. 1, the system 100 includes one or more client devices 101, 102, 103, 104, 105, and 106, a server 120, and one or more communication networks 110 coupling the one or more client devices to the server 120. Client devices 101, 102, 103, 104, 105, and 106 may be configured to execute one or more applications.
In embodiments of the present disclosure, server 120 may run one or more services or software applications that enable execution of inference service invocation methods.
In some embodiments, the server 120 may also provide other services or software applications, which may include non-virtual environments and virtual environments. In certain embodiments, these services may be provided as web-based services or cloud services, for example, provided to users of client devices 101, 102, 103, 104, 105, and/or 106 under a software as a service (SaaS) model.
In the configuration shown in fig. 1, server 120 may include one or more components that implement the functions performed by server 120. These components may include software components, hardware components, or a combination thereof, which may be executed by one or more processors. A user operating a client device 101, 102, 103, 104, 105, and/or 106 may, in turn, utilize one or more client applications to interact with the server 120 to take advantage of the services provided by these components. It should be understood that a variety of different system configurations are possible, which may differ from system 100. Accordingly, fig. 1 is one example of a system for implementing the various methods described herein and is not intended to be limiting.
A user may use client devices 101, 102, 103, 104, 105, and/or 106 to issue a request for inference services. The client device may provide an interface that enables a user of the client device to interact with the client device. The client device may also output information to the user via the interface. Although fig. 1 depicts only six client devices, those skilled in the art will appreciate that any number of client devices may be supported by the present disclosure.
Client devices 101, 102, 103, 104, 105, and/or 106 may include various types of computer devices, such as portable handheld devices, general purpose computers (such as personal computers and laptops), workstation computers, wearable devices, smart screen devices, self-service terminal devices, service robots, gaming systems, thin clients, various messaging devices, sensors or other sensing devices, and so forth. These computer devices may run various types and versions of software applications and operating systems, such as MICROSOFT Windows, APPLE iOS, UNIX-like operating systems, Linux, or Linux-like operating systems (e.g., GOOGLE Chrome OS); or include various Mobile operating systems such as MICROSOFT Windows Mobile OS, iOS, Windows Phone, Android. Portable handheld devices may include cellular telephones, smart phones, tablets, Personal Digital Assistants (PDAs), and the like. Wearable devices may include head-mounted displays (such as smart glasses) and other devices. The gaming system may include a variety of handheld gaming devices, internet-enabled gaming devices, and the like. The client device is capable of executing a variety of different applications, such as various Internet-related applications, communication applications (e.g., email applications), Short Message Service (SMS) applications, and may use a variety of communication protocols.
Network 110 may be any type of network known to those skilled in the art that may support data communications using any of a variety of available protocols, including but not limited to TCP/IP, SNA, IPX, etc. By way of example only, one or more networks 110 may be a Local Area Network (LAN), an ethernet-based network, a token ring, a Wide Area Network (WAN), the internet, a virtual network, a Virtual Private Network (VPN), an intranet, an extranet, a blockchain network, a Public Switched Telephone Network (PSTN), an infrared network, a wireless network (e.g., bluetooth, WIFI), and/or any combination of these and/or other networks.
The server 120 may include one or more general purpose computers, special purpose server computers (e.g., PC (personal computer) servers, UNIX servers, mid-end servers), blade servers, mainframe computers, server clusters, or any other suitable arrangement and/or combination. The server 120 may include one or more virtual machines running a virtual operating system, or other computing architecture involving virtualization (e.g., one or more flexible pools of logical storage that may be virtualized to maintain virtual storage for the server). In various embodiments, the server 120 may run one or more services or software applications that provide the functionality described below.
The computing units in server 120 may run one or more operating systems including any of the operating systems described above, as well as any commercially available server operating systems. The server 120 may also run any of a variety of additional server applications and/or middle tier applications, including HTTP servers, FTP servers, CGI servers, JAVA servers, database servers, and the like.
In some implementations, the server 120 may include one or more applications to analyze and consolidate data feeds and/or event updates received from users of the client devices 101, 102, 103, 104, 105, and/or 106. Server 120 may also include one or more applications to display data feeds and/or real-time events via one or more display devices of client devices 101, 102, 103, 104, 105, and/or 106.
In some embodiments, the server 120 may be a server of a distributed system, or a server incorporating a blockchain. The server 120 may also be a cloud server, or a smart cloud computing server or a smart cloud host with artificial intelligence technology. The cloud Server is a host product in a cloud computing service system, and is used for solving the defects of high management difficulty and weak service expansibility in the traditional physical host and Virtual Private Server (VPS) service.
The system 100 may also include one or more databases 130. In some embodiments, these databases may be used to store data and other information. For example, one or more of the databases 130 may be used to store information such as audio files and video files. The database 130 may reside in various locations. For example, the database used by the server 120 may be local to the server 120, or may be remote from the server 120 and may communicate with the server 120 via a network-based or dedicated connection. The database 130 may be of different types. In certain embodiments, the database used by the server 120 may be, for example, a relational database. One or more of these databases may store, update, and retrieve data to and from the database in response to the command.
In some embodiments, one or more of the databases 130 may also be used by applications to store application data. The databases used by the application may be different types of databases, such as key-value stores, object stores, or regular stores supported by a file system.
The system 100 of fig. 1 may be configured and operated in various ways to enable application of the various methods and apparatus described in accordance with the present disclosure.
FIG. 2 illustrates a flow diagram of a method 200 for inference service invocation for an artificial intelligence development platform in accordance with an embodiment of the present disclosure. As shown in fig. 2, the method 200 includes the steps of:
in step S202, a request for calling a function for inference service is acquired. The request includes a function identification for the function.
In an example, the function identifier may be a function name or other information that can uniquely identify the function identity.
In step S204, a function running sandbox corresponding to the function identification is determined. The function running sandbox includes a running context for running the function.
In an example, the function identification and function running sandbox may be pre-stored in a hash table. Thus, the function running sandbox corresponding to the function identification may be determined from the hash table. For example, the function id and the function running sandbox may be stored in the hash table in a one-to-one key value manner (key-value), where the function id may be used as a "key (key)" and the function running sandbox may be used as a "value (value)".
In step S206, the run context is executed to obtain the results of the inference service.
According to the embodiment of the disclosure, the inference service can be called under the condition of ensuring the safety.
In addition, a method for expanding reasoning service in the artificial intelligence development platform can be provided, and safety is guaranteed.
The function to be operated is packaged in a function operation sandbox mode, so that the effect of safety isolation can be achieved, and safety risks caused to function operation due to expansion of user-defined codes in inference service are avoided.
Correspondingly, the artificial intelligence development platform serving as the public cloud platform can meet the expansion requirements of users on customization or privatization, and can ensure that the expansion of the users cannot penetrate into the program to cause safety problems.
One or more aspects of the steps of the inference service invocation method according to an embodiment of the present disclosure will be described in detail below.
According to some embodiments, method 200 may further include obtaining incoming parameters related to conducting the inference service, and converting the incoming parameters from data types supported by the inference service to data types supported by the virtual machine for use by the virtual machine in executing the run context.
In an example, the step of acquiring the incoming parameters may be performed simultaneously with step S202. In other words, the user, in providing a request to call a function for inference services, may provide what the inference service is going to use, i.e., incoming parameters, in addition to providing a function identification (e.g., function name). The incoming parameters typically have data types that are supported by the inference service, such as the commonly used Python data types, as they are to be used in the inference service.
According to this embodiment, the data types supported by the virtual machine may be different from the data types supported by the inference service. For example, the data types supported by the virtual machine may be WebAssembly data types, and the data types supported by the inference service may be Python data types.
This has the advantage that, since the function is packed by the function running sandbox and the function is run by the virtual machine, the internal and external security isolation of the program is realized, and the conversion of the data type can provide convenience for the security isolation, so as to ensure that the process of calling the function is not influenced by the data structure.
In an example, such a data type conversion process may be performed in a pre-processing of the inference service.
Similarly, a reverse data type conversion may also be performed in the post-processing of the inference service to enable the results of the calling function to be used directly by external or upper-level systems.
According to some embodiments, the execution context may be executed by the virtual machine to obtain the execution result of the calling function. The run results may be converted from data types supported by the virtual machine to data types supported by the inference service to obtain results for the inference service.
In an example, a WebAssembly data type supported by a virtual machine can be converted to a Python data type supported by an inference service. The conversion process may be performed in the post-processing of the inference service.
By means of this data type conversion, it can be ensured that the result of the calling function can be directly used externally, while providing security isolation.
According to some embodiments, the run context may be spliced into a function run sandbox along with the function-defined run parameters and the function-defined return parameters, where the functions are preloaded into the artificial intelligence development platform.
Executing, by the virtual machine, the execution context to obtain the execution result of the calling function may include: executing the running context based on the running parameters through the virtual machine to obtain a running result of the calling function; and verifying the operation result by using the return parameters.
Converting the run result from the data type supported by the virtual machine to the data type supported by the inference service to obtain the result of the inference service may include: and in the case of passing the verification, converting the operation result from the data type supported by the virtual machine into the data type supported by the reasoning service to obtain the result of the reasoning service.
By the mode of running the sandbox by the wrapper function, the inside and the outside of the program can be safely isolated, so that the safety risk caused by the expansion of user-defined codes in the process of calling the function is avoided.
In addition, since the operation parameter and the return parameter are parameters defined by the function and associated with the operation of the function, by packaging the operation parameter and the return parameter of the function together in the function operation sandbox, on one hand, the operation context can be executed based on the operation parameter to obtain the operation result of the calling function, and on the other hand, a verification mechanism can be provided for the calling function, and the operation result of the calling function is verified through the return parameter to perform subsequent data type conversion if the verification is passed.
According to some embodiments, the run context may be obtained by compiling a function that is pre-loaded onto an artificial intelligence development platform.
In an example, the compilation process may involve a process of creating a function. The request to create a function may be issued by a user to an artificial intelligence development platform. Along with the request, the user may also provide content regarding the function's function name, run parameters, return parameters, function ontology, and the like. Alternatively, the artificial intelligence development platform may also obtain the above content through syntax parsing according to a request of creating a function by a user.
After a function has been loaded onto the artificial intelligence development platform, the function can be compiled to generate a run context. The run context can then be combined with the run parameters and return parameters of the function to splice into a function run sandbox that can be used directly by the virtual machine in calling the function.
According to some embodiments, compiling functions that are pre-loaded onto an artificial intelligence development platform may include: converting a function which is pre-loaded on an artificial intelligence development platform into a data type supported by a virtual machine; and compiling the function by calling an interface of the virtual machine.
The data types of the functions provided by the user to the artificial intelligence development platform can be customized by the user, which can be various programming languages such as C, C + +, Rust, Python, TypeScript, and the like. Thus, pre-translating user-provided functions into data types supported by the virtual machine can provide scalability, such that the process of creating functions need not be limited to data types of user-defined code.
In an example, an artificial intelligence development platform can provide a user with a compilation toolchain for compiling user-defined code of the user into data types supported by a virtual machine. To this end, template code may be provided so that a user may embed custom code into the template code and compile by means of a compiler, thereby converting to a desired data type. Furthermore, a verification tool may also be provided to verify the correctness of the compilation, i.e., if verified, the compiled code may be provided to an artificial intelligence development platform.
According to some embodiments, the virtual machine may comprise a WebAssembly virtual machine.
In one aspect, given that the WebAssembly language can support sandboxing features, WebAssembly virtual machines can be built into inference services to facilitate implementing security isolation methods in accordance with embodiments of the present disclosure. On the other hand, since the WebAssembly language can be compiled for various programming languages, it may also contribute to the scalability according to the embodiments of the present disclosure.
In an example, the WebAssembly virtual machine may include, for example, a WasmEdge virtual machine and a WasmTime virtual machine, as known in the art.
As described above, according to the method of the embodiment of the present disclosure, by wrapping a function to be executed in a function execution sandbox and executing the function by using a virtual machine, a security isolation effect can be achieved, and a security risk on function execution due to expansion of user-defined code in an inference service is avoided.
According to another aspect of the embodiment of the present disclosure, an artificial intelligence development platform is also provided. The inference service in the artificial intelligence development platform may perform a method according to the above.
Therefore, the artificial intelligence development platform serving as the public cloud platform can meet the expansion requirements of users on customization or privatization, and can ensure that the expansion of the users cannot penetrate into the program to cause safety problems.
FIG. 3 shows a schematic diagram of a process of calling a function according to an embodiment of the disclosure.
In an example, the process of calling a function can involve a user using an inference service in an artificial intelligence development platform. The functions related to using the inference service may be stored in advance in a hash table (e.g., the hash table may be stored in memory). In order to provide a security isolation effect on the inside of the program, the function is packed in the form of a function running sandbox to make a call to the function. To this end, the function runtime sandbox includes a runtime context for running the function.
As shown in fig. 3, a pre-stored hash table 310 is shown. In the hash table 310, each function is stored in a one-to-one correspondence manner with its function id and the corresponding function running sandbox. For example, entries for function X and function running sandbox X ', function Y and function running sandbox Y ', and function Z and function running sandbox Z ' may be included in hash table 310. In addition, function running sandbox X ' includes running context X "for running function X, function running sandbox Y ' includes running context Y" for running function Y, and function running sandbox Z ' includes running context Z "for running function Z. Those skilled in the art will appreciate that only three functions X, Y and Z are shown in hash table 310 for purposes of illustration, but the number of functions in hash table 310 is not so limited and may have a greater or lesser number.
In executing the calling function, a request from a user to call function Z for inference service may be obtained in step 301. Accordingly, in step S302, a function running sandbox Z' corresponding to the function Z may be determined in the hash table 310. The function running sandbox Z 'includes a running context Z' for running the function Z.
In step S303, pre-processing may be performed to convert incoming parameters from data types supported by the inference service to data types supported by the virtual machine. In an example, Python data types supported by the inference service can be translated to virtual machines supporting WebAssembly data types (in an example, a virtual machine can be a WebAssembly virtual machine).
In steps S304-1 and S304-2, the run context Z' may be executed by the virtual machine 320 to obtain the run result of the calling function.
At this time, since the virtual machine 320 employs, for example, a WebAssembly data type, but the result based on the data type cannot be directly used by an external user yet, a reverse data type conversion process may be performed to convert the operation result from the WebAssembly data type to a Python data type for external use. Thus, at step 305, post-processing may be performed to convert the results of the run from the data types supported by the virtual machine to the data types supported by the inference service to obtain the results of the inference service.
In addition to the process of calling functions as described in connection with FIG. 3, embodiments according to the present disclosure may also support the process of creating and deleting functions to dynamically manage functions related to inference services, thereby enabling an artificial intelligence development platform to provide resilient efficiency.
FIG. 4 shows a schematic diagram of a process of creating a function and deleting a function according to an embodiment of the disclosure.
As shown in FIG. 4, a hash table 410 and a virtual machine 420 (e.g., WebAssembly virtual machine) similar to FIG. 3 are shown. Hash table 410 may currently already include entries for function X and function running sandbox X'. For convenience of explanation, the present embodiment takes the creation of the function Y as an example, and the entries of the function Y and the function running sandbox Y' shown in the hash table 410 are the results of the completion of the process of creating the function, and are therefore represented by dashed boxes here.
When a user intends to create a function to develop an inference service of a platform using artificial intelligence, a request for creating a function (e.g., function Y) may be issued to the platform. The information about the function may include a function identification (e.g., "Y") of the function, a run parameter, a return parameter, and a function ontology. The information may be provided to the platform along with the request to create the function, or may be obtained by the platform through syntax parsing according to the request.
In an example of providing a chain of compilation tools for a user in an artificial intelligence development platform, user-defined code included in function Y may be pre-translated into data types supported by virtual machine 420, such as WebAssembly data types, through the chain of compilation tools.
Thus, in step 401, the artificial intelligence development platform may load function Y. In an example, the process of loading may include a process for obtaining a function ontology, such as remotely downloading the function Y in an HTTP manner, decoding the function Y having the WebAssembly data type (e.g., base64 decoding), and so on, to obtain the function ontology of the function.
At steps 402-1 and 402-2, an interface of virtual machine 420 may be called to compile function Y to obtain run context Y ″. The run context Y "may be executed when the function Y is called to obtain the result of the calling function.
In step 403, the running context Y ″ may be spliced together with the running parameters and the return parameters of the function Y into a function running sandbox Y'.
At step 404, function Y and function running sandbox Y' may be stored in hash table 410 in a one-to-one correspondence. By means of the function running sandbox Y ', the function Y can be wrapped, thereby providing secure isolation of the inside of the program from the outside, so that the function Y when called does not pose a danger to the inside of the program due to the user's custom code extension.
In addition to the process of creating a function, fig. 4 also shows the process of deleting a function through steps 405 and 406.
When the user intends to delete function X, the artificial intelligence development platform may obtain a request to delete function X from the user in step 405, in which request the function identification "X" is indicated.
At step 406, function X may be found in hash table 410 and function X and its corresponding function running sandbox X' (which includes running context X ") may be deleted.
According to the embodiment of the disclosure, the dynamic management mechanism including the functions of calling, creating and deleting as described in fig. 3 and 4 can help to achieve the flexible efficiency of the artificial intelligence development platform.
FIG. 5 illustrates a schematic diagram of a compilation toolchain according to an embodiment of the present disclosure.
As shown in FIG. 5, the artificial intelligence development platform can provide a compilation toolchain 510 for compiling user-defined code of a user into data types supported by a virtual machine. For example compiled from a programming language such as C, C + +, Rust, Python, TypeScript, etc., into the WebAssembly language.
The compilation tool chain 510 may include a WebAssembly compiler 512, template code 514, and a validation tool 516. The user's custom code may be embedded in the template code 514 and compiled by the WebAssembly compiler 512 to convert to the desired data type. Verification tool 516 may verify the correctness of the compilation. In the case of correct compilation, the compiled code may be provided to an artificial intelligence development platform.
In an example, the WebAssembly language may have a text format or a binary file format. The text format may be written directly in the WebAssembly language, which may have base64 encoding in the text format. The binary file format may be language converted by the compilation toolchain 510, which may have base64 encoding of the binary file format.
In an example, for a file with a file size on the Kilobyte (KB) level, the artificial intelligence development platform may retrieve the corresponding file through direct input by the user. For files with file sizes on the Megabyte (MB) level, the artificial intelligence development platform may support remote downloading via HTTP addresses to retrieve the corresponding files.
Fig. 6 shows a block diagram of the inference service invocation apparatus according to an embodiment of the present disclosure.
As shown in fig. 6, inference service invocation apparatus 600 may include a request acquisition module 602, a determination module 604, and an execution module 606.
The request acquisition module 602 is configured to acquire a request to call a function for inference services. The request includes a function identification for the function.
The determination module 604 is configured to determine a function running sandbox corresponding to the function identification. The function running sandbox includes a running context for running the function.
The execution module 606 is configured to execute the run context to obtain results of the inference service.
The operations performed by the above-mentioned modules 602 to 606 may correspond to the steps S202 to S206 described with reference to fig. 2, and therefore, the details of the aspects thereof are not repeated here.
Fig. 7 shows a block diagram of an inference service invocation device 700 according to another embodiment of the present disclosure.
As shown in fig. 7, inference service invocation means 700 may include a request acquisition module 702, a determination module 704, and an execution module 706. Request acquisition module 702, determination module 704, and execution module 706 as shown in fig. 7 may correspond to request acquisition module 602, determination module 604, and execution module 606 as shown in fig. 6, respectively.
According to some embodiments, the apparatus 700 may further comprise: an incoming parameter acquisition module 703 configured to acquire incoming parameters related to performing inference services; and a pre-processing conversion module 705 configured to convert the incoming parameters from data types supported by the inference service to data types supported by the virtual machine for execution of the execution context by the virtual machine.
According to some embodiments, the execution module 706 may include: a processing module 7060 configured to execute the execution context by the virtual machine to obtain an execution result of the calling function; and a post-processing conversion module 7062 configured to convert the operation result from the data type supported by the virtual machine into the data type supported by the inference service to obtain a result of the inference service.
According to some embodiments, the run context may be spliced into a function run sandbox along with the function-defined run parameters and the function-defined return parameters, where the functions are preloaded into the artificial intelligence development platform.
Processing module 7060 may include: the running result obtaining module 7060-1 is configured to execute, by the virtual machine, a running context based on the running parameter to obtain a running result of the calling function; and a verification module 7060-2 configured to verify the operation result using the return parameter.
Post-processing conversion module 7062 may be configured to: and in the case of passing the verification, converting the operation result from the data type supported by the virtual machine into the data type supported by the reasoning service to obtain the result of the reasoning service.
According to some embodiments, the run context may be obtained by compiling a function that is pre-loaded onto an artificial intelligence development platform.
According to some embodiments, the apparatus 700 may further include a compilation module 708, and the compilation module 708 may be configured to compile functions that are pre-loaded onto the artificial intelligence development platform. The compiling module 708 may include: a data type conversion module 7080 configured to convert a function preloaded on the artificial intelligence development platform into a data type supported by the virtual machine; and a compiling execution module 7082 configured to compile the function by calling an interface of the virtual machine.
According to another aspect of the present disclosure, there is also provided an electronic device including: at least one processor; and a memory communicatively coupled to the at least one processor; wherein the memory stores instructions executable by the at least one processor to cause the at least one processor to perform the method according to the embodiments of the present disclosure.
According to another aspect of the present disclosure, there is also provided a non-transitory computer readable storage medium having stored thereon computer instructions for causing a computer to perform the method according to the embodiments of the present disclosure.
According to another aspect of the present disclosure, there is also provided a computer program product comprising a computer program, wherein the computer program, when executed by a processor, implements the method according to an embodiment of the present disclosure.
FIG. 8 illustrates a block diagram of an exemplary electronic device that can be used to implement embodiments of the present disclosure.
Referring to fig. 8, a block diagram of a structure of an electronic device 800, which may be a server or a client of the present disclosure, which is an example of a hardware device that may be applied to aspects of the present disclosure, will now be described. Electronic device is intended to represent various forms of digital electronic computer devices, such as laptops, desktops, workstations, personal digital assistants, servers, blade servers, mainframes, and other suitable computers. The electronic device may 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 meant to be examples only, and are not meant to limit implementations of the disclosure described and/or claimed herein.
As shown in fig. 8, the electronic device 800 includes a computing unit 801 that can perform various appropriate actions and processes according to a computer program stored in a Read Only Memory (ROM)802 or a computer program loaded from a storage unit 808 into a Random Access Memory (RAM) 803. In the RAM803, various programs and data required for the operation of the electronic apparatus 800 can also be stored. The calculation unit 801, the ROM 802, and the RAM803 are connected to each other by a bus 804. An input/output (I/O) interface 805 is also connected to bus 804.
A number of components in the electronic device 800 are connected to the I/O interface 805, including: an input unit 806, an output unit 807, a storage unit 808, and a communication unit 809. The input unit 806 may be any type of device capable of inputting information to the electronic device 800, and the input unit 806 may receive input numeric or character information and generate key signal inputs related to user settings and/or function controls of the electronic device, and may include, but is not limited to, a mouse, a keyboard, a touch screen, a track pad, a track ball, a joystick, a microphone, and/or a remote controller. Output unit 807 can be any type of device capable of presenting information and can include, but is not limited to, a display, speakers, a video/audio output terminal, a vibrator, and/or a printer. The storage unit 808 may include, but is not limited to, a magnetic disk, an optical disk. The communication unit 809 allows the electronic device 800 to exchange information/data with other devices via a computer network, such as the internet, and/or various telecommunications networks, and may include, but is not limited to, modems, network cards, infrared communication devices, wireless communication transceivers and/or chipsets, such as bluetooth (TM) devices, 802.11 devices, WiFi devices, WiMax devices, cellular communication devices, and/or the like.
Computing unit 801 may be a variety of general and/or special purpose processing components with processing and computing capabilities. Some examples of the computing unit 801 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 running machine learning model algorithms, a Digital Signal Processor (DSP), and any suitable processor, controller, microcontroller, and the like. The computing unit 801 performs the various methods and processes described above, such as methods for inference services. For example, in some embodiments, the method for inference services may be implemented as a computer software program tangibly embodied in a machine-readable medium, such as storage unit 808. In some embodiments, part or all of the computer program can be loaded and/or installed onto the electronic device 800 via the ROM 802 and/or the communication unit 809. When loaded into RAM803 and executed by the computing unit 801, may perform one or more steps of the method for inference services described above. Alternatively, in other embodiments, the computing unit 801 may be configured by any other suitable means (e.g., by means of firmware) to perform the method for reasoning about services.
Various implementations of the systems and techniques described here above may be implemented in digital electronic circuitry, integrated circuitry, Field Programmable Gate Arrays (FPGAs), Application Specific Integrated Circuits (ASICs), Application Specific Standard Products (ASSPs), system on a chip (SOCs), Complex Programmable Logic Devices (CPLDs), computer hardware, firmware, software, and/or combinations thereof. These various embodiments may include: implemented in one or more computer programs that are executable and/or interpretable on a programmable system including at least one programmable processor, which may be special or general purpose, receiving data and instructions from, and transmitting data and instructions to, a storage system, at least one input device, and at least one output device.
Program code for implementing the methods of the present disclosure may be written in any combination of one or more programming languages. These program codes may be provided to a processor or controller of a general purpose computer, special purpose computer, or other programmable data processing apparatus, such that the program codes, when executed by the processor or controller, cause the functions/operations specified in the flowchart and/or block diagram to be performed. The program code may execute entirely on the machine, partly on the machine, as a stand-alone software package partly on the machine and partly on a remote machine or entirely on the remote machine or server.
In the context of this disclosure, a machine-readable medium may be a tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. The machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. More specific examples of a machine-readable storage medium would include an electrical connection based on one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
To provide for interaction with a user, the systems and techniques described here can be implemented on a computer having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to a user; and a keyboard and a pointing device (e.g., a mouse or a trackball) by which a user can provide input to the computer. Other kinds of devices may also be used to provide for interaction with a user; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user may be received in any form, including acoustic, speech, or tactile input.
The systems and techniques described here can be implemented in a computing system that includes a back-end component (e.g., as a data server), or that includes a middleware component (e.g., an application server), or that includes a front-end component (e.g., a user computer having a graphical user interface or a web browser through which a user can interact with an implementation of the systems and techniques described here), or any combination of such back-end, middleware, or front-end components. The components of the system can be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: local Area Networks (LANs), Wide Area Networks (WANs), and the Internet.
The computer system may include clients and servers. A client and server are generally remote from each other and typically interact through a communication network. The relationship of client and server arises by virtue of computer programs running on the respective computers and having a client-server relationship to each other. The server may be a cloud server, a server of a distributed system, or a server with a combined blockchain.
It should be understood that various forms of the flows shown above may be used, with steps reordered, added, or deleted. For example, the steps described in the present disclosure may be performed in parallel, sequentially or in different orders, and are not limited herein as long as the desired results of the technical solutions disclosed in the present disclosure can be achieved.
Although embodiments or examples of the present disclosure have been described with reference to the accompanying drawings, it is to be understood that the above-described methods, systems and apparatus are merely exemplary embodiments or examples and that the scope of the present invention is not limited by these embodiments or examples, but only by the claims as issued and their equivalents. Various elements in the embodiments or examples may be omitted or may be replaced with equivalents thereof. Further, the steps may be performed in an order different from that described in the present disclosure. Further, various elements in the embodiments or examples may be combined in various ways. It is important that as technology evolves, many of the elements described herein may be replaced with equivalent elements that appear after the present disclosure.

Claims (15)

1. An inference service calling method for an artificial intelligence development platform comprises the following steps:
obtaining a request for calling a function for inference service, the request comprising a function identification of the function;
determining a function running sandbox corresponding to the function identification, wherein the function running sandbox comprises a running context for running the function; and
executing the run context to obtain a result of the inference service.
2. The method of claim 1, further comprising:
obtaining incoming parameters related to conducting the inference service; and
converting the incoming parameters from data types supported by the inference service to data types supported by a virtual machine for execution of the run context by the virtual machine.
3. The method of claim 2, the executing the run context to obtain the results of the inference service comprising:
executing the running context through the virtual machine to obtain a running result for calling the function; and
converting the running result from the data type supported by the virtual machine into the data type supported by the inference service to obtain the result of the inference service.
4. The method of claim 3, wherein the run context is spliced into the function run sandbox along with the function-defined run parameters and the function-defined return parameters, wherein the function is preloaded into the artificial intelligence development platform,
wherein the executing the run context by the virtual machine to obtain a run result for calling the function includes:
executing, by the virtual machine, the running context based on the running parameter to obtain a running result of calling the function; verifying the operation result by using the return parameter;
the converting the operation result from the data type supported by the virtual machine into the data type supported by the inference service to obtain the result of the inference service includes:
and in the case of passing the verification, converting the operation result from the data type supported by the virtual machine into the data type supported by the inference service to obtain the result of the inference service.
5. The method of any of claims 1-4, wherein the run context is obtained by compiling the function that was preloaded onto the artificial intelligence development platform.
6. The method of claim 5, wherein said compiling the function preloaded on the artificial intelligence development platform comprises:
converting the function pre-loaded on the artificial intelligence development platform into a data type supported by a virtual machine; and
and compiling the function by calling an interface of the virtual machine.
7. An inference service invoking apparatus for an artificial intelligence development platform, comprising:
a request acquisition module configured to acquire a request for calling a function for inference service, the request including a function identification of the function;
a determination module configured to determine a function running sandbox corresponding to the function identification, wherein the function running sandbox comprises a running context for running the function; and
an execution module configured to execute the run context to obtain a result of the inference service.
8. The apparatus of claim 7, further comprising:
an incoming parameter acquisition module configured to acquire incoming parameters related to conducting the inference service; and
a pre-processing translation module configured to translate the incoming parameters from data types supported by the inference service to data types supported by a virtual machine for execution of the run context by the virtual machine.
9. The apparatus of claim 8, wherein the means for performing comprises:
a processing module configured to execute the execution context by the virtual machine to obtain an execution result calling the function; and
a post-processing conversion module configured to convert the operation result from a data type supported by the virtual machine to a data type supported by the inference service to obtain a result of the inference service.
10. The apparatus of claim 9, wherein the run context is spliced into the function run sandbox along with the function-defined run parameters and the function-defined return parameters, wherein the function is preloaded into the artificial intelligence development platform,
wherein the processing module comprises: a running result obtaining module configured to execute, by the virtual machine, the running context based on the running parameter to obtain a running result for calling the function; and a verification module configured to verify the operation result using the return parameter;
the post-processing conversion module is configured to: and in the case of passing the verification, converting the operation result from the data type supported by the virtual machine into the data type supported by the inference service to obtain the result of the inference service.
11. The apparatus of any of claims 7 to 10, wherein the run context is obtained by compiling the function that was preloaded onto the artificial intelligence development platform.
12. The apparatus of claim 11, wherein the apparatus further comprises a compilation module configured to compile the functions pre-loaded onto the artificial intelligence development platform, the compilation module comprising:
the data type conversion module is configured to convert the functions which are pre-loaded on the artificial intelligence development platform into data types supported by a virtual machine; and
a compilation execution module configured to compile the function by calling an interface of the virtual machine.
13. An electronic device, comprising:
at least one processor; and
a memory communicatively coupled to the at least one processor; wherein
The memory stores instructions executable by the at least one processor to enable the at least one processor to perform the method of any one of claims 1-6.
14. A non-transitory computer readable storage medium having stored thereon computer instructions for causing a computer to perform the method of any one of claims 1-6.
15. A computer program product comprising a computer program, wherein the computer program realizes the method according to any of claims 1-6 when executed by a processor.
CN202210593740.5A 2022-05-27 2022-05-27 Inference service calling method and device, electronic equipment and storage medium Pending CN114881235A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210593740.5A CN114881235A (en) 2022-05-27 2022-05-27 Inference service calling method and device, electronic equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210593740.5A CN114881235A (en) 2022-05-27 2022-05-27 Inference service calling method and device, electronic equipment and storage medium

Publications (1)

Publication Number Publication Date
CN114881235A true CN114881235A (en) 2022-08-09

Family

ID=82679325

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210593740.5A Pending CN114881235A (en) 2022-05-27 2022-05-27 Inference service calling method and device, electronic equipment and storage medium

Country Status (1)

Country Link
CN (1) CN114881235A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116260823A (en) * 2023-05-15 2023-06-13 南方电网数字电网研究院有限公司 Controlled data sharing method, device, computer equipment and storage medium

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160359955A1 (en) * 2015-06-05 2016-12-08 Nutanix, Inc. Architecture for managing i/o and storage for a virtualization environment using executable containers and virtual machines
CN106445630A (en) * 2016-08-10 2017-02-22 北京奇虎科技有限公司 Android simulator and method for realizing Android simulator
US20200028935A1 (en) * 2017-06-09 2020-01-23 Nutanix, Inc. Workload rebalancing in heterogeneous resource environments
CN112214293A (en) * 2017-11-08 2021-01-12 华为技术有限公司 Method for service deployment under server-free architecture and function management platform
CN112434284A (en) * 2020-10-29 2021-03-02 格物钛(上海)智能科技有限公司 Machine learning training platform implementation based on sandbox environment
CN113608751A (en) * 2021-08-04 2021-11-05 北京百度网讯科技有限公司 Operation method, device and equipment of reasoning service platform and storage medium
CN114253632A (en) * 2021-12-14 2022-03-29 青岛海尔科技有限公司 Function call request processing method and device and server

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160359955A1 (en) * 2015-06-05 2016-12-08 Nutanix, Inc. Architecture for managing i/o and storage for a virtualization environment using executable containers and virtual machines
CN106445630A (en) * 2016-08-10 2017-02-22 北京奇虎科技有限公司 Android simulator and method for realizing Android simulator
US20200028935A1 (en) * 2017-06-09 2020-01-23 Nutanix, Inc. Workload rebalancing in heterogeneous resource environments
CN112214293A (en) * 2017-11-08 2021-01-12 华为技术有限公司 Method for service deployment under server-free architecture and function management platform
CN112434284A (en) * 2020-10-29 2021-03-02 格物钛(上海)智能科技有限公司 Machine learning training platform implementation based on sandbox environment
CN113608751A (en) * 2021-08-04 2021-11-05 北京百度网讯科技有限公司 Operation method, device and equipment of reasoning service platform and storage medium
CN114253632A (en) * 2021-12-14 2022-03-29 青岛海尔科技有限公司 Function call request processing method and device and server

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
ARCOSX: "如何用Wasm为数据库增加UDF功能", 《微信公众号:HTTPS://MP.WEIXIN.QQ.COM/S?SRC=11&TIMESTAMP=1667023592&VER=4133&SIGNATURE=PRDTG6RWACONYVIHHCKU-YNNCKY99Y55PEJFPAXTHYWZG2UGS7GP8JFATG5ZU9USLFPG6JAXL4-GIFND*ICMFWCZR1802CCOUM7QOTWXMHE4LAWCX48D*E12*HPQX5*U&NEW=1》 *
NEBULA: "nebula_FunctionManager.cpp at v2.6.1", 《GITHUB:HTTPS://GITHUB.COM/NEBULA-HACKATHON-2021/NEBULA/BLOB/V2.6.1/SRC/COMMON/FUNCTION/FUNCTIONMANAGER.CPP》 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116260823A (en) * 2023-05-15 2023-06-13 南方电网数字电网研究院有限公司 Controlled data sharing method, device, computer equipment and storage medium
CN116260823B (en) * 2023-05-15 2023-09-15 南方电网数字电网研究院有限公司 Controlled data sharing method, device, computer equipment and storage medium

Similar Documents

Publication Publication Date Title
US10185558B2 (en) Language-independent program composition using containers
US8903702B2 (en) Generating specifications for expression language expressions and tag libraries
CN111338623B (en) Method, device, medium and electronic equipment for developing user interface
US10698791B2 (en) Handling request data with type safety in a remote service
CN106815524B (en) Malicious script file detection method and device
CN116306396A (en) Chip verification method and device, equipment and medium
CN114881235A (en) Inference service calling method and device, electronic equipment and storage medium
CN112947916B (en) Method, apparatus, device and storage medium for implementing online canvas
WO2018197939A1 (en) Adding voice commands to invoke web services
CN113220367A (en) Applet running method and device, electronic equipment and storage medium
CN116737928A (en) Text mining method and system for platform user requirements and cloud platform
US11762758B2 (en) Source code fault detection
CN114741294A (en) Page debugging method, device, equipment and storage medium
US11099969B2 (en) Estimating the number of coding styles by analyzing source code
CN114201043A (en) Content interaction method, device, equipment and medium
CN113568797B (en) Testing method and device of intelligent interaction system, electronic equipment and medium
CN113542429B (en) Platform residence processing method, device, equipment and medium
CN115762515B (en) Processing and application method, device and equipment for neural network for voice recognition
CN117668824A (en) Code data processing method, device, equipment and medium
CN112560462B (en) Event extraction service generation method, device, server and medium
CN107145372A (en) information generating method and device
CN114090063A (en) Method and device for packaging application, electronic equipment and medium
CN115951894A (en) Data processing method, device, electronic equipment and medium
CN113961633A (en) Data processing method, system, electronic device and computer storage medium
CN114035802A (en) Code analysis method, apparatus, device and medium implemented by computer

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20220809

RJ01 Rejection of invention patent application after publication