CN110554865B - Visual programming method, device, computing equipment and medium - Google Patents

Visual programming method, device, computing equipment and medium Download PDF

Info

Publication number
CN110554865B
CN110554865B CN201910857568.8A CN201910857568A CN110554865B CN 110554865 B CN110554865 B CN 110554865B CN 201910857568 A CN201910857568 A CN 201910857568A CN 110554865 B CN110554865 B CN 110554865B
Authority
CN
China
Prior art keywords
node
interface
module
represented
program
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.)
Active
Application number
CN201910857568.8A
Other languages
Chinese (zh)
Other versions
CN110554865A (en
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.)
Lenovo Beijing Ltd
Original Assignee
Lenovo Beijing 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 Lenovo Beijing Ltd filed Critical Lenovo Beijing Ltd
Priority to CN201910857568.8A priority Critical patent/CN110554865B/en
Publication of CN110554865A publication Critical patent/CN110554865A/en
Application granted granted Critical
Publication of CN110554865B publication Critical patent/CN110554865B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/34Graphical or visual programming

Abstract

The present disclosure provides a method of visual programming, including displaying a first node and a connection relationship between the first node and at least one second node in a first display area; displaying a plurality of interface identifications corresponding to the first node in a second display area; in response to a selection instruction for the plurality of interface identifications, determining a target interface identification from the plurality of interface identifications; configuring a first program module represented by a first node according to the API represented by the target interface identifier; and integrating the first program module represented by the first node and the second program module represented by at least one second node according to the connection relation to obtain the target program code. The present disclosure also provides an apparatus of visual programming, a computing device, and a computer-readable storage medium.

Description

