A plug-in calling method, device, equipment and medium

CN122308942APending Publication Date: 2026-06-30INSPUR SUZHOU INTELLIGENT TECH CO LTD

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
INSPUR SUZHOU INTELLIGENT TECH CO LTD
Filing Date
2024-12-27
Publication Date
2026-06-30

AI Technical Summary

Technical Problem

The current language model plugins have limited extensibility and cannot be applied to all language models, resulting in high costs for building and maintaining the plugin ecosystem.

Method used

A plugin invocation method is provided, which selects the target plugin through a plugin management component pre-deployed in the server, configures and invokes the plugin to handle language processing request and response data. The plugin does not participate in the language model inference process and is applicable to all language models.

Benefits of technology

It achieves flexibility and easy extensibility of the plug-in system, is applicable to all language models, reduces development and maintenance costs, and improves user experience.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122308942A_ABST
    Figure CN122308942A_ABST
Patent Text Reader

Abstract

This invention discloses a plugin invocation method, apparatus, device, and medium, relating to the field of artificial intelligence technology. Specifically, the solution modularizes the plugin system's functions. When a language processing request is received, a target plugin is selected from multiple plugins based on the request, and the target plugin is configured through a pre-deployed plugin management component on the server. The selected and configured target plugin only processes the language processing request before language model inference and / or processes the response data after language model inference. The plugin itself does not participate in the language model inference process, thus exhibiting strong flexibility, ease of expansion and maintenance, applicability to all language models, and improved user experience.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of artificial intelligence technology, and in particular to a plug-in invocation method, apparatus, device, and medium. Background Technology

[0002] The development of language model plugins has injected significant scalability and flexibility into artificial intelligence technology, enabling developers to easily add or remove functional modules as needed without retraining the entire model, thereby improving model adaptability in different application scenarios. Plugins also promote resource reuse, allowing different models to share specific functionalities, such as text generation and speech recognition, reducing development and maintenance costs and accelerating feature updates.

[0003] However, the scalability of current language model plugins is limited, and they are only applicable to certain specific language models and are not universal. Therefore, building and maintaining a healthy plugin ecosystem requires a lot of investment, especially when supporting multiple models, the cost will increase significantly, increasing the development cost for developers.

[0004] Given the above, how to address the limitations of current language model plugins in terms of extensibility, which prevent them from being used with all language models, is a problem that urgently needs to be solved by technical personnel in this field. Summary of the Invention

[0005] The purpose of this invention is to provide a plugin invocation method, apparatus, device, and medium to solve the problem that the extensibility of current language model plugins is limited and cannot be invoked for all language models.

[0006] To solve the above technical problems, the present invention provides a plugin invocation method, comprising:

[0007] When a language processing request is received, the target plugin is selected from multiple plugins based on the language processing request;

[0008] The configuration of the target plugin is performed through a plugin management component pre-deployed in the server;

[0009] The target plugin is invoked to process the language processing request, and the processed language processing request is input into the language model to output response data, or the language processing request is directly input into the language model to output response data.

[0010] The target plugin is invoked to process the response data, and the processed response data is used as the final result, or the response data is used directly as the final result.

[0011] On the one hand, the target plugin is selected from multiple plugins based on the language processing request, including:

[0012] Get the plugin list; the plugin list contains multiple plugins;

[0013] Select the first target plugin and / or the second target plugin from the plugin list based on the language processing request;

[0014] The first target plugin is used to handle language processing requests, and the second target plugin is used to handle response data.

[0015] On the other hand, obtain the list of plugins, including:

[0016] Send a request to the plugin management component on the server to retrieve the plugin list via the web interface;

[0017] The plugin management component receives the plugin list requested from the plugin list and returns the plugin list, as well as the status of each plugin in the plugin list;

[0018] The plugin list and the status of each plugin in the list are displayed on a web page.

[0019] On the other hand, configuration of the target plugin is performed through a plugin management component pre-deployed in the server, including:

[0020] Send a request to the plugin management component on the server to obtain the target plugin parameters via the web interface;

[0021] The target plugin parameters are determined by the plugin management component, and the corresponding target plugin parameters are obtained from the request.

[0022] The plugin management component is used to determine whether the target plugin parameters corresponding to the target plugin parameter retrieval request are in the database.

[0023] If the target plugin parameters are confirmed to be in the database, then the target plugin parameters are retrieved from the database through the plugin management component.

[0024] Receive target plugin parameters sent by the plugin management component;

[0025] Display the target plugin parameters via a web page;

[0026] Configure the target plugin according to its parameters and activate it.

[0027] If it is confirmed that the target plugin parameters are not in the database, the default parameters of the target plugin are obtained through the plugin management component;

[0028] Receive default parameters for the target plugin sent by the plugin management component;

[0029] Display the default parameters via a web page;

[0030] Configure the target plugin using the default parameters and activate the target plugin.

[0031] On the other hand, after activating the target plugin, it also includes:

