Method, device, equipment and medium for managing tools in application
By creating pages in the application, specifying task descriptions and visual representations, dynamic creation tools solve the problem of inflexible tool management in the existing technology, realizing the creation and call of user-defined tools, simplifying task execution, and improving tool management flexibility and effectiveness.
Patent Information
- Application Number
- CN202480002192.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-06-24
- Publication Date
- 2024-12-27
AI Technical Summary
Tools in existing applications are pre-set during development and users cannot modify them during use, resulting in inflexible and effective tool management.
Provide a method and device to specify a description and visual representation of a predetermined task by creating a page in an application, dynamically create a tool in response to user's interactive requests, and present a visual representation of the tool in an application, supporting the creation and creation of user-defined tools and Called.
It realizes that users create personalized tools according to their own needs, simplifies the task execution process, improves the flexibility and effectiveness of tool management, and allows users to call the powerful processing power of remote processing systems without modifying application code.
Smart Images

Figure CN119213407A_ABST
Abstract
Description
Technical Field
[0001] Exemplary implementations of the present disclosure generally relate to the computer field, and more particularly, to methods, apparatuses, devices, and computer-readable storage media for managing tools in applications. Background Art
[0002] With the development of computer technology, a variety of applications that implement different functions have been developed. Applications can provide different tools to perform various predetermined tasks. However, the tools are pre-set during application development and cannot be modified by users during use. At this time, it is expected to manage the tools in the application in a more flexible and effective way. Summary of the invention
[0003] In a first aspect of the present disclosure, a method for managing tools in an application is provided. In the method, in response to receiving a creation request for creating a tool in an application, a creation page is presented, the tool is used to perform a predetermined task, and the creation page includes: a first area for specifying a description of the predetermined task expressed in a natural language; and a second area for specifying a visual representation corresponding to the tool. In response to receiving an interaction request for the creation page, the tool is created based on the description and visual representation of the predetermined task specified by the interaction request. The visual representation corresponding to the tool is presented in the application.
[0004] In a second aspect of the present disclosure, a device for managing tools in an application is provided. The device includes: a page presentation module, a creation module, and a tool presentation module. The page presentation module is configured to present a creation page in response to receiving a creation request for creating a tool in an application, the tool is used to perform a predetermined task, and the creation page includes: a first area for specifying a description of the predetermined task expressed in a natural language; and a second area for specifying a visual representation corresponding to the tool. The creation module is configured to create a tool based on the description and visual representation of the predetermined task specified by the interaction request in response to receiving an interaction request for the creation page. The tool presentation module is configured to present a visual representation corresponding to the tool in the application.
[0005] In a third aspect of the present disclosure, an electronic device is provided. The electronic device includes: at least one processing unit; and at least one memory, the at least one memory is coupled to the at least one processing unit and stores instructions for execution by the at least one processing unit, and when the instructions are executed by the at least one processing unit, the electronic device executes the method according to the first aspect of the present disclosure.
[0006] In a fourth aspect of the present disclosure, a computer-readable storage medium is provided, on which a computer program is stored. When the computer program is executed by a processor, the processor implements the method according to the first aspect of the present disclosure.
[0007] In a fifth aspect of the present disclosure, a computer program product is provided, comprising a computer program, wherein the computer program implements the method according to the first aspect of the present disclosure when executed by a processor.
[0008] It should be understood that the content described in this content section is not intended to limit the key features or important features of the implementation of the present disclosure, nor is it intended to limit the scope of the present disclosure. Other features of the present disclosure will become easy to understand through the following description. BRIEF DESCRIPTION OF THE DRAWINGS
[0009] In the following, in conjunction with the accompanying drawings and with reference to the following detailed description, the above and other features, advantages and aspects of various implementations of the present disclosure will become more apparent. In the accompanying drawings, the same or similar figure labels represent the same or similar elements, wherein:
[0010] Figure 1 A block diagram showing an application environment according to an exemplary implementation of the present disclosure is shown;
[0011] Figure 2 A block diagram illustrating a tool for managing applications according to some implementations of the present disclosure is shown;
[0012] Figure 3 A block diagram showing a creation page according to some implementations of the present disclosure is shown;
[0013] Figure 4 A block diagram showing a tool for presenting in an application according to some implementations of the present disclosure is shown;
[0014] Figure 5 A block diagram showing a tool for presenting in an application according to some implementations of the present disclosure is shown;
[0015] Figure 6 A block diagram of a settings page according to some implementations of the present disclosure is shown;
[0016] Figure 7 A flowchart illustrating a method for managing tools in an application according to some implementations of the present disclosure is shown;
[0017] Figure 8 A block diagram showing an apparatus for managing tools in an application according to some implementations of the present disclosure; and
[0018] Fig. 9 A block diagram of a device capable of implementing multiple implementations of the present disclosure is shown. DETAILED DESCRIPTION
[0019] The implementation of the present disclosure will be described in more detail below with reference to the accompanying drawings. Although certain implementations of the present disclosure are shown in the accompanying drawings, it should be understood that the present disclosure can be implemented in various forms and should not be interpreted as being limited to the implementations described herein. On the contrary, these implementations are provided to provide a more thorough and complete understanding of the present disclosure. It should be understood that the drawings and implementations of the present disclosure are only for exemplary purposes and are not intended to limit the scope of protection of the present disclosure.
[0020] In the description of the implementation methods of the present disclosure, the term "including" and similar terms should be understood as open inclusion, that is, "including but not limited to". The term "based on" should be understood as "based at least in part on". The term "an implementation" or "the implementation" should be understood as "at least one implementation". The term "some implementations" should be understood as "at least some implementations". The following may also include other explicit and implicit definitions. As used herein, the term "model" can represent the association relationship between various data. For example, the above-mentioned association relationship can be obtained based on a variety of technical solutions currently known and / or to be developed in the future.
[0021] It is understandable that the data involved in this technical solution (including but not limited to the data itself, the acquisition or use of the data) shall comply with the requirements of relevant laws, regulations and relevant provisions.
[0022] It is understandable that before using the technical solutions disclosed in the embodiments of the present disclosure, the types, scope of use, usage scenarios, etc. of the personal information involved in the present disclosure should be informed to the user and the user's authorization should be obtained in an appropriate manner in accordance with relevant laws and regulations.
[0023] For example, in response to receiving an active request from a user, a prompt message is sent to the user to clearly prompt the user that the operation requested to be performed will require obtaining and using the user's personal information. Thus, the user can autonomously choose whether to provide personal information to software or hardware such as an electronic device, application, server, or storage medium that performs the operation of the technical solution of the present disclosure according to the prompt message.
[0024] As an optional but non-limiting implementation, in response to receiving an active request from the user, the prompt information is sent to the user in a manner such as a pop-up window, in which the prompt information can be presented in text form. In addition, the pop-up window can also carry a selection control for the user to choose "agree" or "disagree" to provide personal information to the electronic device.
[0025] It is understandable that the above notification and the process of obtaining user authorization are merely illustrative and do not constitute a limitation on the implementation of the present disclosure. Other methods that meet relevant laws and regulations may also be applied to the implementation of the present disclosure.
[0026] The term "in response to" as used herein refers to a state in which a corresponding event occurs or a condition is satisfied. It will be understood that the timing of executing a subsequent action executed in response to the event or condition is not necessarily strongly related to the time when the event occurs or the condition is satisfied. For example, in some cases, the subsequent action may be executed immediately when the event occurs or the condition is satisfied; while in other cases, the subsequent action may be executed some time after the event occurs or the condition is satisfied.
[0027] Example Environment
[0028] Applications can provide different tools to perform various pre-defined tasks. However, the tools are set during application development and cannot be modified by the user during use. As machine learning model technology develops, users can create prompts and input prompts to the machine learning model to perform the desired task. Figure 1 A block diagram 100 of an application environment according to an exemplary implementation of the present disclosure is shown. Figure 1 As shown, in the application 110 implemented based on the machine learning model, the user can enter a prompt word in the input box 140. For example, the user can enter "city A travel" and submit the prompt word to the machine learning model. At this time, the machine learning model can generate a response based on the prompt word 120.
[0029] However, the user needs to manually input the prompt word to perform the desired task. At this time, it is expected that a tool can be created in the application to perform the specific task so that the user can directly call the tool to perform the specific task during the subsequent use of the application.
[0030] Tool Management Overview
[0031] In order to at least partially address the deficiencies in the prior art, according to an exemplary implementation of the present disclosure, a method for managing tools in an application is proposed. In summary, a tool can be created in an application, and a user can specify the tasks that the tool can perform and the visual representation of the tool (e.g., controls, etc.). Figure 2 An overview of an exemplary implementation of the present disclosure is described. Figure 2 A block diagram 200 is shown of a tool for managing an application according to some implementations of the present disclosure. Figure 2 As shown, in response to receiving a creation request for creating a tool in the application 210 (e.g., a click operation on the control 228, etc.), a creation page 230 may be presented in the application 210 to create a tool for performing a predetermined task. In this way, users may be supported to create personalized tools in the application 210 according to their own needs.
[0032] like Figure 2 As shown, the creation page 230 may include: a first area 240 for specifying a description of a predetermined task expressed in natural language; and a second area 242 for specifying a visual representation corresponding to the tool. Specifically, the description may be a prompt word for calling a processing system to perform a predetermined task. Here, the processing system may include a first subsystem implemented based on a search engine, and / or a second subsystem implemented based on a machine learning model. One or more subsystems may be called based on the specific content of the prompt word to perform the corresponding task. Here, a visual representation (e.g., a label or icon) of the tool may be specified in the second area 242. For example, text may be entered in the second area 242, or an image may be selected to specify the visual representation.
[0033] Further, in response to receiving an interaction request for creating a page, a tool (e.g., tool 232) may be created based on the description and visual representation of the predetermined task specified by the interaction request, and a visual representation corresponding to the tool may be presented in the application. In other words, the visual representation of the created tool will be displayed in the application for user use. Figure 2 As shown, the user can click control 228 to create one or more tools. The created tools can be added to tool set 220, for example, tool 222 can be used to process images, tool 224 can be used to translate text, and tool 226 can be used to generate summaries, etc. In this way, customized tools can be added to the application, thereby supporting users to call the tools to perform desired tasks in a simpler and more efficient manner.
[0034] Detailed process of tool management
[0035] The outline of some implementations according to the present disclosure has been described. In the following, more details of some implementations according to the present disclosure will be described. According to some implementations of the present disclosure, in response to receiving a call request for a visual representation, a description can be sent to a processing system to perform a predetermined task, and a processing result for the call request can be provided based on a response to the description from the processing system. Figure 2 In response to receiving a call request (e.g., a click operation) for the tool 232, the result of searching for music may be presented in the application 210, for example, a link for accessing one or more music, and / or the found music may be played by the application 210, etc. It should be understood that the various tools in the tool set 220 are merely illustrative, and alternatively and / or additionally, the tool set 220 may include more, fewer, or different tools.
[0036] It should be understood that the scheduled task may involve a variety of situations. For example, for tasks such as searching for music, querying the weather in city A, etc., such tasks do not involve data objects to be processed. For another example, for translation tasks, image processing tasks, etc., it is necessary to specify the data objects to be processed. At this time, the creation page may further include more setting areas. According to some implementations of the present disclosure, the creation page may further include: a third area for specifying the data source of at least one data object to be processed by the scheduled task.
[0037] See also Figure 3 Describe in more detail the Figure 3 A block diagram 300 of creating a page according to some implementations of the present disclosure is shown. Figure 3 As shown, the creation page 310 may include a third area 320 for specifying the data source of at least one data object to be processed by the predetermined task. Assuming that the prompt word specifies the translation task of "English to Chinese", a drop-down list may be provided in the third area 320 to specify the data source of the text to be translated. The data source may include at least one of the following: data accessed in the application, data selected in the application, and data submitted to the application. For example, option 322 may specify the translation of "currently selected data", option 324 may specify the translation of "currently accessed data", and option 326 may specify the translation of "uploaded data", and so on.
[0038] Specifically, the data accessed in the application can be used as the default data object to be processed. For example, when a user is browsing a web page and clicks the "translation" tool 222, the web page can be translated into a specified language. Assuming that the user selects certain parts of the web page, the parts can be translated into the specified language. For another example, after clicking the "translation" tool 222, a predetermined page can be presented, and the user can upload the data object to be processed, such as a file to be translated, to a specified location on the predetermined page.
[0039] If the user selects option 322 in the creation page 310, the data source to be processed is the "currently selected data", see Figure 4 Describe in more detail. Figure 4 A block diagram 400 of presenting tools in an application according to some implementations of the present disclosure is shown. Figure 4 As shown, the tool set 220 may be presented in a floating manner in the application 410. Here, the user may drag the tool set 220 and present it at a desired location. Alternatively and / or additionally, the tool set may not be presented in the initial stage, and one or more tools for processing the specific data object may be presented in response to determining that the user selects the specific data object.
[0040] According to some implementations of the present disclosure, the type of data object accessed in the application can be obtained; and in response to determining that the type of the data object matches the predetermined task, a visual representation is presented in the application. Specifically, assuming that a user accesses a web page in application 410 and selects text 420, a toolset can be presented near the selected text. Here, the toolset may only include one or more tools that can process text-type data, such as a translation tool, and a tool for generating summaries, etc. For another example, assuming that the user selects image 422, a toolset can be presented near the selected image. Here, the toolset may only include one or more tools that can process image-type data, such as an image processing tool, etc. Using the example implementation of the present disclosure, tools that may need to be called can be provided to the user, thereby simplifying user operations.
[0041] According to some implementations of the present disclosure, in response to receiving a call request for the visual representation, a description may be sent to a processing system. Specifically, at least one data object may be acquired based on a data source, and a description and corresponding data to be processed may be sent to the processing system. For example, the selected text 420 and the prompt word "English to Chinese" may be sent to the processing system so as to call the processing system to return the Chinese translation of the text 420. In this way, the powerful processing capabilities of the remote processing system may be called to perform the desired task without modifying the code of the application.
[0042] According to some implementations of the present disclosure, it is possible to pre-compare whether the type of the acquired data object matches the predetermined task, that is, whether the data object can be used as input data for the predetermined task. In response to determining that the type of at least one data object matches the predetermined task, a description can be sent to the processing system. In the above example, since the "English to Chinese" task can process the selected text 420, the type of the data object matches the predetermined task at this time, and the prompt word "English to Chinese" and the selected text 420 can be sent to the processing system. For another example, assuming that the image 422 is currently selected and the image includes text, the prompt word "English to Chinese" and the selected image 422 can still be sent to the processing system. At this time, the processing system will return the Chinese translation of the text in the image 422.
[0043] Alternatively and / or additionally, according to some implementations of the present disclosure, in response to determining that the type of at least one data object does not match the predetermined task, a notification is provided in the application to instruct the user to re-specify the at least one data object. Figure 4, assuming that text 420 is currently selected and the user clicks tool 222 to execute the image processing task. At this time, since the image processing task cannot process the text, a notification can be provided in application 410 to inform the user to reselect the image to be processed. In this way, it can be ensured that the processing system can execute the specified task, thereby avoiding a large number of unexecutable tasks from being sent to the processing system, thereby increasing the workload of the processing system.
[0044] Although the above shows that the predetermined task involves one data object, alternatively and / or additionally, the predetermined task may involve multiple data objects. For example, the prompt word may include: "Merge two documents", then the user can upload two documents to be merged to the specified area, and the processing system will return the merged document.
[0045] According to some implementations of the present disclosure, the creation page further includes: a fourth area for specifying presentation attributes of the visual representation, the presentation attributes including at least any one of the following: mode, position, and state of the visual representation; and wherein presenting the visual representation in the application includes: presenting the visual representation according to the presentation attributes. Figure 3 Describing more details, the creation page 310 may further include a fourth area 330 , and the fourth area 330 may include input areas 322 , 324 , and 326 .
[0046] Specifically, the input area 322 can be used to specify a mode of visual representation, which can include, for example, a "floating layer" mode and a "sidebar" mode. The "floating layer" mode can be as follows: Figure 4 The tools are displayed in a floating layer in the manner shown. The "Sidebar" mode can specify that the tools are presented in a fixed area on the side of the application. Input area 324 can specify the location of the visual representation, for example, the position number or coordinates of the visual representation in the tool set, etc. Input area 324 can specify the state of the visual representation, for example, whether the visual representation is displayed in the tool set ("on" can mean display, and "off" can mean not display).
[0047] According to some implementations of the present disclosure, the application may include a web application, and the method described above may be implemented using a plug-in for a browser for accessing a web application. Specifically, the web application may be accessed in the browser application (i.e., the address of the web application is accessed), and then a creation page for creating a tool is presented in the web application. The above functions may be implemented in a browser plug-in, in this way, when a browser is used to access different web applications, the functions defined in the browser plug-in may be called to customize tools in different web applications. According to some implementations of the present disclosure, the activation state of the browser plug-in may be set. For example, the technical solution of the present disclosure may be executed only when the browser plug-in is activated. When the browser plug-in is not activated, the browser may operate in a conventional manner.
[0048] Figure 5 A block diagram 500 of presenting tools in an application according to some implementations of the present disclosure is shown. Figure 5 As shown, an interactive page for calling a processing system can be integrated in a browser plug-in. At this time, the display area of the application 510 can be divided into two parts: a main page 520 and a sidebar 522. The main page 520 is used to display the interactive page of the application 510, and the sidebar 522 is used to display the interactive page between the user and the processing system.
[0049] At this time, a tool set 530 and an input area 532 may be presented in the sidebar 522. The user may click on each tool in the tool set 530 to perform a desired task. Alternatively and / or additionally, the user may enter a prompt word in the input area 532, thereby invoking the capabilities of the processing system to perform the corresponding task. In this way, the tool set may be presented at a fixed location, thereby facilitating user access.
[0050] According to some implementations of the present disclosure, a user can add a tool to the tool set based on the method described above. A storage area for storing user-defined tools can be set in the browser plug-in. At this time, in response to receiving an add request, a tool can be added to the plug-in. In this way, it is convenient for the user to continuously add plug-ins for specifying a certain function during use.
[0051] According to some implementations of the present disclosure, a setting page for each tool in the management tool set may be provided, for example, in response to detecting a setting control (e.g., Figure 4 Control 430 in, and Figure 5 The interactive request of the control 540 in the example above may present the setting page. Figure 6 Describe in more detail. Figure 6 A block diagram 600 of a settings page according to some implementations of the present disclosure is shown. Figure 6As shown, the setting page 610 can provide relevant parameters of various tools that the user has added, and the user can add new tools, delete existing tools, or modify the labels, prompt words, modes, positions, and states of existing tools in the setting page, etc. Utilizing the exemplary implementation of the present disclosure, it is convenient for the user to fully understand the various tools supported by the plug-in of the current browser.
[0052] According to some implementations of the present disclosure, for another web application accessed using a browser, a set of tools matching the type of the other web application is determined from a plurality of tools; and a set of tools is presented in the other web application. Assuming that the user is accessing a web application for text editing, a text processing toolset may be presented, and the toolset may include one or more tools for processing text, such as a translation tool, a summary generation tool, and the like. For another example, assuming that the user is accessing a web application for image editing, an image processing toolset may be presented, and the toolset may include one or more tools for processing text, such as an image style conversion tool, an image color conversion tool, and the like. In this way, it is possible to facilitate sharing of user-defined tools between different types of web applications.
[0053] By using the exemplary implementation of the present disclosure, a customized tool may be added to an application, thereby enabling a user to call the tool to perform a desired task in a simpler and more effective manner.
[0054] Example Process
[0055] Figure 7 A flow chart of a method 700 for managing tools in an application according to some implementations of the present disclosure is shown. At box 710, in response to receiving a create request for creating a tool in an application, a create page is presented, the tool is used to perform a predetermined task, and the create page includes: a first area for specifying a description of the predetermined task expressed in a natural language; and a second area for specifying a visual representation corresponding to the tool. At box 720, in response to receiving an interaction request for the create page, a tool is created based on the description and visual representation of the predetermined task specified by the interaction request. At box 730, a visual representation corresponding to the tool is presented in the application.
[0056] According to some implementations of the present disclosure, the method further includes: in response to receiving a call request for the visual representation, sending a description to a processing system to perform a predetermined task; and providing a processing result for the call request based on a response to the description from the processing system.
[0057] According to some implementations of the present disclosure, the creation page further includes: a third area for specifying a data source of at least one data object to be processed by a predetermined task, the data source including at least any one of the following: data accessed in the application, data selected in the application, and data submitted to the application.
[0058] According to some implementations of the present disclosure, sending the description to the processing system includes: acquiring at least one data object based on a data source; and sending the description to the processing system in response to determining that a type of the at least one data object matches a predetermined task.
[0059] According to some implementations of the present disclosure, the method further includes: in response to determining that the type of the at least one data object does not match the predetermined task, providing a notification in the application to instruct the user to re-specify the at least one data object.
[0060] According to some implementations of the present disclosure, presenting the visual representation in the application includes: obtaining a type of a data object accessed in the application; and in response to determining that the type of the data object matches a predetermined task, presenting the visual representation in the application.
[0061] According to some implementations of the present disclosure, the creation page further includes: a fourth area for specifying presentation properties of the visual representation, the presentation properties including at least any one of the following: a mode, a position, and a state of the visual representation; and wherein presenting the visual representation in the application includes: presenting the visual representation according to the presentation properties.
[0062] According to some implementations of the present disclosure, the application is a web application, and the method is implemented using a plug-in of a browser for accessing the web application.
[0063] According to some implementations of the present disclosure, the method 700 further includes: in response to receiving an add request, adding a tool to the plug-in.
[0064] According to some implementations of the present disclosure, the plug-in includes multiple tools, and the method 700 further includes: for another web application accessed using a browser, determining a set of tools matching the type of another web application from the multiple tools; and presenting the set of tools in the other web application.
[0065] Example devices and equipment
[0066] Figure 8A block diagram of an apparatus 800 for managing tools in an application according to some implementations of the present disclosure is shown. The apparatus includes: a page rendering module 810, configured to present a creation page in response to receiving a creation request for creating a tool in an application, the tool is used to perform a predetermined task, and the creation page includes: a first area for specifying a description of the predetermined task expressed in a natural language; and a second area for specifying a visual representation corresponding to the tool; a creation module 820, configured to create a tool based on the description and visual representation of the predetermined task specified by the interaction request in response to receiving an interaction request for the creation page; and a tool rendering module 830, configured to present a visual representation corresponding to the tool in the application.
[0067] According to some implementations of the present disclosure, the device 800 further includes: a sending module, configured to send a description to a processing system in response to receiving a call request for a visual representation so as to perform a predetermined task; and a providing module, configured to provide a processing result for the call request based on a response to the description from the processing system.
[0068] According to some implementations of the present disclosure, the creation page further includes: a third area for specifying a data source of at least one data object to be processed by a predetermined task, the data source including at least any one of the following: data accessed in the application, data selected in the application, and data submitted to the application.
[0069] According to some implementations of the present disclosure, the sending module is further configured to: obtain at least one data object based on a data source; and send a description to a processing system in response to determining that a type of the at least one data object matches a predetermined task.
[0070] According to some implementations of the present disclosure, the sending module is further configured to: in response to determining that the type of the at least one data object does not match the predetermined task, provide a notification in the application to instruct the user to re-specify the at least one data object.
[0071] According to some implementations of the present disclosure, the tool presentation module 830 is further configured to: obtain the type of the data object accessed in the application; and present a visual representation in the application in response to determining that the type of the data object matches the predetermined task.
[0072] According to some implementations of the present disclosure, the creation page further includes: a fourth area for specifying presentation properties of the visual representation, the presentation properties including at least any one of the following: mode, position, and state of the visual representation; and the tool presentation module is further configured to: present the visual representation according to the presentation properties.
[0073] According to some implementations of the present disclosure, the application is a web application, and the method is implemented using a plug-in of a browser for accessing the web application.
[0074] According to some implementations of the present disclosure, the apparatus 800 further includes: adding a tool to the plug-in in response to receiving an add request.
[0075] According to some implementations of the present disclosure, the plug-in includes multiple tools, and the tool presentation module is further configured to: determine a set of tools matching the type of another web application accessed using a browser from the multiple tools; and present the set of tools in the other web application.
[0076] Fig. 9 9 is a block diagram of a device 900 capable of implementing multiple implementations of the present disclosure. It should be understood that Fig. 9 The computing device 900 shown is merely exemplary and should not constitute any limitation on the functionality and scope of the implementations described herein. Fig. 9 The computing device 900 shown may be used to implement the methods described above.
[0077] like Fig. 9 As shown, computing device 900 is in the form of a general-purpose computing device. Components of computing device 900 may include, but are not limited to, one or more processors or processing units 910, memory 920, storage device 930, one or more communication units 940, one or more input devices 950, and one or more output devices 960. Processing unit 910 may be an actual or virtual processor and is capable of performing various processes according to a program stored in memory 920. In a multi-processor system, multiple processing units execute computer executable instructions in parallel to improve the parallel processing capabilities of computing device 900.
[0078] The computing device 900 typically includes a plurality of computer storage media. Such media may be any available media accessible to the computing device 900, including but not limited to volatile and non-volatile media, removable and non-removable media. The memory 920 may be a volatile memory (e.g., a register, a cache, a random access memory (RAM)), a non-volatile memory (e.g., a read-only memory (ROM), an electrically erasable programmable read-only memory (EEPROM), flash memory), or some combination thereof. The storage device 930 may be a removable or non-removable medium, and may include a machine-readable medium, such as a flash drive, a disk, or any other medium, which may be capable of being used to store information and / or data (e.g., training data for training) and may be accessed within the computing device 900.
[0079] The computing device 900 may further include additional removable / non-removable, volatile / non-volatile storage media. Fig. 9 As shown in , a disk drive for reading or writing from a removable, non-volatile disk (e.g., a "floppy disk") and an optical drive for reading or writing from a removable, non-volatile optical disk may be provided. In these cases, each drive may be connected to the bus (not shown) by one or more data media interfaces. Memory 920 may include a computer program product 925 having one or more program modules that are configured to perform various methods or actions of various implementations of the present disclosure.
[0080] The communication unit 940 enables communication with other computing devices via a communication medium. Additionally, the functions of the components of the computing device 900 can be implemented in a single computing cluster or multiple computing machines that can communicate via a communication connection. Therefore, the computing device 900 can operate in a networked environment using a logical connection with one or more other servers, a network personal computer (PC), or another network node.
[0081] Input device 950 may be one or more input devices, such as a mouse, keyboard, tracking ball, etc. Output device 960 may be one or more output devices, such as a display, a speaker, a printer, etc. Computing device 900 may also communicate with one or more external devices (not shown) through communication unit 940 as needed, such as storage devices, display devices, etc., communicate with one or more devices that allow a user to interact with computing device 900, or communicate with any device that allows computing device 900 to communicate with one or more other computing devices (e.g., a network card, a modem, etc.). Such communication may be performed via an input / output (I / O) interface (not shown).
[0082] According to an exemplary implementation of the present disclosure, a computer-readable storage medium is provided, on which computer-executable instructions are stored, wherein the computer-executable instructions are executed by a processor to implement the method described above. According to an exemplary implementation of the present disclosure, a computer program product is also provided, the computer program product is tangibly stored on a non-transitory computer-readable medium and includes computer-executable instructions, and the computer-executable instructions are executed by a processor to implement the method described above. According to an exemplary implementation of the present disclosure, a computer program product is provided, on which a computer program is stored, and when the program is executed by a processor, the method described above is implemented.
[0083] Various aspects of the present disclosure are described herein with reference to the flowcharts and / or block diagrams of the methods, devices, equipment, and computer program products implemented according to the present disclosure. It should be understood that each box in the flowchart and / or block diagram and the combination of each box in the flowchart and / or block diagram can be implemented by computer-readable program instructions.
[0084] These computer-readable program instructions can be provided to a processing unit of a general-purpose computer, a special-purpose computer, or other programmable data processing device, thereby producing a machine, so that when these instructions are executed by the processing unit of the computer or other programmable data processing device, a device that implements the functions / actions specified in one or more boxes in the flowchart and / or block diagram is generated. These computer-readable program instructions can also be stored in a computer-readable storage medium, and these instructions cause the computer, programmable data processing device, and / or other equipment to work in a specific manner, so that the computer-readable medium storing the instructions includes a manufactured product, which includes instructions for implementing various aspects of the functions / actions specified in one or more boxes in the flowchart and / or block diagram.
[0085] Computer-readable program instructions can be loaded onto a computer, other programmable data processing apparatus, or other device so that a series of operational steps are performed on the computer, other programmable data processing apparatus, or other device to produce a computer-implemented process, so that the instructions executed on the computer, other programmable data processing apparatus, or other device implement the functions / actions specified in one or more boxes in the flowchart and / or block diagram.
[0086] The flow chart and block diagram in the accompanying drawings show the possible architecture, function and operation of the system, method and computer program product according to multiple implementations of the present disclosure. In this regard, each square box in the flow chart or block diagram can represent a part of a module, program segment or instruction, and a part of a module, program segment or instruction includes one or more executable instructions for realizing the logical function of the specification. In some implementations as replacements, the function marked in the square box can also occur in a sequence different from that marked in the accompanying drawings. For example, two continuous square boxes can actually be executed substantially in parallel, and they can sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each square box in the block diagram and / or flow chart, and the combination of the square boxes in the block diagram and / or flow chart can be realized by a special hardware-based system that performs the function or action of the specification, or can be realized by a combination of special hardware and computer instructions.
[0087] The above descriptions of various implementations of the present disclosure are exemplary, non-exhaustive, and not limited to the disclosed implementations. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the described implementations. The selection of terms used herein is intended to best explain the principles of the implementations, practical applications, or improvements to the technology in the market, or to enable other persons of ordinary skill in the art to understand the various implementations disclosed herein.
Claims
1. A method for managing a tool in an application, comprising: In response to receiving a creation request for creating a tool in the application, presenting a creation page, the tool being used to perform a predetermined task, and the creation page comprising: A first area is used to specify a description of the predetermined task expressed in a natural language; and a second area for specifying a visual representation corresponding to the tool; In response to receiving an interaction request for the create page, creating the tool based on the description and the visual representation of the predetermined task specified by the interaction request; and The visual representation corresponding to the tool is presented in the application.
2. The method according to claim 1, further comprising: In response to receiving a call request for the visual representation, sending the description to a processing system to perform the predetermined task; as well as Based on the response to the description from the processing system, a processing result for the call request is provided.
3. The method according to claim 2, wherein the creating page further comprises: The third area is used to specify a data source of at least one data object to be processed by the predetermined task, wherein the data source includes at least any one of the following: data accessed in the application, data selected in the application, and data submitted to the application.
4. The method of claim 3, wherein sending the description to the processing system comprises: obtaining the at least one data object based on the data source; as well as In response to determining that the type of the at least one data object matches the predetermined task, the description is sent to the processing system.
5. The method according to claim 4, further comprising: In response to determining that the type of the at least one data object does not match the predetermined task, a notification is provided in the application to instruct the user to re-specify the at least one data object.
6. The method of claim 1 , wherein presenting the visual representation in the application comprises: Obtaining the type of data object accessed in the application; as well as In response to determining that the type of the data object matches the predetermined task, presenting the visual representation in the application.
7. The method according to claim 1, wherein the creating a page further comprises: a fourth area for specifying presentation attributes of the visual representation, the presentation attributes including at least any one of the following: a mode, a position, and a state of the visual representation; as well as Wherein presenting the visual representation in the application comprises: presenting the visual representation according to the presentation attribute.
8. The method of claim 1, wherein the application is a web application, and the method is implemented using a plug-in for a browser for accessing the web application.
9. The method according to claim 8, further comprising: In response to receiving the add request, the tool is added to the plug-in.
10. The method of claim 9, wherein the plug-in comprises a plurality of tools, and the method further comprises: For another webpage application accessed by using the browser, determining a group of tools matching the type of the another webpage application from the plurality of tools; as well as The set of tools is presented in the other web application.
11. An apparatus for managing a tool in an application, comprising: A page presentation module is configured to present a creation page in response to receiving a creation request for creating a tool in the application, wherein the tool is used to perform a predetermined task, and the creation page includes: A first area is used to specify a description of the predetermined task expressed in a natural language; and a second area for specifying a visual representation corresponding to the tool; a creation module configured to, in response to receiving an interaction request for the creation page, create the tool based on the description and the visual representation of the predetermined task specified by the interaction request; and A tool presentation module is configured to present the visual representation corresponding to the tool in the application.
12. An electronic device comprising: at least one processing unit; as well as At least one memory, the at least one memory being coupled to the at least one processing unit and storing instructions for execution by the at least one processing unit, the instructions causing the electronic device to perform the method according to any one of claims 1 to 10 when executed by the at least one processing unit.
13. A computer-readable storage medium having a computer program stored thereon, wherein when the computer program is executed by a processor, the processor is caused to implement the method according to any one of claims 1 to 10.
14. A computer program product comprising a computer program, wherein the computer program implements the method according to any one of claims 1 to 10 when executed by a processor.