Visual programming method, device, computing equipment and medium
Technical Field
The present disclosure relates to a method, apparatus, computing device, and medium of visual programming.
Background
There are many artificial intelligence models for implementing the same function, and access schemes can be provided independently. However, the application program interface APIs provided by the access schemes are greatly different, and the parameters of each API are different. For developers, when the API needs to be switched, the new API can be called only by rewriting the program code, which results in large human resource consumption and low efficiency.
Disclosure of Invention
One aspect of the present disclosure provides a method of visual programming, comprising: displaying a first node and a connection relation between the first node and at least one second node in a first display area, wherein the first node is used for representing a first program module, each second node in the at least one second node is used for representing a second program module, and the connection relation is used for representing that data transmission can be carried out between the first node and the program modules represented by the second nodes; displaying a plurality of interface identifications corresponding to the first node in a second display area, wherein each interface identification in the plurality of interface identifications is used for representing an Application Program Interface (API); in response to a selection instruction for the plurality of interface identifications, determining a target interface identification from the plurality of interface identifications; configuring a first program module represented by the first node according to the API represented by the target interface identifier; and integrating the first program module represented by the first node and the second program module represented by the at least one second node according to the connection relation to obtain the target program code.
Optionally, the method further includes: the connection relation is represented by a connection symbol including at least one of a directional line, an arrow shape, and a triangle shape.
Optionally, the API is an interface of a preprocessed artificial intelligence model.
Optionally, the method further includes: displaying the target interface identification in the first node; and connecting the target interface identifier with a second node by using a connection symbol so as to establish a connection relationship between the target interface identifier and the second node.
Optionally, the method further includes: and displaying the input component corresponding to the target interface identification so that the user configures the API represented by the target interface identification through the input component.
Optionally, the method further includes: displaying additional information of the plurality of interface identifications, the additional information including provider information or charging information.
Another aspect of the present disclosure provides an apparatus for visual programming, comprising: the first display module is used for displaying a first node and a connection relation between the first node and at least one second node in a first display area, the first node is used for representing a first program module, each second node in the at least one second node is used for representing a second program module, and the connection relation is used for representing that data transmission can be carried out between the program modules represented by the first node and the second node; the second display module is used for displaying a plurality of interface identifications corresponding to the first node in a second display area, wherein each interface identification in the plurality of interface identifications is used for representing an application program interface API; a determining module, configured to determine a target interface identifier from the plurality of interface identifiers in response to a selection instruction for the plurality of interface identifiers; the configuration module is used for configuring a first program module represented by the first node according to the API represented by the target interface identifier; and the generating module is used for integrating the first program module represented by the first node and the second program module represented by the at least one second node according to the connection relation to obtain the target program code.
Optionally, the apparatus further comprises: and the representing module is used for representing the connection relation through a connection symbol, and the connection symbol comprises at least one of a directional line, an arrow shape and a triangle shape.
Optionally, the API is an interface of a preprocessed artificial intelligence model.
Optionally, the apparatus further comprises: a third display module, configured to display the target interface identifier in the first node; and the connection module is used for connecting the target interface identifier with the second node by using a connection symbol so as to establish a connection relationship between the target interface identifier and the second node.
Optionally, the apparatus further comprises: and the fourth display module is used for displaying the input component corresponding to the target interface identifier so that the user can configure the API represented by the target interface identifier through the input component.
Optionally, the apparatus further comprises: and the fifth display module is used for displaying the additional information of the plurality of interface identifiers, wherein the additional information comprises provider information or charging information.
Another aspect of the present disclosure provides a computing device comprising: one or more processors; memory for storing one or more computer programs, wherein the one or more computer programs, when executed by the one or more processors, cause the one or more processors to implement the method as described above.
Another aspect of the present disclosure provides a computer-readable storage medium storing computer-executable instructions for implementing the method as described above when executed.
Another aspect of the disclosure provides a computer program comprising computer executable instructions for implementing the method as described above when executed.
According to the embodiment of the disclosure, a first node and a connection relationship between the first node and at least one second node are displayed in a first display area, a plurality of interface identifiers corresponding to the first node are displayed in a second display area, then a target interface identifier is determined from the plurality of interface identifiers in response to a selection instruction for the plurality of interface identifiers, a first program module represented by the first node is configured according to an API represented by the target interface identifier, and then the first program module represented by the first node and a second program module represented by the at least one second node are integrated according to the connection relationship to obtain a target program code. Therefore, when the API is switched, program codes aiming at the API do not need to be written manually, so that the human resources are saved, and the efficiency is improved. In addition, the visual programming method also reduces the programming difficulty and improves the user experience.
Drawings
For a more complete understanding of the present disclosure and the advantages thereof, reference is now made to the following descriptions taken in conjunction with the accompanying drawings, in which:
FIG. 1 schematically illustrates a visual programming application to which a method of visual programming may be applied, according to an embodiment of the present disclosure;
FIG. 2 schematically illustrates a flow diagram of a method of visual programming in accordance with an embodiment of the present disclosure;
FIG. 3 schematically illustrates a flow diagram of a method of visual programming according to another embodiment of the present disclosure;
FIG. 4 schematically illustrates a flow diagram of a method of visual programming according to another embodiment of the present disclosure;
FIG. 5 schematically illustrates a block diagram of an apparatus for visual programming in accordance with an embodiment of the present disclosure;
FIG. 6 schematically illustrates a block diagram of an apparatus for visual programming, in accordance with another embodiment of the present disclosure;
FIG. 7 schematically illustrates a block diagram of an apparatus for visual programming, in accordance with another embodiment of the present disclosure;
FIG. 8 schematically illustrates a block diagram of an apparatus for visual programming, in accordance with another embodiment of the present disclosure;
FIG. 9 schematically illustrates a block diagram of an apparatus for visual programming, in accordance with another embodiment of the present disclosure; and
FIG. 10 schematically shows a block diagram of a computer system according to another embodiment of the disclosure.
Detailed Description
Hereinafter, embodiments of the present disclosure will be described with reference to the accompanying drawings. It should be understood that the description is illustrative only and is not intended to limit the scope of the present disclosure. In the following detailed description, for purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the embodiments of the disclosure. It may be evident, however, that one or more embodiments may be practiced without these specific details. Moreover, in the following description, descriptions of well-known structures and techniques are omitted so as to not unnecessarily obscure the concepts of the present disclosure.
The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the disclosure. The terms "comprises," "comprising," and the like, as used herein, specify the presence of stated features, steps, operations, and/or components, but do not preclude the presence or addition of one or more other features, steps, operations, or components.
All terms (including technical and scientific terms) used herein have the same meaning as commonly understood by one of ordinary skill in the art unless otherwise defined. It is noted that the terms used herein should be interpreted as having a meaning that is consistent with the context of this specification and should not be interpreted in an idealized or overly formal sense.
Where a convention analogous to "at least one of A, B and C, etc." is used, in general such a construction is intended in the sense one having skill in the art would understand the convention (e.g., "a system having at least one of A, B and C" would include but not be limited to systems that have a alone, B alone, C alone, a and B together, a and C together, B and C together, and/or A, B, C together, etc.). Where a convention analogous to "A, B or at least one of C, etc." is used, in general such a construction is intended in the sense one having skill in the art would understand the convention (e.g., "a system having at least one of A, B or C" would include but not be limited to systems that have a alone, B alone, C alone, a and B together, a and C together, B and C together, and/or A, B, C together, etc.).
Some block diagrams and/or flow diagrams are shown in the figures. It will be understood that some blocks of the block diagrams and/or flowchart illustrations, or combinations thereof, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus, such that the instructions, which execute via the processor, create means for implementing the functions/acts specified in the block diagrams and/or flowchart block or blocks. The techniques of this disclosure may be implemented in hardware and/or software (including firmware, microcode, etc.). In addition, the techniques of this disclosure may take the form of a computer program product on a computer-readable storage medium having instructions stored thereon for use by or in connection with an instruction execution system.
Embodiments of the present disclosure provide a method of visual programming and an apparatus of visual programming applying the same. The method comprises the steps that a first node and the connection relation between the first node and at least one second node are displayed in a first display area, the first node is used for representing a first program module, each second node is used for representing a second program module, and the connection relation is used for representing that data transmission can be carried out between the program modules represented by the first node and the second nodes; displaying a plurality of interface identifications corresponding to the first node in a second display area, wherein each interface identification is used for representing an Application Program Interface (API); in response to a selection instruction for the plurality of interface identifications, determining a target interface identification from the plurality of interface identifications; configuring a first program module represented by a first node according to the API represented by the target interface identifier; and integrating the first program module represented by the first node and the second program module represented by at least one second node according to the connection relation to obtain the target program code.
Fig. 1 schematically illustrates a visual programming application to which a method of visual programming may be applied according to an embodiment of the present disclosure. It should be noted that fig. 1 is only an example of a scenario in which the embodiments of the present disclosure may be applied to help those skilled in the art understand the technical content of the present disclosure, but does not mean that the embodiments of the present disclosure may not be applied to other devices, systems, environments or scenarios.
When a user realizes certain data processing, the corresponding artificial intelligence model needs to be called. Different artificial intelligence models may be selected for different users, and therefore in the embodiment of the disclosure, the user can conveniently select the artificial intelligence models by visually displaying the interfaces of the artificial intelligence models to the user. After the user selects the interface of the artificial intelligence model, the corresponding program code can be automatically generated according to the interface selected by the user.
As shown in FIG. 1, an interactive interface of a visually programmed application includes a first display area, a second display area, and a third display area.
The first display area is a visual programming main interface, the second display area is used for displaying the related information of the currently selected node, and the third display area is used for displaying a node list.
The user may select a node in the third display area, the selected node may be displayed in the first display area, the user may change the position of the node by dragging the node in the first display area, and a connection symbol (for example, an arrow shape in fig. 1) may be further disposed between the two nodes, and the two nodes may be connected by the connection symbol.
Each node may represent a program module. The types of nodes may include, for example: an input node, an artificial intelligence model (AI Models) node, and an artificial intelligence Tools (AI Tools) node. The input node represents a program module for obtaining input data, such as video data, audio data, text data, image data, parameter data, JSON data, and the like. The artificial intelligence model node represents a program module for calling an artificial intelligence model to perform operations such as data processing, and the artificial intelligence model may be, for example, a speech recognition model, an image recognition model, or a character recognition model. The artificial intelligence tool node represents a program module for invoking a data processing tool. The connection symbol between two nodes is used to indicate that they have a connection relationship. The connection symbol is directional, and data can be transmitted between two program modules represented by two nodes connected by the connection symbol in the direction indicated by the connection symbol.
It should be noted that the above-mentioned interactive interface is only an example, and the interactive interface may further include other display areas besides the first display area, the second display area, and the third display area. In addition, the sizes and relative positions of the first display area and the second display area in fig. 1 are only schematic, and in practical applications, the sizes and relative positions of the first display area, the second display area, and the third display area may be arbitrarily set, which is not specifically limited in this application.
Fig. 2 schematically shows a flow diagram of a method of visual programming according to an embodiment of the present disclosure.
As shown in fig. 2, the method includes operations S210 to S250.
In operation S210, a first node and a connection relationship between the first node and at least one second node are displayed in a first display area.
According to the embodiment of the disclosure, the first node is a node currently selected by a user, and the type of the first node can be an artificial intelligence model node. The second node can be an artificial intelligence model node, an input node or an artificial intelligence tool node.
According to an embodiment of the present disclosure, the connection relationship is represented by a connection symbol. The connection symbol is a pattern or a shape for indicating a direction, and may be, for example, a directional line, an arrow shape, a triangular shape, or the like. Exemplarily, in the present embodiment, an arrow shape is used as a connection symbol.
In operation S220, a plurality of interface identifications corresponding to the first node are displayed in the second display area.
According to embodiments of the present disclosure, a program module represented by the first node may invoke a plurality of different artificial intelligence models. The interface identifiers are Application Program Interfaces (APIs) used for representing the artificial intelligence models, and each interface identifier represents an API of one artificial intelligence model.
In the practical application process, the artificial intelligence modules may come from different manufacturers, and the interfaces need to be preprocessed due to different interface standards of each manufacturer. The pretreatment includes, for example: respectively adding corresponding format conversion codes aiming at each artificial intelligence module, wherein the format conversion codes are used for corresponding to a preset format; converting the input parameters in the standard format into the parameter format of the input interface of the artificial intelligence module; and converting the parameters of the output interface of the artificial intelligence module into output parameters in a standard format.
According to an embodiment of the present disclosure, operation S220 may include, for example, displaying all the interface identifications corresponding to the first node in a list form in the second display area.
In operation S230, a target interface identifier is determined from the plurality of interface identifiers in response to a selection instruction for the plurality of interface identifiers.
According to the embodiment of the disclosure, the selection instruction may be triggered by, for example, a click operation of a user, and when the user clicks one of the interface identifiers in the interface identifier list, the selection instruction is triggered, and the clicked interface identifier is used as a target interface identifier, and an API corresponding to the target interface identifier is used as a target API.
According to another embodiment of the present disclosure, the target API may have additional parameter options for configuring parameters of the target API. In this case, an input component corresponding to the target API may also be displayed, where the input component is used to expose additional parameter options for selection by the user. After the user selects the accessory parameter options through the input component, the target API is configured according to the selection of the user. For example, if the user selects the type of input parameter of the target API, the type of input parameter of the API is changed according to the type of input parameter selected by the user.
In operation S240, a first program module characterized by the first node is configured according to the API characterized by the target interface identifier.
Operation S240 may include, for example, obtaining parameter information of the API represented by the target interface identifier (e.g., including an address of the interface, a format of the interface parameter, etc.), according to an embodiment of the present disclosure. According to the parameter information, the program module represented by the first node is configured so that it can call the API.
In operation S250, a first program module represented by the first node and a second program module represented by the at least one second node are integrated according to the connection relationship to obtain a target program code.
According to the embodiment of the present disclosure, for convenience of description, a program module represented by a first node is hereinafter referred to as a target program module, a second node connected to the first node by a connection symbol and located at the arrow end is referred to as an upstream node, a program module represented by the upstream node is referred to as an upstream program module, a second node connected to the first node by a connection symbol and located at the arrow end is referred to as a downstream node, and a program module represented by the downstream node is referred to as a downstream program module.
Operation S250 may include, for example, generating program code according to the connection relationship of the first node with the upstream node and the downstream node. The program code is for performing the following: the method comprises the steps of calling an upstream program module, taking an output result of the upstream program module as input data of a target program module, calling the target program module, taking an output result of the target program module as input data of a downstream program module, and calling the downstream program module to obtain an output result of the downstream program module.
According to the embodiment of the disclosure, a first node and a connection relationship between the first node and at least one second node are displayed in a first display area, a plurality of interface identifiers corresponding to the first node are displayed in a second display area, then a target interface identifier is determined from the plurality of interface identifiers in response to a selection instruction for the plurality of interface identifiers, a first program module represented by the first node is configured according to an API represented by the target interface identifier, and then the first program module represented by the first node and a second program module represented by the at least one second node are integrated according to the connection relationship to obtain a target program code. Therefore, when the API is switched, program codes aiming at the API do not need to be written manually, so that the human resources are saved, and the efficiency is improved. In addition, the visual programming method also reduces the programming difficulty and improves the user experience.
Fig. 3 schematically illustrates a flow diagram of a method of visual programming according to another embodiment of the present disclosure.
As shown in fig. 3, the method may further include operations S310 to S320 in addition to operations S210 to S250. According to an embodiment of the present disclosure, operations S310 to S320 may be performed after operation S240, for example.
In operation S310, a target interface identification is displayed in a first node.
According to an embodiment of the present disclosure, the target interface identifier includes an input interface identifier and an output acceleration identifier.
In operation S320, the target interface identifier is connected to the second node using the connection symbol, so that the target interface identifier establishes a connection relationship with the second node.
According to the embodiment of the disclosure, for the upstream node of the first node, it is connected with the input interface identifier in the first node, and for the downstream node of the first node, it is connected with the output interface identifier in the first node.
According to the embodiment of the disclosure, the target interface identifier is displayed in the first node, and the target interface identifier is connected with the second node by using the connecting symbol, so that the connection relation between the program module represented by the first node and other program modules can be displayed on an interface layer, the relation display is clearer, and the user experience is improved.
Fig. 4 schematically illustrates a flow diagram of a method of visual programming according to another embodiment of the present disclosure.
As shown in fig. 4, the method may further include operation S410 in addition to operations S210 to S250. Operation S410 may be performed after operation S220, for example.
In operation S410, additional information of a plurality of interface identifications is displayed.
According to the embodiment of the disclosure, additional information corresponding to each interface identifier can be displayed beside the interface identifier. The additional information may include, for example, provider information that identifies the corresponding API by the interface, or charging information (including whether to charge, the price charged, etc.), etc.
According to the embodiment of the present disclosure, by displaying the additional information of the interface identifier, more information about the API corresponding to the interface identifier can be provided to the user to help the user make a selection.
Fig. 5 schematically illustrates a block diagram of an apparatus for visual programming in accordance with an embodiment of the present disclosure.
As shown in fig. 5, the apparatus 500 for visual programming includes a first display module 510, a second display module 520, a determination module 530, an addition module 540, and a generation module 550. The visually programmed apparatus 500 may perform the method described above with reference to fig. 2.
Specifically, the first display module 510 is configured to display, in the first display area, a first node and a connection relationship between the first node and at least one second node, where the first node is used to represent one first program module, each of the at least one second node is used to represent one second program module, and the connection relationship is used to represent that data transmission can be performed between the first node and the program module represented by the second node.
A second display module 520, configured to display, in a second display area, a plurality of interface identifiers corresponding to the first node, where each of the plurality of interface identifiers is used to represent an application program interface API.
A determining module 530, configured to determine a target interface identifier from the plurality of interface identifiers in response to a selection instruction for the plurality of interface identifiers.
An adding module 540, configured to configure the first program module characterized by the first node according to the API characterized by the target interface identifier.
The generating module 550 is configured to integrate, according to the connection relationship, the first program module represented by the first node and the second program module represented by the at least one second node to obtain the target program code.
According to the embodiment of the disclosure, a first node and a connection relationship between the first node and at least one second node are displayed in a first display area, a plurality of interface identifiers corresponding to the first node are displayed in a second display area, then a target interface identifier is determined from the plurality of interface identifiers in response to a selection instruction for the plurality of interface identifiers, a first program module represented by the first node is configured according to an API represented by the target interface identifier, and then the first program module represented by the first node and a second program module represented by the at least one second node are integrated according to the connection relationship to obtain a target program code. Therefore, when the API is switched, program codes aiming at the API do not need to be written manually, so that the human resources are saved, and the efficiency is improved. In addition, the visual programming method also reduces the programming difficulty and improves the user experience. Fig. 6 schematically illustrates a block diagram of an apparatus for visual programming according to another embodiment of the present disclosure.
As shown in fig. 6, the visual programming apparatus 600, in addition to the first display module 510, the second display module 520, the determination module 530, the adding module 540, and the generating module 550, further comprises:
a representing module 610, configured to represent the connection relationship by a connection symbol, where the connection symbol includes at least one of a directional line, an arrow shape, and a triangle shape.
Fig. 7 schematically illustrates a block diagram of an apparatus for visual programming according to another embodiment of the present disclosure.
As shown in fig. 7, the apparatus 700 for visual programming includes, in addition to the first display module 510, the second display module 520, the determination module 530, the adding module 540, and the generating module 550:
a third display module 710, configured to display the target interface identifier in the first node;
and a connection module 720, configured to connect the target interface identifier with the second node using the connection symbol, so that the target interface identifier establishes a connection relationship with the second node.
Fig. 8 schematically illustrates a block diagram of an apparatus for visual programming according to another embodiment of the present disclosure.
As shown in fig. 8, in addition to the first display module 510, the second display module 520, the determining module 530, the adding module 540 and the generating module 550, the visual programming apparatus 800 further includes a fourth display module 810 for displaying an input component corresponding to the target interface identifier, so that a user configures an API represented by the target interface identifier through the input component.
Fig. 9 schematically illustrates a block diagram of an apparatus for visual programming according to another embodiment of the present disclosure.
As shown in fig. 9, in addition to the first display module 510, the second display module 520, the determination module 530, the adding module 540 and the generating module 550, the visual programming apparatus 900 further includes a fifth display module 910 for displaying additional information of the plurality of interface identifications, the additional information including provider information or charging information.
Any number of modules, sub-modules, or at least part of the functionality of any number thereof according to embodiments of the present disclosure may be implemented in one module. Any one or more of the modules and sub-modules according to the embodiments of the present disclosure may be implemented by being split into a plurality of modules. Any one or more of the modules, sub-modules according to embodiments of the present disclosure may be implemented at least in part as a hardware circuit, such as a Field Programmable Gate Array (FPGA), a Programmable Logic Array (PLA), a system on a chip, a system on a substrate, a system on a package, an Application Specific Integrated Circuit (ASIC), or may be implemented in any other reasonable manner of hardware or firmware by integrating or packaging the circuit, or in any one of three implementations, or in any suitable combination of any of the three. Alternatively, one or more of the modules, sub-modules according to embodiments of the disclosure may be implemented at least partly as computer program modules, which when executed may perform corresponding functions.
For example, any plurality of the first display module 510, the second display module 520, the determination module 530, the addition module 540, the generation module 550, the presentation module 610, the third display module 710, the connection module 720, the fourth display module 810, and the fifth display module 910 may be combined in one module to be implemented, or any one of them may be split into a plurality of modules. Alternatively, at least part of the functionality of one or more of these modules may be combined with at least part of the functionality of the other modules and implemented in one module. According to an embodiment of the present disclosure, at least one of the first display module 510, the second display module 520, the determining module 530, the adding module 540, the generating module 550, the representing module 610, the third display module 710, the connecting module 720, the fourth display module 810 and the fifth display module 910 may be at least partially implemented as a hardware circuit, such as a Field Programmable Gate Array (FPGA), a Programmable Logic Array (PLA), a system on a chip, a system on a substrate, a system on a package, an Application Specific Integrated Circuit (ASIC), or may be implemented by hardware or firmware in any other reasonable manner of integrating or packaging a circuit, or implemented by any one of three implementations of software, hardware and firmware, or by a suitable combination of any of them. Alternatively, at least one of the first display module 510, the second display module 520, the determination module 530, the adding module 540, the generating module 550, the representing module 610, the third display module 710, the connecting module 720, the fourth display module 810 and the fifth display module 910 may be at least partially implemented as a computer program module which, when executed, may perform a corresponding function.
FIG. 10 schematically illustrates a block diagram of a computer system suitable for implementing the above-described method, according to an embodiment of the present disclosure. The computer system illustrated in FIG. 10 is only one example and should not impose any limitations on the scope of use or functionality of embodiments of the disclosure.
As shown in fig. 10, computer system 1000 includes a processor 1010 and a computer-readable storage medium 1020. The computer system 1000 may perform a method according to an embodiment of the disclosure.
In particular, processor 1010 may include, for example, a general purpose microprocessor, an instruction set processor and/or related chip set and/or a special purpose microprocessor (e.g., an Application Specific Integrated Circuit (ASIC)), and/or the like. The processor 1010 may also include on-board memory for caching purposes. Processor 1010 may be a single processing unit or multiple processing units for performing different acts of a method flow according to embodiments of the disclosure.
Computer-readable storage media 1020, for example, may be non-volatile computer-readable storage media, specific examples including, but not limited to: magnetic storage devices, such as magnetic tape or Hard Disk Drives (HDDs); optical storage devices, such as compact disks (CD-ROMs); a memory, such as a Random Access Memory (RAM) or a flash memory; and so on.
The computer-readable storage medium 1020 may comprise a computer program 1021, which computer program 1021 may comprise code/computer-executable instructions that, when executed by the processor 1010, cause the processor 1010 to perform a method according to an embodiment of the disclosure, or any variant thereof.
The computer program 1021 may be configured with computer program code, for example, comprising computer program modules. For example, in an example embodiment, code in computer program 1021 may include one or more program modules, including, for example, 1021A, modules 1021B, … …. It should be noted that the division and number of modules are not fixed, and those skilled in the art may use suitable program modules or program module combinations according to actual situations, and when the program modules are executed by the processor 1010, the processor 1010 may execute the method according to the embodiment of the present disclosure or any variation thereof.
According to an embodiment of the present invention, at least one of the first display module 510, the second display module 520, the determination module 530, the addition module 540, the generation module 550, the presentation module 610, the third display module 710, the connection module 720, the fourth display module 810 and the fifth display module 910 may be implemented as a computer program module described with reference to fig. 10, which, when executed by the processor 1010, may implement the respective operations described above.
The present disclosure also provides a computer-readable storage medium, which may be contained in the apparatus/device/system described in the above embodiments; or may exist separately and not be assembled into the device/apparatus/system. The computer-readable storage medium carries one or more programs which, when executed, implement the method according to an embodiment of the disclosure.
According to embodiments of the present disclosure, the computer-readable storage medium may be a non-volatile computer-readable storage medium, which may include, for example but is not limited to: 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), a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the present disclosure, a computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device.
The flowchart and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present disclosure. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams or flowchart illustration, and combinations of blocks in the block diagrams or flowchart illustration, can be implemented by special purpose hardware-based systems which perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
Those skilled in the art will appreciate that various combinations and/or combinations of features recited in the various embodiments and/or claims of the present disclosure can be made, even if such combinations or combinations are not expressly recited in the present disclosure. In particular, various combinations and/or combinations of the features recited in the various embodiments and/or claims of the present disclosure may be made without departing from the spirit or teaching of the present disclosure. All such combinations and/or associations are within the scope of the present disclosure.
While the disclosure has been shown and described with reference to certain exemplary embodiments thereof, it will be understood by those skilled in the art that various changes in form and details may be made therein without departing from the spirit and scope of the disclosure as defined by the appended claims and their equivalents. Accordingly, the scope of the present disclosure should not be limited to the above-described embodiments, but should be defined not only by the appended claims, but also by equivalents thereof.