[0032] Send a request to modify the parameters of the target plugin to the plugin management component on the server via the web interface;

[0033] Modify the target plugin parameters based on the plugin management component and the target plugin parameter modification request;

[0034] The modified target plugin parameters are stored in the database and displayed on a web page.

[0035] On the other hand, it also includes:

[0036] Determine the plugin information for the newly added plugin; the plugin information should include at least the plugin icon, plugin name, plugin address, plugin description, plugin execution order, authorization method, and plugin public information;

[0037] Debug the newly added plugin based on the plugin information;

[0038] Determine if the newly added plugin has been successfully debugged;

[0039] If so, create the new plugin based on the plugin information;

[0040] Add the new plugin to the plugin list;

[0041] If not, the creation of the new plugin will be terminated.

[0042] On the other hand, it also includes:

[0043] Determine whether the target plugin meets the language processing request requirements based on the response data;

[0044] If so, then disable the target plugin's function switch and end the inference process;

[0045] If not, output a message indicating that the target plugin is not applicable, and return to the step of selecting the target plugin based on the language processing request.

[0046] To address the aforementioned technical problems, the present invention also provides a plug-in invocation device, comprising:

[0047] The selection module is used to select a target plugin from multiple plugins based on a language processing request when a language processing request is received.

[0048] The configuration module is used to perform configuration of the target plugin through a plugin management component pre-deployed in the server;

[0049] The first processing module is used to call the target plugin to process the language processing request, and input the processed language processing request into the language model to output response data, or directly input the language processing request into the language model to output response data.

[0050] The second processing module is used to call the target plugin to process the response data, so as to use the processed response data as the final result, or directly use the response data as the final result.

[0051] To address the aforementioned technical problems, the present invention also provides a plug-in calling device, comprising:

[0052] Memory, used to store computer programs;

[0053] The processor is used to implement the above-described plug-in invocation method steps when executing computer programs.

[0054] To address the aforementioned technical problems, the present invention also provides a computer-readable storage medium storing a computer program, which, when executed by a processor, implements the steps of the aforementioned plug-in invocation method.

[0055] The plugin invocation method provided by this invention, upon receiving a language processing request, selects a target plugin from multiple plugins based on the language processing request; configures the target plugin through a pre-deployed plugin management component on the server; invokes the target plugin to process the language processing request, and inputs the processed language processing request into the language model to output response data, or directly inputs the language processing request into the language model to output response data; invokes the target plugin to process the response data, using the processed response data as the final result, or directly using the response data as the final result.

[0056] The beneficial effects of this invention are that it modularizes the functions of the plug-in system. When a language processing request is received, a target plug-in is selected from multiple plug-ins according to the language processing request, and the configuration of the target plug-in is executed through a plug-in management component pre-deployed in the server. The selected and configured target plug-in only processes the language processing request before language model inference and / or processes the response data after language model inference. The plug-in itself does not participate in the language model inference process, thus it has strong flexibility, is easy to expand and maintain, is applicable to all language models, and improves the user experience.

[0057] On the other hand, the present invention specifically achieves the selection of target plugins by obtaining a plugin list containing multiple plugins; selecting a first target plugin and / or a second target plugin from the plugin list according to a language processing request; wherein the first target plugin is used to process the language processing request, and the second target plugin is used to process the response data. In this embodiment, a plugin list retrieval request is sent from a web page to the plugin management component of the server; the plugin management component receives the plugin list queried and returned according to the plugin list retrieval request, as well as the status of each plugin in the plugin list; and the plugin list and the status of each plugin in the plugin list are displayed on the web page, enabling users to more intuitively obtain the plugin list and select a suitable target plugin.

[0058] In addition, the present invention also provides a plug-in calling device, equipment and medium, with the same effect as above. Attached Figure Description

[0059] To more clearly illustrate the embodiments of the present invention, the accompanying drawings used in the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0060] Figure 1 A flowchart of a plugin invocation method provided in an embodiment of the present invention;

[0061] Figure 2 A flowchart of the language model reasoning process provided in this embodiment of the invention;

[0062] Figure 3 A schematic diagram of a plug-in calling device provided in an embodiment of the present invention;

[0063] Figure 4 This is a schematic diagram of a plug-in calling device provided in an embodiment of the present invention. Detailed Implementation

[0064] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those of ordinary skill in the art without creative effort are within the protection scope of the present invention.

[0065] The core of this invention is to provide a plugin invocation method, apparatus, device, and medium to solve the problem that the extensibility of current language model plugins is limited and cannot be invoked for all language models.

[0066] To enable those skilled in the art to better understand the present invention, the present invention will be further described in detail below with reference to the accompanying drawings and specific embodiments.

