Interaction method, device, equipment, medium and program product
By utilizing the operating system's accessibility interface in the integrated development environment to locate the code editing window, display an interactive entry point float, and provide an interactive window, the problem of developers being unable to ask and answer questions within the IDE is solved. This achieves seamless integration of intelligent question-and-answer functionality and improves R&D efficiency.
Patent Information
- Application Number
- CN202511952884.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-12-23
- Publication Date
- 2026-03-17
AI Technical Summary
In an integrated development environment (IDE), developers cannot answer questions within the IDE and must frequently switch between the IDE and external software, resulting in low development efficiency.
By leveraging the operating system's accessibility interface, the code editing window of the code development program is precisely located, and an interactive entry point float is displayed. This enables seamless integration of intelligent Q&A functionality with the IDE, providing an interactive window to receive and output target responses.
It improves the efficiency of Q&A for developers in the integrated development environment, reduces the need to switch external software, and improves the efficiency of financial service application development.
Smart Images

Figure CN121680847A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of artificial intelligence, and more particularly to an interaction method, apparatus, device, medium, and program product. Background Technology
[0002] In some integrated development environments (IDEs), the source editor extension uses a sandbox mechanism, which means it can only manipulate text content and cannot access or modify the IDE's user interface, nor can it embed buttons, sidebars, Q&A windows, etc. within the IDE.
[0003] In existing technologies, when developers need to ask questions about previously developed programs within the aforementioned integrated development environment (IDE), they rely on external web pages or standalone software's Q&A tools. This requires developers to frequently switch between the IDE and these external tools, leading to a disconnect between the IDE and the Q&A platform, thus reducing development efficiency.
[0004] Therefore, improving the efficiency of Q&A in integrated development environments is an urgent problem to be solved. Summary of the Invention
[0005] This application provides an interactive method, apparatus, device, medium, and program product to achieve seamless integration of intelligent question-and-answer functions with an IDE, thereby improving R&D efficiency.
[0006] In a first aspect, embodiments of this application provide an interaction method, including:
[0007] The location of the code editing window in the code development program is determined based on the operating system's accessibility interface; the code development program is used to provide an integrated development environment for developing financial service applications.
[0008] Based on the position of the code editing window, display the interaction entry float;
[0009] In response to a target operation on the interactive entry float, an interactive window is displayed;
[0010] The interactive window receives target prompts and outputs the target response corresponding to the target prompts.
[0011] Secondly, embodiments of this application provide an interactive device, including:
[0012] The module is used to determine the position of the code editing window of the code development program based on the operating system's accessibility interface; the code development program is used to provide an integrated development environment for developing financial service applications;
[0013] The first display module is used to display an interactive entry float based on the position of the code editing window;
[0014] The second display module is used to display an interactive window in response to a target operation on the interactive entry float;
[0015] The output module is used to receive the target prompt through the interactive window and output the target response corresponding to the target prompt.
[0016] Thirdly, embodiments of this application provide an electronic device, including: a memory and a processor;
[0017] The memory stores computer-executed instructions;
[0018] The processor executes computer execution instructions stored in the memory, causing the processor to perform the method described in any of the first aspects above.
[0019] Fourthly, embodiments of this application provide a computer-readable storage medium storing computer-executable instructions, which, when executed by a processor, are used to implement the method described in any of the first aspects above.
[0020] Fifthly, embodiments of this application provide a computer program product, including a computer program that, when executed by a processor, implements the method described in any of the first aspects above.
[0021] This application provides an interactive method, apparatus, device, medium, and program product. Through the operating system's auxiliary function interface, the position of the code editing window of a positioning code development program can be determined. An interactive entry point float can then be displayed based on the position of the code editing window, making the display of the interactive entry point float associated with the position of the code editing window, similar to the display effect of native components in an integrated development environment (IDE). By displaying the interactive entry point float, users can perform target operations on it, thereby displaying an interactive window that allows user interaction. Using this method, when developing financial service applications using this code development program, users do not need to switch to external software; they can directly obtain the target response corresponding to the target prompt through the interactive window within the IDE, thus improving the efficiency of developing financial service applications based on this code development program. Attached Figure Description
[0022] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments consistent with this application and, together with the description, serve to explain the principles of this application.
[0023] Figure 1A flowchart illustrating an interaction method provided in an embodiment of this application;
[0024] Figure 2 A flowchart illustrating the target response corresponding to the output target prompt provided in an embodiment of this application;
[0025] Figure 3 A schematic diagram of an interaction method technical architecture provided in an embodiment of this application;
[0026] Figure 4 A schematic diagram illustrating an interaction method provided in an embodiment of this application;
[0027] Figure 5 A schematic diagram of the structure of an interactive device provided in this application;
[0028] Figure 6 This is a schematic diagram of the structure of an electronic device provided in this application.
[0029] The accompanying drawings illustrate specific embodiments of this application, which will be described in more detail below. These drawings and descriptions are not intended to limit the scope of the concept in any way, but rather to illustrate the concept of this application to those skilled in the art through reference to particular embodiments. Detailed Implementation
[0030] Exemplary embodiments will now be described in detail, examples of which are illustrated in the accompanying drawings. When the following description relates to the drawings, unless otherwise indicated, the same numbers in different drawings denote the same or similar elements. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with this application. Rather, they are merely examples of apparatuses and methods consistent with some aspects of this application as detailed in the appended claims.
[0031] In this application, the term "comprising" and its variations can refer to non-limiting inclusion; the term "or" and its variations can refer to "and / or". The terms "first", "second", etc., in this application are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. In this application, "multiple" refers to two or more. "And / or" describes the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A existing alone, A and B existing simultaneously, and B existing alone. The character " / " generally indicates that the preceding and following related objects have an "or" relationship.
[0032] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, data stored, data displayed, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties. Furthermore, the collection, use and processing of the relevant data must comply with the relevant laws, regulations and standards of the relevant countries and regions, and corresponding operation entry points are provided for users to choose to authorize or refuse.
[0033] Sandboxing is a core design pattern in computer security. By isolating the runtime environment and restricting resource access permissions, it prevents untrusted programs or code from damaging the system. Its core objective is to limit potentially dangerous operations to a controllable range. Because Integrated Development Environments (IDEs) use a sandbox mechanism, their source editor extensions can only manipulate text content and cannot access or modify the IDE's user interface. They also cannot embed buttons, sidebars, Q&A windows, etc., within the IDE.
[0034] In existing technologies, when developing programs within an IDE, developers need to ask questions about the program they are working on. Due to the sandbox mechanism, developers can only rely on external web pages or standalone software's Q&A tools, unlike other IDE plugins which allow for Q&A through their internal windows. This necessitates frequent switching between the IDE and external web pages or standalone software, disrupting the development process and reducing efficiency.
[0035] Therefore, embodiments of this application provide an interactive method, apparatus, device, medium, and program product that accurately locates the code editing window of a code development program through the operating system's accessibility interface, enabling users to quickly trigger the interactive window. Compared to existing technologies that separate the integrated development environment from R&D knowledge Q&A, embodiments of this application can achieve seamless integration of intelligent Q&A functionality with the IDE through this interactive window, improving R&D efficiency.
[0036] The technical solution of this application and how the technical solution of this application solves the above-mentioned technical problems are described in detail below with specific embodiments. These specific embodiments can be combined with each other, and the same or similar concepts or processes may not be described again in some embodiments. The embodiments of this application will now be described with reference to the accompanying drawings.
[0037] The executing entity of this application can be any electronic device with processing capabilities, or a software program or plug-in installed in such an electronic device. The following describes the interaction method in detail, using a plug-in as the executing entity as an example.
[0038] Figure 1 This is a flowchart illustrating an interaction method provided in an embodiment of this application. Figure 1 As shown, the method includes:
[0039] S101. Based on the operating system's auxiliary function interface, the location of the code editing window of the code development program is determined; the code development program is used to provide an integrated development environment for developing financial service applications.
[0040] Alternatively, the code development program can be an IDE. Plugins can interact with the code development program through the operating system's accessibility interface. This operating system's accessibility interface can be, for example, an Accessibility Application Programming Interface (Accessibility API).
[0041] Optionally, the code editing window can be the interface area within an IDE used to display, write, and modify source code. Financial service applications can be software that processes financial business logic, such as a bank's core system. An integrated development environment (IDE) can integrate core functions such as code editing, compilation, debugging, testing, and version control into a unified interface.
[0042] Optionally, the code development program can send the position of the code editing window to the plugin through the operating system's accessibility interface, and the plugin can also actively obtain the position of the code editing window through the operating system's accessibility interface.
[0043] S102. Display the interactive entry float based on the position of the code editing window.
[0044] Optionally, the interaction entry point can be a visual control that floats above the IDE interface, used to trigger specific functions or operations. For example, the interaction entry point can be any item such as a button or a sidebar. An interactive window can be displayed through this interaction entry point.
[0045] S103. In response to a target operation on the interactive entry float, display the interactive window.
[0046] Optionally, the target operation can be an interactive behavior performed by the user on the floating bar, such as clicking, hovering, long pressing, or any other action. The interaction window can provide an independent display area for the interactive operation, and it can exist in the form of a pop-up window, dialog box, panel, etc.
[0047] S104. Receive target prompts through the interactive window and output the target response corresponding to the target prompts.
[0048] Optionally, the target prompt can be any one or more of the original question, instruction, or dialogue raised by the user. The target response can be any one or more of the answer, result, or dialogue feedback corresponding to the target prompt. Taking a question as an example, the target response can be the answer to the question; taking an instruction as an example, the target response can be the result of the instruction; taking a dialogue as an example, the target response can be the dialogue corresponding to the target prompt.
[0049] Optionally, the way the plugin receives target prompts can be related to the settings of the interactive window. For example, if a text box is set in the interactive window, the plugin can receive the input content within the text box. As another example, if a dropdown selection box is set in the interactive window, the plugin can receive the selected content from the dropdown selection box. The plugin's output method is similar to its receiving method and will not be described further here.
[0050] This application embodiment utilizes the operating system's accessibility interface to determine the location of the code editing window in the positioning code development program. Based on this location, an interactive entry point float can be displayed, making its display correlated with the code editing window's position. This results in an interactive entry point float display effect similar to that of native components in an integrated development environment (IDE). By displaying this interactive entry point float, users can perform target operations, thereby displaying an interactive window that allows user interaction. Using this method, when developing financial service applications using this code development program, users do not need to switch to external software; they can directly obtain the target response corresponding to the target prompt through the interactive window within the IDE, thus improving the efficiency of developing financial service applications based on this code development program.
[0051] Before displaying the interactive entry float at the location of the code editing window, this embodiment of the application can create a target interface element container; the content view of the target interface element container includes the interactive entry float.
[0052] Optionally, the target UI element container can be a logical or visual area used to contain and organize specific UI elements. For example, it can be an NSWindow. It should be noted that NSWindow only represents the name of the target UI element container and has no specific meaning. The content view of the target UI element container can be the specific content area presented inside the target UI element container, which can display interactive information and elements, and may include interactive entry points (floating icons).
[0053] The plugin can determine the position of the target UI element container based on the location of the code editing window; the target UI element container is located within the code editing window's area. An interaction entry float is displayed at the location of the target UI element container.
[0054] Optionally, the target interface element container can be located anywhere within the code editing window. For example, the target interface element container can be located at the bottom right corner of the code editing window.
[0055] This application embodiment can create a target interface element container and determine its display position based on the position of the code editing window, ensuring the accurate display of the float within the code editing window area, thereby enhancing the consistency of the user experience and the convenience of operation.
[0056] Based on the above-mentioned display of the interactive entry float at the position of the target interface element container, this application can also handle the situation where the position of the code editing window is updated, which will be explained in detail below.
[0057] The plugin can respond to updates to the code editor window's position. Based on the updated position of the code editor window, it updates the position of the target UI element container, obtaining the updated position of the target UI element container. The updated position of the target UI element container is within the updated area of the code editor window. An interactive entry float is displayed at the updated position of the target UI element container.
[0058] Optionally, updating the position of the code editing window can be any of the following: file switching, window resizing, or window layout switching.
[0059] Optionally, the code development program can send the position of the code editing window to the plugin in real time through the operating system's accessibility interface to update the position of the code editing window. The plugin can also periodically obtain the position of the code editing window through the operating system's accessibility interface to update its position.
[0060] In this embodiment, when the code editing window position is updated, the position of the target interface element container can be automatically updated to ensure that the interaction entry float is always displayed within the code editing window area. This can improve the adaptability and stability of the interaction entry float and ensure the continuity of interaction.
[0061] In one implementation, Figure 2 This application provides a flowchart illustrating the target response corresponding to the output target prompt, as shown in the embodiments of this application. Figure 2 As shown, the above S104 may include:
[0062] S201. Receive target prompts through the interactive window.
[0063] This step can be referred to, for example, the method in S104 above, and will not be repeated here.
[0064] S202. Based on the target prompt, determine the reference information required to respond to the target prompt; the reference information includes at least one of the following: reference code, context information of the reference code, storage path of the file to which the reference code belongs, and the name of the project to which the reference code belongs.
[0065] Optionally, the reference code may be, for example, the current code in the IDE, and the context information of the reference code may be the context information of the current code, which may include any one of the following: the function description of the code, the description of the input and output parameters, the calling method, and the related business logic.
[0066] The storage path of the reference code file can be the specific location of the current code file in the computer's file system, used to uniquely identify the file's location and facilitate finding and accessing the code file. The name of the project to which the reference code belongs can be used to identify and distinguish different projects.
[0067] Optionally, the code development program can send reference information to the plugin through the operating system's accessibility interface, and the plugin can also actively obtain reference information through the operating system's accessibility interface.
[0068] S203. Based on the target prompt and reference information, construct new prompt words.
[0069] Optionally, the plugin can build new prompts based on target prompts and reference information, after integration, adjustment, and optimization.
[0070] In one implementation, the plugin determines the scene to which the target prompt belongs based on the target prompt. Based on the scene, a prompt word template is determined. Reference information is then filled into the prompt word template to obtain new prompt words.
[0071] Optionally, the target prompt can belong to any of the following scenarios: open-ended question and answer, code generation, exception handling, code explanation, or documentation generation. Based on different scenario types, corresponding prompt templates can be generated. For example, templates for open-ended question and answer, code generation, exception handling, code explanation, or documentation generation can be generated.
[0072] The plugin can fill the above reference information into the prompt word template to obtain new prompt words.
[0073] This application's embodiment determines the relevant scenario based on target prompts and selects the corresponding prompt word template. Compared to existing technologies, the generated results are prone to deviating from user needs, and the consistency of question and answer is difficult to guarantee. This application's embodiment can reduce ambiguity in questions, improve the accuracy and quality of cross-domain question and answering, and make the question and answering process more intelligent and efficient.
[0074] S204. Input the new prompt word into the prompt response model to obtain the target response.
[0075] Optionally, the prompt response model can be a large language model that supports multi-turn follow-up questions, preserves context, and enhances the continuous dialogue experience.
[0076] In one implementation, the prompt-response model is used to retrieve target knowledge content from a target knowledge base based on new prompt words, and generate a target response based on the target knowledge content. The target knowledge base stores data including: development documents for financial service applications, and at least one of the following: knowledge documents in the fintech field.
[0077] Optionally, the target knowledge base can be a data storage collection that provides knowledge support for the prompt-response model. Development documentation for financial service applications may include one or more of the following: requirements analysis, design architecture, code implementation, test reports, etc. Knowledge documentation in the fintech field may include one or more of the following: fintech concepts, development trends, technology applications, industry case studies, etc.
[0078] In addition, the target knowledge base can also include vector databases and graph databases.
[0079] The rich knowledge base contained in the prompt response model of this application embodiment, compared with the prompt response models in the prior art that fail to effectively utilize knowledge such as in-line documentation, code style, and interface specifications, and lack in-line knowledge support, resulting in generalized answers, can improve the professionalism of the response and enhance the quality and reliability of the question-and-answer service.
[0080] This application embodiment receives target prompts through an interactive window and constructs new prompt words based on reference information to obtain the target response. Compared to existing technologies, which suffer from limited contextual understanding due to the difficulty in obtaining contextual information such as the developer's current file, class, and function, this application embodiment can improve the accuracy and relevance of the response based on reference information, making the question-and-answer service more precise.
[0081] The above describes the interaction process between the code development program and the plugin. In this embodiment, the code in the target response can also be inserted into the code development program, which will be described in detail below.
[0082] The code development program is used to develop first code for financial service applications. In this embodiment, in response to a target response including second code, application controls are displayed through an interactive window. In response to a click operation on the application controls, the second code is inserted into the first code.
[0083] Optionally, the application control can be a visual element in the interactive window, such as a button, drop-down list, or any other item. Optionally, the plugin can insert the second code into a blank space in the first code, or it can insert the second code into the target position of the first code.
[0084] Taking the example of a plugin inserting second code into the target position of first code, the plugin can first save the second code. Then, it executes a preset script in the code development program to insert the second code into the target position of the first code. When the preset script is executed, it is used to perform a click operation on the insert control in the menu bar of the code development program. The target position is the location indicated by the user's cursor.
[0085] Optionally, the preset script can be pre-stored in the code development program. For example, the relevant textual description of the preset script is as follows:
[0086] 1. Determine the menu bar of the code development program.
[0087] 2. Locate the Insert control in the menu bar.
[0088] 3. Click Insert Control.
[0089] Optionally, the target location can be actively sent to the plugin by the code development program.
[0090] This application embodiment can simulate the user's operation of clicking the menu bar to insert a control through a preset script, and can directly insert the second code into the target position of the first code, thereby improving efficiency.
[0091] The above method will be described in detail below with a specific embodiment. Figure 3 A schematic diagram of an interaction method technical architecture provided in an embodiment of this application, such as... Figure 3 As shown, this technical architecture includes: plugins, a knowledge base, template generation, and model processing. These will be described in detail below.
[0092] The plugin enables file association, code association, and code copying. It can be developed using the Swift programming language and a development toolkit framework, and directly embedded into the IDE environment. It supports the following capabilities:
[0093] 1. Initiate the intelligent Q&A interface to support developers in easily asking questions.
[0094] 2. Automatically captures the current code context information, including function names, comments, code blocks, etc.
[0095] 3. Associate the current file path and project name to build a complete context prompt.
[0096] 4. Display the answer results, support code syntax highlighting and a "one-click application" button for easy and quick reuse of code snippets.
[0097] The plugin's intelligent question-and-answer feature can access the interface's view hierarchy at the operating system level. Using the Accessibility API and child view injection, a custom floating control can be inserted into the main window, achieving an effect that appears as if it's part of the native interface. Specific technical details are as follows:
[0098] 1. Obtain the hierarchical window: Use the Accessibility API to find the editor window.
[0099] 2. Insert Float: Creates an NSWindow to display the interactive chat entry float.
[0100] 3. Align the bottom right corner: Dynamically calculate the coordinates of the editor area and anchor the float to the bottom right corner.
[0101] 4. Monitor changes: Monitor changes in the project window (file switching, window resizing, layout switching), and adjust the position of the float accordingly.
[0102] 5. Clicking the floating icon brings up a Chat window, such as a SwiftUI window combined with a WebView, which looks like part of the native interface. It should be noted that SwiftUI only refers to the window name and has no specific meaning.
[0103] Furthermore, due to the plugin's inherent mechanism, it cannot run automatically and must be triggered manually or programmatically from an external source. Therefore, when a user clicks the one-click application, an automated script is written to trigger the plugin command, bypassing this limitation. The plugin's methods retrieve the code from the Artificial Intelligence (AI) response and correctly insert this code into the project.
[0104] A knowledge base can perform knowledge retrieval and static code analysis, and it can include vector databases and graph databases.
[0105] Template generation can include free Q&A templates, code generation templates, exception handling templates, code explanation templates, and documentation generation templates.
[0106] The model processing is used to retrieve answers, uniformly inputting contextual information and templated prompts collected from the plugin module into the large language model. The answers generated by the model are visualized through the plugin interface. Multi-turn follow-up questions are supported, context is preserved, and the continuous dialogue experience is enhanced. Syntax highlighting is provided for code portions of the answers, and a one-click copy function is offered to improve usability.
[0107] In conclusion, Figure 4 A schematic diagram of an interaction method provided in an embodiment of this application, such as... Figure 4 As shown, the detailed process of this embodiment can be summarized as follows:
[0108] 1. Responds to developers' ability to invoke the Q&A plugin via shortcut keys or menus.
[0109] 2. The plugin automatically collects the current code context and project environment information.
[0110] 3. The plugin calls the corresponding prompt word template based on the question and answer type to construct a complete input.
[0111] 4. The plugin sends a request to the large language model, combines it with knowledge base resources, and generates an answer.
[0112] 5. The plugin displays answers in a highlighted format and provides a copy button in the code area.
[0113] 6. The plugin supports asking follow-up questions to maintain the continuity of the conversation and the relevance of the context.
[0114] The above are the method embodiments provided in this application. The apparatus provided in this application will be described below.
[0115] Figure 5 A schematic diagram of the structure of an interactive device provided in this application is shown below. Figure 5 As shown, the interactive device 400 provided in this embodiment includes: a determining module 401, a first display module 402, a second display module 403, and an output module 404. Optionally, the interactive device 400 may further include a processing module 405.
[0116] Module 401 is used to determine the location of the code editing window of the code development program based on the operating system's auxiliary function interface; the code development program is used to provide an integrated development environment for developing financial service applications;
[0117] The first display module 402 is used to display an interactive entry float based on the position of the code editing window;
[0118] The second display module 403 is used to display an interactive window in response to a target operation on the interactive entry float;
[0119] Output module 404 is used to receive target prompts through an interactive window and output the target response corresponding to the target prompts.
[0120] Optionally, before the first display module 402 displays the interactive entry float based on the position of the code editing window, the processing module 405 creates a target interface element container; the content view of the target interface element container includes the interactive entry float. Specifically, the first display module 402 determines the position of the target interface element container based on the position of the code editing window; the target interface element container is located within the area of the code editing window. The interactive entry float is then displayed at the position of the target interface element container.
[0121] Optionally, after the first display module 402 displays the interactive entry float based on the position of the code editing window, the processing module 405 is specifically used to update the position of the target interface element container in response to an update of the code editing window's position, based on the updated position of the code editing window, to obtain the updated position of the target interface element container, ensuring that the updated position of the target interface element container is within the updated area of the code editing window. The interactive entry float is then displayed at the updated position of the target interface element container.
[0122] Optionally, the code development program is used to develop first code for a financial services application. The processing module 405, specifically, is used to display application controls via an interactive window in response to a target response, including second code. In response to a click on the application controls, the second code is inserted into the first code.
[0123] For example, the second code is inserted into the first code. Processing module 405 is specifically used to save the second code. A preset script is executed on the code development program to insert the second code at the target location in the first code. When the preset script is executed, it is used to perform a click operation on the insert control in the menu bar of the code development program. The target location is the position indicated by the user's cursor.
[0124] Optionally, output module 404 is specifically used to receive the target prompt through an interactive window. Based on the target prompt, it determines the reference information required to respond to the target prompt. The reference information includes at least one of the following: reference code, context information of the reference code, storage path of the file to which the reference code belongs, and the name of the project to which the reference code belongs. Based on the target prompt and the reference information, a new prompt word is constructed. The new prompt word is input into the prompt response model to obtain the target response.
[0125] For example, output module 404 is specifically used to determine the scene to which the target prompt belongs based on the target prompt. Based on the scene, a prompt word template is determined. Reference information is then filled into the prompt word template to obtain new prompt words.
[0126] For example, output module 404 is specifically used by the prompt response model to retrieve target knowledge content from the target knowledge base based on new prompt words, and to generate a target response based on the target knowledge content. The data stored in the target knowledge base includes: development documents for financial service applications, and at least one of the following: knowledge documents in the fintech field.
[0127] The interactive device provided in this embodiment can execute the methods provided in any of the above method embodiments. The implementation principle and technical effect are similar, and will not be described in detail here.
[0128] Figure 6This is a schematic diagram of the structure of an electronic device provided in this application. Figure 5 As shown, the electronic device 500 provided in this embodiment includes at least one processor 501 and a memory 502. Optionally, the device 500 further includes a communication component 503. The processor 501, memory 502, and communication component 503 are connected via a bus 504.
[0129] In a specific implementation, at least one processor 501 executes computer execution instructions stored in memory 502, causing at least one processor 501 to perform the above-described method.
[0130] The specific implementation process of processor 501 can be found in the above method embodiments, and its implementation principle and technical effect are similar. It will not be repeated here.
[0131] In the above embodiments, it should be understood that the processor can be a Central Processing Unit (CPU), or other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), etc. The general-purpose processor can be a microprocessor or any conventional processor. The steps of the method disclosed in this invention can be directly implemented by a hardware processor, or implemented by a combination of hardware and software modules within the processor.
[0132] The memory may include random access memory (RAM) and may also include non-volatile memory (NVM), such as at least one disk storage device.
[0133] The bus can be an Industry Standard Architecture (ISA) bus, a Peripheral Component Interconnect (PCI) bus, or an Extended Industry Standard Architecture (EISA) bus, etc. Buses can be categorized as address buses, data buses, control buses, etc. For ease of illustration, the buses shown in the accompanying drawings are not limited to a single bus or a single type of bus.
[0134] This application also provides a computer program product, including a computer program that, when executed by a processor, implements the above-described method.
[0135] This application also provides a computer-readable storage medium storing computer-executable instructions, which, when executed by a processor, implement the above-described method.
[0136] The aforementioned readable storage medium can be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic storage, flash memory, magnetic disk, or optical disk. The readable storage medium can be any available medium accessible to a general-purpose or special-purpose computer.
[0137] An exemplary readable storage medium is coupled to a processor, enabling the processor to read information from and write information to the readable storage medium. Of course, the readable storage medium can also be a component of the processor. The processor and the readable storage medium can reside in an Application Specific Integrated Circuit (ASIC). Alternatively, the processor and the readable storage medium can exist as discrete components in the device.
[0138] The division of units is merely a logical functional division; in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be indirect coupling or communication connection through some interfaces, devices, or units, and may be electrical, mechanical, or other forms.
[0139] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.
[0140] In addition, the functional units in the various embodiments of the present invention can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit.
[0141] If a function is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this invention, or the part that contributes to the prior art, or a 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 includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods of the various embodiments of this 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.
[0142] Those skilled in the art will understand that all or part of the steps of the above-described method embodiments can be implemented by hardware related to program instructions. The aforementioned program can be stored in a computer-readable storage medium. When executed, the program performs the steps of the above-described method embodiments; and the aforementioned storage medium includes various media capable of storing program code, such as ROM, RAM, magnetic disks, or optical disks.
[0143] Finally, it should be noted that other embodiments of the invention will readily occur to those skilled in the art upon consideration of the specification and practice of the invention disclosed herein. This invention is intended to cover any variations, uses, or adaptations of the invention that follow the general principles of the invention and include common knowledge or customary techniques in the art not disclosed herein, and is not limited to the precise structures described above and shown in the accompanying drawings, and various modifications and changes can be made without departing from its scope. The scope of the invention is limited only by the appended claims.
Claims
1. An interaction method, characterized in that, The method comprises: determining a position of a code editing window of a code development program based on an auxiliary function interface of an operating system; the code development program is used to provide an integrated development environment for developing a financial service application program; displaying an interactive entry floating ball based on the position of the code editing window; in response to a target operation on the interactive entry floating ball, displaying an interactive window; receiving a target prompt through the interactive window, and outputting a target response corresponding to the target prompt.
2. The method of claim 1, wherein, Before displaying the interactive entry floating ball based on the position of the code editing window, the method further comprises: creating a target interface element container; a content view of the target interface element container comprises the interactive entry floating ball; the displaying the interactive entry floating ball based on the position of the code editing window comprises: determining a position of the target interface element container based on the position of the code editing window; the position of the target interface element container is within a region of the code editing window; displaying the interactive entry floating ball at the position of the target interface element container.
3. The method of claim 2, wherein, After displaying the interactive entry floating ball at the position of the target interface element container, the method further comprises: in response to a position update of the code editing window, updating the position of the target interface element container based on an updated position of the code editing window to obtain an updated position of the target interface element container; the updated position of the target interface element container is within an updated region of the code editing window; displaying the interactive entry floating ball at the updated position of the target interface element container.
4. The method according to any one of claims 1 to 3, characterized in that, The code development program is used to develop first code of the financial service application program, and the method further comprises: in response to the target response comprising second code, displaying an application control through the interactive window; in response to a click operation on the application control, inserting the second code into the first code.
5. The method of claim 4, wherein, The inserting the second code into the first code comprises: saving the second code; executing a preset script on the code development program to insert the second code into a target position of the first code; the preset script is executed to implement a click operation on an insertion control of a menu bar of the code development program; the target position is a position indicated by a cursor by a user.
6. The method according to any one of claims 1 to 3, characterized in that, The receiving a target prompt through the interactive window, and outputting a target response corresponding to the target prompt comprises: receiving a target prompt through the interactive window; determining reference information required for responding to the target prompt based on the target prompt; the reference information comprises at least one of the following: reference code, context information of the reference code, a storage path of a file to which the reference code belongs, and a name of a project to which the reference code belongs; constructing a new prompt word based on the target prompt and the reference information; inputting the new prompt word into a prompt response model to obtain the target response.
7. The method of claim 6, wherein, The constructing a new prompt word based on the target prompt and the reference information comprises: determining a scenario to which the target prompt belongs based on the target prompt; determine a prompt word template based on the scenario; fill the reference information into the prompt word template to obtain the new prompt word.
8. The method of claim 6, wherein, The prompt response model is configured to obtain target knowledge content from a target knowledge base based on the new prompt word, and generate the target response based on the target knowledge content. The data stored in the target knowledge base includes at least one of the following: a development document of the financial service application program, and a knowledge document in the field of financial technology.
9. An interactive device, characterized by The method comprises the following steps: determining the position of a code editing window of a code development program based on an auxiliary function interface of an operating system; The code development program is configured to provide an integrated development environment for developing a financial service application program; a first display module configured to display an interactive entry floating ball based on the position of the code editing window; a second display module configured to display an interactive window in response to a target operation on the interactive entry floating ball; an output module configured to receive a target prompt through the interactive window and output a target response corresponding to the target prompt.
10. An electronic device, comprising: The method comprises the following steps: a memory and a processor; The memory stores computer execution instructions; The processor executes the computer execution instructions stored in the memory, so that the processor executes the method according to any one of claims 1-8.
11. A computer readable storage medium, characterized in that, The computer readable storage medium stores computer execution instructions, and the computer execution instructions are executed by the processor to implement the method according to any one of claims 1-8.
12. A computer program product, characterised in that, The computer program is executed by the processor to implement the method according to any one of claims 1-8.