Claims (12)

1. A method of visual programming, comprising:
displaying a first node and a connection relation between the first node and at least one second node in a first display area, wherein the first node is a node currently selected by a user and used for representing a first program module, the type of the first node comprises an artificial intelligence model node, each of the at least one second node is used for representing a second program module, the type of each of the at least one second node comprises at least one of an input node, an artificial intelligence model node and an artificial intelligence tool node, and the connection relation is used for representing that data transmission can be carried out between the first node and the program module represented by the second node;
displaying a plurality of interface identifications corresponding to the first node in a second display area, wherein each interface identification in the plurality of interface identifications is used for representing an Application Program Interface (API), and the API is an interface of a preprocessed artificial intelligence model;
in response to a selection instruction for the plurality of interface identifications, determining a target interface identification from the plurality of interface identifications;
configuring a first program module represented by the first node according to the API represented by the target interface identifier;
and integrating the first program module represented by the first node and the second program module represented by the at least one second node according to the connection relation to obtain the target program code.
2. The method of claim 1, further comprising;
the connection relation is represented by a connection symbol including at least one of a directional line, an arrow shape, and a triangle shape.
3. The method of claim 1, further comprising:
displaying the target interface identification in the first node;
and connecting the target interface identifier with a second node by using a connection symbol so as to establish a connection relationship between the target interface identifier and the second node.
4. The method of claim 1, further comprising:
and displaying the input component corresponding to the target interface identification so that the user configures the API represented by the target interface identification through the input component.
5. The method of claim 1, further comprising:
displaying additional information of the plurality of interface identifications, the additional information including provider information or charging information.
6. An apparatus for visual programming, comprising:
the first display module is used for displaying a first node and a connection relation between the first node and at least one second node in a first display area, the first node is a node currently selected by a user and used for representing a first program module, the type of the first node comprises an artificial intelligence model node, each of the at least one second node is used for representing a second program module, the type of each of the at least one second node comprises at least one of an input node, an artificial intelligence model node and an artificial intelligence tool node, and the connection relation is used for representing that data transmission can be carried out between the program modules represented by the first node and the second node;
the second display module is used for displaying a plurality of interface identifications corresponding to the first node in a second display area, each interface identification in the plurality of interface identifications is used for representing an application program interface API, and the API is an interface of a preprocessed artificial intelligence model;
a determining module, configured to determine a target interface identifier from the plurality of interface identifiers in response to a selection instruction for the plurality of interface identifiers;
the configuration module is used for configuring a first program module represented by the first node according to the API represented by the target interface identifier;
and the generating module is used for integrating the first program module represented by the first node and the second program module represented by the at least one second node according to the connection relation to obtain the target program code.
7. The apparatus of claim 6, further comprising:
and the representing module is used for representing the connection relation through a connection symbol, and the connection symbol comprises at least one of a directional line, an arrow shape and a triangle shape.
8. The apparatus of claim 6, further comprising:
a third display module, configured to display the target interface identifier in the first node;
and the connection module is used for connecting the target interface identifier with the second node by using a connection symbol so as to establish a connection relationship between the target interface identifier and the second node.
9. The apparatus of claim 6, further comprising:
and the fourth display module is used for displaying the input component corresponding to the target interface identifier so that the user can configure the API represented by the target interface identifier through the input component.
10. The apparatus of claim 6, further comprising:
and the fifth display module is used for displaying the additional information of the plurality of interface identifiers, wherein the additional information comprises provider information or charging information.
11. A computing device, comprising:
one or more processors;
a memory for storing one or more computer programs,
wherein the one or more computer programs, when executed by the one or more processors, cause the one or more processors to implement the method of any of claims 1 to 5.
12. A computer readable storage medium having stored thereon executable instructions which, when executed by a processor, cause the processor to carry out the method of any one of claims 1 to 5.
CN201910857568.8A 2019-09-10 2019-09-10 Visual programming method, device, computing equipment and medium Active CN110554865B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910857568.8A CN110554865B (en) 2019-09-10 2019-09-10 Visual programming method, device, computing equipment and medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910857568.8A CN110554865B (en) 2019-09-10 2019-09-10 Visual programming method, device, computing equipment and medium