[0067] Currently, while plugins enhance the functionality and applicability of language models, they also present some significant drawbacks and challenges. Specifically, current plugins have poor extensibility, being applicable only to specific language models and not universally applicable to all language models. Establishing and maintaining a healthy plugin ecosystem requires substantial investment, including plugin development, review, updates, and user feedback collection. Especially when supporting multiple large models, the development and maintenance costs of plugins increase exponentially, necessitating developers and platforms to provide sufficient resources and technical support for the plugin ecosystem. Therefore, to address these issues, this invention provides a plugin invocation method.

[0068] Figure 1 This is a flowchart illustrating a plugin invocation method provided in an embodiment of the present invention. Figure 1 As shown, the method includes:

[0069] S10: When a language processing request is received, select the target plugin from multiple plugins according to the language processing request.

[0070] Specifically, upon receiving a language processing request, a target plugin is selected from multiple plugins based on the request. It is understood that a language processing request is a dialogue request for the language model to perform the inference process; this embodiment does not limit the specific content of the language processing request, such as automated question answering, personalized recommendation, information filtering, assisted writing, image editing, etc., depending on the specific implementation. Meanwhile, the system pre-configures multiple plugins, each with different functions. This embodiment does not limit the specific functions of each plugin, such as sensitive word detection, webpage retrieval, etc.

[0071] It should be noted that the selection of the target plugin from multiple plugins is made by the user according to the requirements of the processing language request. In this embodiment, there are no restrictions on the specific functions of the target plugin, nor on the method of obtaining the target plugin, which depends on the specific implementation situation.

[0072] S11: Configure the target plugin using a plugin management component pre-deployed on the server.

[0073] To ensure the selected target plugin functions correctly, its configuration is further performed through a pre-deployed plugin management component on the server. It should be noted that the plugin management component is a specific component of the server's backend service, dedicated to handling plugin configuration requests from the frontend and configuring the plugin's runtime parameters. This embodiment does not impose restrictions on the specific configuration process of the target plugin; it depends on the specific implementation.

[0074] S12: Call the target plugin to process the language processing request, and input the processed language processing request into the language model to output response data, or directly input the language processing request into the language model to output response data.

[0075] S13: Call the target plugin to process the response data, so as to use the processed response data as the final result, or directly use the response data as the final result.

[0076] Furthermore, the target plugin is invoked to process the language processing request, and the processed language processing request is input into the language model to output response data, or the language processing request is directly input into the language model to output response data. The target plugin is invoked to process the response data, and the processed response data is used as the final result, or the response data is used directly as the final result.

[0077] In other words, in this embodiment, the target plugin is used to process the language processing request before the language model's inference task, and can also process the response data after the language model's inference task to obtain the final result. Therefore, the target plugin does not participate in the language model's inference process, offering strong flexibility, ease of expansion and maintenance, and applicability to all language models.

[0078] It should be noted that this embodiment does not limit the specific process by which the target plugin processes the language processing request, and / or the specific process by which the target plugin processes the response data. It depends on the specific function of the target plugin and the specific content of the language processing request, and is determined according to the specific implementation situation.

[0079] In this embodiment, the plugin system is modularized. When a language processing request is received, a target plugin is selected from multiple plugins according to the request, and the plugin management component pre-deployed on the server is used to configure the target plugin. The selected and configured target plugin only processes the language processing request before language model inference and / or processes the response data after language model inference. The plugin itself does not participate in the language model inference process, thus it has strong flexibility, is easy to extend and maintain, is applicable to all language models, and improves the user experience.

[0080] To better preserve multiple plugins and facilitate the selection of a target plugin, based on the above embodiments, in some embodiments, a target plugin is selected from multiple plugins according to a language processing request, including:

[0081] S101: Get the plugin list; where the plugin list contains multiple plugins;

[0082] S102: Select a first target plugin and / or a second target plugin from the plugin list according to the language processing request; wherein the first target plugin is used to process the language processing request and the second target plugin is used to process the response data.

[0083] Specifically, the system first retrieves the plugin list. It's important to note that in the plugin interface, the system first obtains a list of available plugins, allowing users to see all configurable and activated plugins in the current system, making it easier for them to select the plugins they want to use.

[0084] Furthermore, users can select a first target plugin and / or a second target plugin from the plugin list based on the actual processing needs of the language processing request. The first target plugin is used to process the language processing request, and the second target plugin is used to process the response data. For example, when the language processing request represents a writing assistance request, including writing reference data, a suitable first target plugin can be selected to help the user organize their creative ideas and reference materials.

[0085] In this embodiment, a plugin list is obtained, which contains multiple plugins; a first target plugin and / or a second target plugin are selected from the plugin list according to the language processing request; wherein the first target plugin is used to process the language processing request and the second target plugin is used to process the response data, thus realizing the selection of the target plugin.

[0086] To obtain the plugin list, based on the above embodiments, in some embodiments, obtaining the plugin list includes:

[0087] S103: Send a plugin list retrieval request to the plugin management component on the server via the web interface;

[0088] S104: Receive the plugin list requested and returned by the plugin management component based on the plugin list, as well as the status of each plugin in the plugin list;

[0089] S105: Display the plugin list and the status of each plugin in the plugin list via a web page.

[0090] Specifically, users can first send a plugin list retrieval request to the server's plugin management component via a web browser. The purpose of this request is to obtain all information about the plugins. Upon receiving the request, the server forwards it to the backend service's plugin management component. The plugin management component then uses the request to determine the plugin list to be returned, as well as the status of each plugin in the list. Plugin status includes both available and unavailable states.

[0091] Furthermore, the plugin management component receives and queries the plugin list based on the plugin list, along with the status of each plugin in the list. Finally, the plugin list and the status of each plugin in the list are displayed on a webpage, allowing users to access the plugin list and select the appropriate target plugin based on the status of each plugin.

[0092] In this embodiment, a plugin list retrieval request is sent to the plugin management component on the server via a web page; the plugin management component queries and returns the plugin list based on the plugin list retrieval request, as well as the status of each plugin in the plugin list; the plugin list and the status of each plugin in the plugin list are displayed on the web page, enabling users to obtain the plugin list more intuitively and select the appropriate target plugin.

[0093] To meet users' needs for using the target plugin, based on the above embodiments, in some embodiments, the configuration of the target plugin is performed through a plugin management component pre-deployed in the server, including:

[0094] S111: Send a request to the plugin management component on the server via the web interface to obtain the target plugin parameters;

[0095] S112: Determine the target plugin parameters through the plugin management component and obtain the target plugin parameters corresponding to the request;

[0096] S113: Determine whether the target plugin parameters corresponding to the target plugin parameter retrieval request are in the database through the plugin management component; if yes, proceed to step S114; if no, proceed to step S118.

[0097] S114: Query and retrieve target plugin parameters from the database through the plugin management component;

[0098] S115: Receive target plugin parameters sent by the plugin management component;

[0099] S116: Display the target plugin parameters via a web page;

[0100] S117: Configure the target plugin according to the target plugin parameters and activate the target plugin;

[0101] S118: Obtain the default parameters of the target plugin through the plugin management component;

[0102] S119: Receive the default parameters of the target plugin sent by the plugin management component;

[0103] S120: Display the default parameters via a web page;

[0104] S121: Configure the target plugin according to the default parameters and activate the target plugin.

[0105] To meet users' needs for using the target plugin, it is necessary to configure the target plugin before model inference. Specifically, a target plugin parameter retrieval request is sent from the web interface to the plugin management component on the server. The purpose of this request is to obtain the plugin parameters of the target plugin in order to configure it.

[0106] Furthermore, the server forwards the target plugin parameter retrieval request to the plugin management component. The plugin management component determines the target plugin parameters corresponding to the request and checks if these parameters are present in the database. It's understandable that some plugin parameters are pre-set and stored in the database for timely retrieval when the plugin is used.

[0107] If the target plugin parameters are confirmed to exist in the database, the plugin management component queries and retrieves them, then sends these parameters to the web interface via the server. The user receives and displays these parameters on the web interface, providing a more intuitive understanding. The target plugin is then configured and activated based on these parameters, enabling direct invocation in subsequent conversations. This ensures the plugin is fully configured and activated before use, preventing unconfigured or inactive plugins from negatively impacting the user experience.

[0108] If the target plugin parameters are confirmed not to be in the database, the default parameters of the target plugin are retrieved through the plugin management component and sent to the web interface via the server. The user receives the default parameters of the target plugin sent by the plugin management component through the web interface and displays them, thus obtaining the default parameters more intuitively. The target plugin is then configured and activated based on the default parameters, allowing for direct invocation of the plugin in subsequent conversations.

[0109] This enables the configuration and activation of the target plugin, ensuring that the plugin has settings that meet usage requirements so that it can work properly after activation.

[0110] To meet specific needs during the model dialogue process, the plugin can be reconfigured during runtime. This configuration primarily involves parameter adjustments, which depend on the dialogue context and user requirements. Therefore, based on the above embodiments, in some embodiments, after activating the target plugin, the method further includes:

[0111] S122: Send a request to modify the parameters of the target plugin to the plugin management component on the server via the web interface;

[0112] S123: Modify the target plugin parameters according to the plugin management component and the target plugin parameter modification request;

[0113] S124: Store the modified target plugin parameters in the database and display the modified target plugin parameters through the web page.

[0114] Specifically, when a user needs to modify the parameters of a target plugin, they send a parameter modification request to the plugin management component on the server via the web interface. The purpose of this request is to modify the parameters of the target plugin. After receiving the parameter modification request, the server forwards the request to the plugin management component in the backend service, which then modifies the target plugin parameters according to the request.

[0115] Furthermore, the plugin management component passes the modified target plugin parameters through and stores them in the database. At this point, the plugin management component stores a copy of the modified target plugin parameters and displays the modified target plugin parameters through the web interface so that users can know the result of the parameter modification.