Publications (2)

Publication Number Publication Date
CN110554865A CN110554865A (en) 2019-12-10
CN110554865B true CN110554865B (en) 2021-05-18

Family

ID=68739888

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910857568.8A Active CN110554865B (en) 2019-09-10 2019-09-10 Visual programming method, device, computing equipment and medium

Country Status (1)

Country Link
CN (1) CN110554865B (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112612509A (en) * 2020-12-23 2021-04-06 天聚地合(苏州)数据股份有限公司 Interface integration method and device, electronic equipment and storage medium
CN113126978A (en) * 2021-03-25 2021-07-16 广州白码科技有限公司 Programming visualization method, device, equipment and storage medium
CN117215559A (en) * 2023-11-08 2023-12-12 深圳市升立德科技有限公司 Execution method, device, equipment and medium for visual programming

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102609264A (en) * 2012-02-14 2012-07-25 深圳市同洲视讯传媒有限公司 Method and device for generating calling codes by calling application programming interfaces
US8473970B2 (en) * 2010-02-25 2013-06-25 Oracle International Corporation Framework for integrating applications
CN109669673A (en) * 2017-10-12 2019-04-23 世熠网络科技(上海)有限公司 Game engine device based on HTML5
CN109976746A (en) * 2018-11-28 2019-07-05 四川商通实业有限公司 A kind of visual configuration application interface method
CN110018826A (en) * 2019-03-12 2019-07-16 深圳壹账通智能科技有限公司 User interface creating method and relevant device

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102855135A (en) * 2012-04-23 2013-01-02 苏州大学 Graphical component-based sensing network development platform and method
CN105739983B (en) * 2016-01-29 2019-03-15 腾讯科技(深圳)有限公司 Shell script editing device and its implementation
US10223176B1 (en) * 2017-10-13 2019-03-05 Amazon Technologies, Inc. Event handler nodes for visual scripting
CN108614776B (en) * 2018-05-04 2021-08-31 艺龙网信息技术(北京)有限公司 Dynamic construction method and system for cross-language protocol test request
US10331422B1 (en) * 2019-02-10 2019-06-25 Julie Russell System and method for generating API devlopment code for integrating platforms
CN109976872B (en) * 2019-02-21 2021-05-18 北京达佳互联信息技术有限公司 Data processing method and device, electronic equipment and storage medium

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8473970B2 (en) * 2010-02-25 2013-06-25 Oracle International Corporation Framework for integrating applications
CN102609264A (en) * 2012-02-14 2012-07-25 深圳市同洲视讯传媒有限公司 Method and device for generating calling codes by calling application programming interfaces
CN109669673A (en) * 2017-10-12 2019-04-23 世熠网络科技(上海)有限公司 Game engine device based on HTML5
CN109976746A (en) * 2018-11-28 2019-07-05 四川商通实业有限公司 A kind of visual configuration application interface method
CN110018826A (en) * 2019-03-12 2019-07-16 深圳壹账通智能科技有限公司 User interface creating method and relevant device

Also Published As

Publication number Publication date
CN110554865A (en) 2019-12-10

Similar Documents

Publication Publication Date Title
CN110554865B (en) Visual programming method, device, computing equipment and medium
CN109408685B (en) Thinking guide graph display method and device
US9229771B2 (en) Cloud bursting and management of cloud-bursted applications
US10976904B2 (en) Graphical chatbot interface facilitating user-chatbot interaction
CN104516783A (en) Authority control method and device
US20170010673A1 (en) Gesture based sharing of user interface portion
CN110489101A (en) Interface analogy method, system, medium and electronic equipment
KR20210043619A (en) Educational systems and methods, electronic devices and storage media
CN110727869A (en) Page construction method and device
CN110633959A (en) Method, device, equipment and medium for creating approval task based on graph structure
US20180329802A1 (en) Identification and handling of nested breakpoints during debug session
CN111123728B (en) Unmanned vehicle simulation method, device, equipment and computer readable medium
CN112965711A (en) Job test method and apparatus, electronic device, and storage medium
CN109614230B (en) Resource virtualization method and device and electronic equipment
CN111127608B (en) Rendering method, rendering device and storage medium
CN111143298A (en) Information processing method and information processing apparatus
US11604907B2 (en) System and method for designing car systems
US10423579B2 (en) Z/OS SMF record navigation visualization tooling
EP3848800B1 (en) Method and apparatus for displaying message box, terminal and storage medium
CN110543304A (en) Scheme implementation method and device
CN109739664B (en) Information processing method, information processing apparatus, electronic device, and medium
CN110597521B (en) Data processing method, electronic device, and medium
CN114237450A (en) Virtual resource transfer method, device, equipment, readable storage medium and product
CN108848398B (en) Method, device, terminal and storage medium for distributing local barrage messages
CN110888649B (en) Application deployment method, application baseline creation method and device

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
GR01 Patent grant
GR01 Patent grant