[0116] In practice, users can also create custom plugins to meet their different business needs. Therefore, in some embodiments, the method further includes:

[0117] S14: Determine the plugin information for the newly added plugin; the plugin information shall include at least the plugin icon, plugin name, plugin address, plugin description, plugin execution order, authorization method, and plugin public information;

[0118] S15: Debug the newly added plugin based on the plugin information;

[0119] S16: Determine if the newly added plugin has been successfully debugged; if yes, proceed to step S17; otherwise, terminate the creation of the new plugin.

[0120] S17: Create a new plugin based on plugin information;

[0121] S18: Add the new plugin to the plugin list.

[0122] Specifically, custom plugins can be added through the plugin addition option in the plugin interface of the system operation interface. At a minimum, you need to specify the plugin icon, plugin name, plugin address, plugin description, plugin execution order, authorization method, and public information for the new plugin.

[0123] It's important to note that plugin address requests support both GET and POST request methods. When the plugin address uses Hypertext Transfer Protocol Secure (HTTPS), uploading the plugin certificate is supported. It's important to understand that the uploaded plugin certificate is a server-side certificate, used only for encrypted transmission. Plugin execution order includes two methods: pre-processing and post-processing. Pre-processing executes the plugin before model inference, while post-processing executes it after model inference. The execution order cannot be changed after plugin creation. Authorization options include no authorization and service authorization. When choosing service authorization, you need to fill in the Application Programming Interface Key (API Key) parameter name and value, which will be transmitted in the request headers. Plugin public information includes both public and private options. Public indicates that anyone can use the plugin, while private indicates that it is available to a specified user.

[0124] Furthermore, the newly added plugin is debugged based on its information. Specifically, the plugin information is entered into the input box in the plugin debugging interface, and then debugging is executed. To determine if the plugin debugging was successful, other plugins are invoked to interact with the new plugin, thereby checking its usability and functionality. If the plugin debugging is confirmed to be successful, it is created based on the plugin information and added to the plugin list for user access. If the plugin debugging fails, the creation process is terminated, and the user can choose to re-add the plugin or modify its configuration. This achieves the implementation of a custom plugin.

[0125] Based on the above embodiments, in some embodiments, the method further includes:

[0126] S19: Determine whether the target plugin meets the processing requirements of the language processing request based on the response data; if yes, proceed to step S20; if no, proceed to step S21.

[0127] S20: Turn off the function switch of the target plugin and end the inference process;

[0128] S21: Output a message indicating that the target plugin is not applicable;

[0129] S22: Select a new plugin as the target plugin and return to step S10.

[0130] Specifically, to better handle user language processing requests, after receiving the response data, it can be used to determine whether the target plugin meets the processing requirements of the language processing request. This embodiment does not limit the specific method for determining whether the target plugin meets the processing requirements of the language processing request. For example, it can directly evaluate whether the target plugin meets the processing requirements of the language processing request by checking the accuracy, completeness, and relevance of the response results. Accuracy requires that the response results are consistent with the expected results or within an acceptable error range, ensuring that the language processing request processed by the target plugin can guide the large language model to generate correct output. Completeness focuses on whether the response results contain all necessary information and do not omit key content, which is crucial for providing a comprehensive answer or solution. Relevance determines whether the response results are relevant to the language processing request and whether they accurately answer the user's question or meet the user's needs; this is an important criterion for measuring the processing effectiveness of the target plugin.

[0131] On the other hand, evaluation based on auxiliary models can also be conducted, specifically using additional small models or comparative experiments to verify the effectiveness of the target plugin. One approach is to use pre-trained small models to validate the response results. These models can be trained based on specific tasks or domains to provide professional evaluations of the response results. Another approach is to conduct comparative experiments, inputting language processing requests processed by the target plugin and unprocessed language processing requests into a large language model respectively, and comparing the response results. By comparing, it is possible to intuitively assess whether the target plugin has a positive impact on the processing of language processing requests, such as whether it has improved the accuracy, relevance, or completeness of the response results. This method can help developers more accurately identify the strengths and weaknesses of the target plugin, thereby enabling targeted optimization and improvement.

[0132] If the processing requirements of the language processing request are confirmed to be met, the target plugin is considered to have completed the request processing task, the target plugin's function switch is turned off, and the inference process ends. If the processing requirements of the language processing request are confirmed to be unmet, the target plugin is considered to have failed to complete the request processing task, and a new target plugin needs to be selected based on the language processing request to process the request again, thereby ensuring the accuracy of the inference result.

[0133] Figure 2 A flowchart illustrating the language model reasoning process provided in an embodiment of the present invention. Figure 2 As shown, the reasoning process in this scheme is divided into three main stages: preprocessing, reasoning, and postprocessing. To enable those skilled in the art to better understand this scheme, each stage is described in detail below:

[0134] (a) Pre-processing stage;

[0135] Request V1: The user initiates request V1, which includes initial data, context information, and specific plugin parameters. Context information is crucial data used to assist processing and reasoning; it persists throughout the process and is used multiple times, specifically including user history data, session state, etc.

[0136] Plugin A: Request V1 is passed to plugin A for initial processing. Plugin A processes the data using preset plugin A parameters. These parameters are specific parameters obtained from the plugin management component. After processing, plugin A generates a new request V2.

[0137] Request V2: New request data generated after processing by plugin A.

[0138] Plugin B: Request V2 is passed to Plugin B for further processing. Plugin B processes the data using preset Plugin B parameters. These parameters are specific parameters obtained from the plugin management component. The context information from the previous level's processing is also passed to Plugin B to obtain relevant information. After Plugin B completes its processing, it generates Request V3.

[0139] (ii) Reasoning stage;

[0140] Request V3: Request V3 contains the data and context information processed by the first two plugins. Next, prepare for inference. This step requires ensuring that all necessary data and context information are ready to proceed to the core inference stage.

[0141] Reasoning: The reasoning engine uses data and contextual information from Request V3 to perform complex calculations or model reasoning. This process involves invoking large language models, executing rule engines, or other forms of intelligent reasoning.

[0142] Generate preliminary response: After the inference is completed, generate preliminary inference response data V1.

[0143] (iii) Post-processing stage;

[0144] Response data V1: Preliminary results generated during the inference phase, containing data that may not have been fully processed.

[0145] Plugin C: Response data V1 is passed to plugin C for post-processing. Plugin C processes the data using preset plugin C parameters. These parameters are specific parameters obtained from the plugin management component. The context information from the previous level's processing is also passed to plugin C to obtain relevant information. After processing, plugin C generates updated response data V2.

[0146] Response data V2: Response data after processing by plugin C.

[0147] Plugin D: Response data V2 is passed to Plugin D for final processing. Plugin D performs final data adjustments and optimizations to ensure the integrity and accuracy of the response data. Plugin D uses preset Plugin D parameters for data processing. These parameters are specific parameters obtained from the plugin management component. Context information from the previous level is also passed to Plugin D to obtain relevant information. After processing, Plugin D generates the final response data V3.

[0148] Response Data V3: The final response data is the result after all processing steps. It is returned to the user through a web interface or API, completing the entire request processing process.

[0149] In summary, the entire inference process begins with a user request and progresses through a series of preprocessing, core inference, and post-processing steps to generate the final response. Each processing step utilizes specific plugins (such as plugins A, B, C, and D) to perform specific processing functions, ensuring the accuracy and validity of the final response. Plugin management plays a crucial role throughout the process, ensuring data consistency and processing continuity. This phased processing flow effectively organizes and manages complex data processing tasks, improving system flexibility and response speed.

[0150] In the above embodiments, the plugin invocation method has been described in detail. The present invention also provides embodiments corresponding to the plugin invocation device.

[0151] Figure 3 This is a schematic diagram of a plug-in calling device provided in an embodiment of the present invention. Figure 3 As shown, the device includes:

[0152] Module 10 is used to select a target plugin from multiple plugins when a language processing request is received.

[0153] Configuration module 11 is used to perform configuration of the target plugin through a plugin management component pre-deployed in the server;

[0154] The first processing module 12 is used to call the target plugin to process the language processing request, and input the processed language processing request into the language model to output response data, or directly input the language processing request into the language model to output response data.

[0155] The second processing module 13 is used to call the target plugin to process the response data, so as to use the processed response data as the final result, or directly use the response data as the final result.

[0156] In some embodiments, selecting module 10 includes:

[0157] The first submodule is used to retrieve the list of plugins; the list contains multiple plugins.

[0158] The first selection submodule is used to select a first target plugin and / or a second target plugin from the plugin list according to the language processing request;

[0159] The first target plugin is used to handle language processing requests, and the second target plugin is used to handle response data.

[0160] In some embodiments, the first acquisition submodule includes:

[0161] The first sending submodule is used to send a plugin list retrieval request to the plugin management component on the server via the web interface;

[0162] The first receiving submodule is used to receive the plugin list obtained by the plugin management component based on the plugin list and the status of each plugin in the plugin list.

[0163] The first display submodule is used to display the plugin list and the status of each plugin in the plugin list via a web page.

[0164] In some embodiments, the configuration module 11 includes:

[0165] The second sending submodule is used to send a request to obtain the target plugin parameters to the plugin management component on the server via the web interface;

[0166] The first determination submodule is used to determine the target plugin parameters and obtain the target plugin parameters corresponding to the request through the plugin management component.

[0167] The first judgment submodule is used to determine whether the target plugin parameters corresponding to the target plugin parameter retrieval request are in the database through the plugin management component; if it is confirmed that the target plugin parameters are in the database, the second retrieval submodule is triggered; if it is confirmed that the target plugin parameters are not in the database, the third retrieval submodule is triggered.

[0168] The second acquisition submodule is used to query and obtain the target plugin parameters from the database through the plugin management component;

[0169] The second receiving submodule is used to receive target plugin parameters sent by the plugin management component;

[0170] The second display submodule is used to display the target plugin parameters via a web page.

[0171] The first configuration activation submodule is used to configure the target plugin according to the target plugin parameters and activate the target plugin;

[0172] The third submodule is used to obtain the default parameters of the target plugin through the plugin management component;

[0173] The third receiving submodule is used to receive the default parameters of the target plugin sent by the plugin management component;

[0174] The third display submodule is used to display the default parameters via a web page.

[0175] The second configuration activation submodule is used to configure the target plugin according to the default parameters and activate the target plugin.

[0176] In some embodiments, it also includes:

[0177] The third sending submodule is used to send a request to modify the parameters of the target plugin to the plugin management component on the server via the web interface;

[0178] The modification submodule is used to modify the parameters of the target plugin based on the plugin management component and the parameter modification request of the target plugin;

[0179] The storage submodule is used to store the modified target plugin parameters in the database and display the modified target plugin parameters through a web page.

[0180] In some embodiments, it also includes:

[0181] The second determination submodule is used to determine the plugin information of the newly added plugin; wherein, the plugin information includes at least the plugin icon, plugin name, plugin address, plugin description, plugin execution order, authorization method and plugin public information;

[0182] The first debugging submodule is used to debug newly added plugins based on plugin information;

[0183] The second judgment submodule is used to determine whether the newly added plugin has been successfully debugged; if so, the creation submodule is triggered; otherwise, the creation of the newly added plugin is terminated.

[0184] Create a submodule to create new plugins based on plugin information;

[0185] Add a submodule to add new plugins to the plugin list.

[0186] In some embodiments, it also includes:

[0187] The third judgment submodule is used to determine whether the target plugin meets the processing requirements of the language processing request based on the response data; if yes, the function switch of the target plugin is turned off and the reasoning process ends; if no, a prompt message indicating that the target plugin is not applicable is output, triggering the selection module 10.

[0188] Since the embodiments of the apparatus and the embodiments of the method correspond to each other, please refer to the description of the embodiments of the method for the embodiments of the apparatus, which will not be repeated here.

[0189] In addition, the present invention also provides a computer program product, including a computer program / instruction, which, when executed by a processor, implements the steps of the above-described plug-in invocation method.

[0190] Figure 4 This is a schematic diagram illustrating a plug-in calling device according to an embodiment of the present invention. Figure 4 As shown, the device invoked by the plugin includes:

[0191] Memory 20 is used to store computer programs;

[0192] The processor 21 is used to implement the steps of the plug-in invocation method as described in the above embodiments when executing a computer program.

[0193] The plug-in calling device provided in this embodiment may include, but is not limited to, smartphones, tablets, laptops, or desktop computers.

[0194] The processor 21 may include one or more processing cores, such as a quad-core processor or an octa-core processor. The processor 21 may be implemented using at least one of the following hardware forms: Digital Signal Processor (DSP), Field-Programmable Gate Array (FPGA), or Programmable Logic Array. The processor 21 may also include a main processor and a coprocessor. The main processor, also known as the Central Processing Unit (CPU), is used to process data in the wake-up state; the coprocessor is a low-power processor used to process data in the standby state. In some embodiments, the processor 21 may integrate a Graphics Processing Unit (GPU), which is responsible for rendering and drawing the content to be displayed on the screen. In some embodiments, the processor 21 may also include an Artificial Intelligence (AI) processor, which handles computational operations related to machine learning.

[0195] The memory 20 may include one or more computer-readable storage media, which may be non-transitory. The memory 20 may also include high-speed random access memory and non-volatile memory, such as one or more disk storage devices or flash memory devices. In this embodiment, the memory 20 is used to store at least the following computer program 201, which, after being loaded and executed by the processor 21, is capable of implementing the relevant steps of the plug-in invocation method disclosed in any of the foregoing embodiments. In addition, the resources stored in the memory 20 may also include an operating system 202 and data 203, and the storage method may be temporary or permanent storage. The operating system 202 may include Windows, Unix, Linux, etc. The data 203 may include, but is not limited to, the data involved in the plug-in invocation method.

[0196] In some embodiments, the plug-in calling device may further include a display screen 22, an input / output interface 23, a communication interface 24, a power supply 25, and a communication bus 26.

[0197] Those skilled in the art will understand that Figure 4 The structure shown does not constitute a limitation on the device that the plug-in calls, and may include more or fewer components than illustrated.

[0198] Finally, the present invention also provides an embodiment corresponding to a computer-readable storage medium. The computer-readable storage medium stores a computer program, which, when executed by a processor, performs the steps described in the above method embodiments.

[0199] It is understood that if the methods in the above embodiments are implemented as software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, in essence, or the part that contributes to the prior art, or all or part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and executes all or part of the steps of the methods described in the various embodiments of the present invention. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.

[0200] The foregoing has provided a detailed description of a plug-in invocation method, apparatus, device, and medium provided by the present invention. The various embodiments in the specification are described in a progressive manner, with each embodiment focusing on its differences from other embodiments. Similar or identical parts between embodiments can be referred to interchangeably. For the apparatus disclosed in the embodiments, since it corresponds to the method disclosed in the embodiments, the description is relatively simple; relevant parts can be referred to in the method section. It should be noted that those skilled in the art can make several improvements and modifications to the present invention without departing from the principles of the invention, and these improvements and modifications also fall within the protection scope of the present invention.

[0201] It should also be noted that, in this specification, relational terms such as "first" and "second" are used only to distinguish one entity or operation from another, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Furthermore, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitations, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes said element.

Claims

1. A plugin invocation method, characterized in that, include: When a language processing request is received, a target plugin is selected from multiple plugins according to the language processing request; The configuration of the target plugin is performed through a plugin management component pre-deployed in the server; The target plugin is invoked to process the language processing request, and the processed language processing request is input into the language model to output response data, or the language processing request is directly input into the language model to output response data. The target plugin is invoked to process the response data, and the processed response data is used as the final result, or the response data is directly used as the final result.

2. The plugin invocation method according to claim 1, characterized in that, Selecting a target plugin from multiple plugins based on the language processing request includes: Obtain the plugin list; wherein the plugin list contains multiple plugins; Select a first target plugin and / or a second target plugin from the plugin list according to the language processing request; The first target plugin is used to process the language processing request, and the second target plugin is used to process the response data.

3. The plugin invocation method according to claim 2, characterized in that, Get the list of plugins, including: Send a plugin list retrieval request to the plugin management component on the server via the web interface; Receive the plugin management component's request query and feedback of the plugin list based on the plugin list, as well as the status of each plugin in the plugin list; The plugin list and the status of each plugin in the plugin list are displayed on the web page.

4. The plugin invocation method according to claim 1, characterized in that, Configuring the target plugin using a pre-deployed plugin management component on the server includes: Send a request to the plugin management component on the server to obtain the target plugin parameters via the web interface; The target plugin parameters corresponding to the target plugin parameter retrieval request are determined by the plugin management component. The plugin management component determines whether the target plugin parameters corresponding to the target plugin parameter retrieval request are in the database. If the target plugin parameters are confirmed to be in the database, then the target plugin parameters are queried and retrieved from the database through the plugin management component. Receive the target plugin parameters sent by the plugin management component; The target plugin parameters are displayed on the web page. Configure the target plugin according to the target plugin parameters, and activate the target plugin; If it is confirmed that the target plugin parameters are not in the database, then the default parameters of the target plugin are obtained through the plugin management component; Receive the default parameters of the target plugin sent by the plugin management component; The default parameters are displayed via the web page. Configure the target plugin according to the default parameters and activate the target plugin.

5. The plugin invocation method according to claim 4, characterized in that, After activating the target plugin, the following is also included: Send a request to modify the target plugin parameters to the plugin management component on the server via a web page; Modify the target plugin parameters according to the plugin management component and the target plugin parameter modification request; The modified target plugin parameters are stored in the database and displayed on the web page.

6. The plugin invocation method according to claim 1, characterized in that, Also includes: Determine the plugin information for the newly added plugin; wherein, the plugin information includes at least the plugin icon, plugin name, plugin address, plugin description, plugin execution order, authorization method, and plugin public information; The newly added plugin is debugged based on the plugin information; Determine whether the newly added plugin has been successfully debugged; If so, then create the new plugin based on the plugin information; Add the new plugin to the plugin list; If not, then the creation of the new plugin will be terminated.

7. The plug-in invocation method according to any one of claims 1 to 6, characterized in that, Also includes: Based on the response data, determine whether the target plugin meets the processing requirements of the language processing request; If so, then turn off the function switch of the target plugin and end the reasoning process; If not, output a prompt indicating that the target plugin is not applicable, and return to the step of selecting a target plugin according to the language processing request.

8. A plug-in calling device, characterized in that, include: The selection module is used to select a target plugin from multiple plugins according to the language processing request when a language processing request is received. A configuration module is used to perform configuration of the target plugin through a plugin management component pre-deployed in the server; The first processing module is used to call the target plugin to process the language processing request, and input the processed language processing request into the language model to output response data, or directly input the language processing request into the language model to output response data; The second processing module is used to call the target plugin to process the response data, so as to use the processed response data as the final result, or directly use the response data as the final result.

9. A plug-in calling device, characterized in that, include: Memory, used to store computer programs; A processor, configured to implement the plug-in invocation method as described in any one of claims 1 to 7 when executing the computer program.

10. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program that, when executed by a processor, implements the steps of the plug-in invocation method as described in any one of claims 1 to 7.