Information processing device, method, program, and system
Patent Information
- Application Number
- PCT/JP2026/012983
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2025-03-28
- Filing Date
- 2026-03-27
- Publication Date
- 2026-10-01
Smart Images

Figure JP2026012983_01102026_PF_FP_ABST
Abstract
Description
Information processing apparatus, method, program and system
[0001] The present disclosure relates to an information processing apparatus, method, program and system.
[0002] In recent years, systems using large language models (LLM: Large Language Models) have been provided. A large language model is a language model specialized for natural language processing (NLP: Natural Language Processing), and is a type of so-called generative AI (Artificial Intelligence). Generally, when a prompt including an instruction sentence, data, or the like is input to an LLM, the LLM outputs a sentence based on the prompt.
[0003] In Patent Document 1, content to which a content classification item corresponding to a user classification item is attached is searched by adding a user classification item to a question sentence. In Patent Document 1, by including content having a high relevance to the question sentence in a prompt, a more appropriate answer sentence is output using a general-purpose large language model.
[0004] Japanese Patent No. 7538364
[0005] When using generative AI including an LLM or the like, a user needs to input a prompt to the generative AI. In order to improve the usability of generative AI, there is a demand for reducing the time and effort required to input a prompt.
[0006] An object of the present disclosure is to reduce time and effort when using generative AI.
[0007] To solve the above problems, a program according to one aspect of the present disclosure is a program to be executed on a computer having a processor and memory, the program causing the processor to perform the following steps: receiving a selection from a user for one of a plurality of pre-set prompts; receiving an edit from the user for the selected prompt; inputting the edited prompt into a generating AI and causing the generating AI to output a desired response; and, if the edited prompt satisfies predetermined requirements, updating the pre-set prompt with the edited prompt.
[0008] According to this disclosure, the effort required when using generation AI can be reduced.
[0009] This is a block diagram showing an example of the overall configuration of System 1. This is a block diagram showing an example of the functional configuration of the terminal device 10 shown in Figure 1. This is a diagram showing an example of the functional configuration of the server 20. This is a diagram showing the data structure of the prompt table 2021. This is a flowchart showing an example of the operation of the server 20 when a user uses AI chat. This is a schematic diagram showing an example of the display screen of the display 141 of the terminal device 10. This is a schematic diagram showing another example of the display screen of the display 141 of the terminal device 10. This is a flowchart showing a first modified example of the operation of the server 20 when a user uses AI chat. This is a flowchart showing a second modified example of the operation of the server 20 when a user uses AI chat. This is a flowchart showing a third modified example of the operation of the server 20 when a user uses AI chat. This is a block diagram showing the basic hardware configuration of the computer 90.
[0010] The embodiments of this disclosure will be described below with reference to the drawings. In all the drawings illustrating the embodiments, common components are denoted by the same reference numerals, and repeated explanations are omitted. The following embodiments are not intended to unduly limit the content of this disclosure as described in the claims. Not all components shown in the embodiments are necessarily essential components of this disclosure. Also, each drawing is a schematic diagram and is not necessarily a strict illustration.
[0011] Furthermore, in the following description, "processor" refers to one or more processors. At least one processor is typically a microprocessor such as a CPU (Central Processing Unit), but may be another type of processor such as a GPU (Graphics Processing Unit). At least one processor may be single-core or multi-core.
[0012] Furthermore, at least one processor may be a broad-sense processor, such as a hardware circuit that performs some or all of the processing (e.g., an FPGA (Field-Programmable Gate Array) or an ASIC (Application Specific Integrated Circuit)).
[0013] Furthermore, in the following explanation, we may use expressions such as "xxx table" to describe information from which an output is obtained for a given input. This information can be data of any structure, or it can be a learning model such as a neural network that generates an output for a given input. Therefore, "xxx table" can be referred to as "xxx information."
[0014] Furthermore, in the following explanation, the configuration of each table is just an example; one table may be divided into two or more tables, or all or part of two or more tables may be a single table.
[0015] Furthermore, in the following explanation, the subject of the process may sometimes be "program," but since a program is executed by a processor and performs defined processes using the memory and / or interface as appropriate, the subject of the process may also be the processor (or a device such as a controller that has that processor).
[0016] The program may be installed on a device such as a computer, or it may reside on a program distribution server or a computer-readable (e.g., non-temporary) recording medium. Furthermore, in the following description, two or more programs may be implemented as a single program, or one program may be implemented as two or more programs.
[0017] Furthermore, in the following explanation, identification numbers are used as identification information for various objects, but other types of identification information (for example, identifiers including letters or symbols) may also be used.
[0018] Furthermore, in the following explanations, when describing similar elements without distinction, a reference code (or a common code among reference codes) may be used, and when describing similar elements with distinction, the element's identification number (or reference code) may be used.
[0019] Furthermore, in the following explanation, only control lines and information lines deemed necessary for the explanation are shown, and not all control lines and information lines in the product are necessarily shown. All components may be interconnected.
[0020] Each information processing device consists of a computer equipped with an arithmetic unit and a memory device. The basic hardware configuration of the computer and the basic functional configuration of the computer realized by said hardware configuration will be described later. For each of the server 20 and terminal device 10, explanations that overlap with the basic hardware configuration and basic functional configuration of the computer described later will be omitted.
[0021] <Outline> The system according to this embodiment has a function to reduce the effort required to input prompts, including instruction texts (questions or requests, etc.) and data, to the LLM (Generating AI) when using AI chat. For example, the system pre-sets several prompts as defaults when using AI chat. For example, the system accepts a user's selection of one of the pre-set prompts. For example, the system accepts user edits to the selected prompt. For example, the system inputs the edited prompt to the Generating AI and has the Generating AI output the desired answer. For example, if instructed by the user, or if the same or similar edit is performed a predetermined number of times, the system updates the pre-set prompts with the edited prompts. As a result, prompts are personalized according to information such as the user's attributes, hobbies and preferences, and behavioral data history, reducing the effort required of the user when using the Generating AI.
[0022] <1. Overall System Configuration Diagram> Figure 1 is a block diagram showing an example of the overall configuration of System 1. System 1 shown in Figure 1 includes, for example, a terminal device 10, a server 20, and an LLM system 30. The terminal device 10, the server 20, and the LLM system 30 are connected to each other via, for example, a network 80.
[0023] Figure 1 shows an example where System 1 includes two terminal devices 10, but the number of terminal devices 10 included in System 1 is not limited to two. System 1 may include fewer than three terminal devices 10, or three or more.
[0024] Figure 1 shows an example where System 1 includes one LLM system 30, but the number of LLM systems 30 included in System 1 is not limited to one. System 1 may include two or more LLM systems 30.
[0025] Figure 1 shows an example where server 20 is independent of the LLM system 30, but server 20 may include the functions of the LLM system 30. In other words, server 20 may store LLM.
[0026] In this embodiment, a collection of multiple devices may be treated as a single server. The method of allocating the multiple functions required to implement the server 20 according to this embodiment to one or more hardware can be appropriately determined in view of the processing capacity of each hardware and / or the specifications required for the server 20.
[0027] The terminal device 10 shown in Figure 1 is an information processing device operated by a user of AI chat. The terminal device 10 can be implemented as, for example, a stationary PC (Personal Computer), a laptop PC, etc. The terminal device 10 may also be implemented as a mobile device such as a smartphone or tablet.
[0028] The terminal device 10 includes a communication interface (IF) 12, an input device 13, an output device 14, memory 15, storage 16, and a processor 19. The input device 13 is a device for receiving input operations from the user (e.g., a touch panel, touchpad, pointing device such as a mouse, keyboard, etc.). The output device 14 is a device for presenting information to the user (display, speaker, etc.).
[0029] Server 20 is an information processing device that, for example, when using AI chat, accepts edits to prompts from the user, inputs them into the LLM, and updates and manages the edited prompts. Server 20 accepts edits from the user to pre-set prompts. Server 20 sends the edited prompt to the LLM system 30 and causes the LLM system 30 to output the desired response. Server 20 updates the pre-edited prompt with the edited prompt according to predetermined requirements. The prompt may include, for example, an instruction (question or request, etc.) and various data. The instruction may include, for example, text information that instructs the LLM to output the response desired by the user. The various data may include, for example, document data, image data, video data, or audio data.
[0030] The server 20 is an information processing device implemented by, for example, a computer connected to the network 80. As shown in Figure 1, the server 20 includes a communication IF 22, an input / output IF 23, memory 25, storage 26, and a processor 29. The input / output IF 23 functions as an interface to an input device for receiving input operations from the user and an output device for outputting information to the user.
[0031] The LLM system 30 is a system in which a large-scale artificial intelligence model (LLM) used in the field of natural language processing (NLP) has been constructed. The LLM can learn from a large amount of text data (web pages, books, articles, etc.) to understand patterns in human language and effectively perform natural language generation (NLG) tasks. In this embodiment, the LLM is an example of a generative AI and may be implemented by other generative AIs. The generative AI outputs a response based on a prompt that includes an input instruction sentence and various data.
[0032] LLM is used in many NLP tasks, including generating responses to specific questions, automatic text generation, text summarization, translation, and sentiment analysis. It can also be used in a variety of applications, such as education, entertainment, customer service, and product development. Examples of LLM include: • GPT-4 (registered trademark) (OpenAI Inc.) • PaLM2 (registered trademark) (Google Inc.) • StableLM (StableAI Inc.) • Llama2 (Meta Inc.)
[0033] The LLM system 30 receives prompts from the server 20 and causes the LLM to output a response based on the input prompts. The LLM system 30 then sends the response output from the LLM to the server 20.
[0034] Each information processing device consists of a computer equipped with an arithmetic unit and a memory device. The basic hardware configuration of the computer and the basic functional configuration of the computer realized by said hardware configuration will be described later. For each of the terminal device 10, server 20, and LLM system 30, explanations that overlap with the basic hardware configuration and basic functional configuration of the computer described later will be omitted.
[0035] <1.1 Functional Configuration of Terminal Device> Figure 2 is a block diagram showing an example of the functional configuration of the terminal device 10 shown in Figure 1. As shown in Figure 2, the terminal device 10 includes a communication unit 120, an input device 13, an output device 14, an audio processing unit 17, a microphone 171, a speaker 172, a camera 160, a location information sensor 150, a storage unit 180, and a control unit 190. Each block included in the terminal device 10 is electrically connected, for example, by a bus.
[0036] The communication unit 120 performs processing such as modulation and demodulation processing for the terminal device 10 to communicate with other devices. The communication unit 120 performs transmission processing on the signal generated by the control unit 190 and transmits it to an external source (for example, the server 20). The communication unit 120 performs reception processing on the signal received from the external source and outputs it to the control unit 190.
[0037] The input device 13 is a device for a user operating the terminal device 10 to input instructions or information. The input device 13 can be implemented, for example, by a touch-sensitive device 131 on which instructions are input by touching the operating surface. If the terminal device 10 is a PC, the input device 13 may be implemented by a reader, keyboard, mouse, etc. The input device 13 converts the instructions input by the user into electrical signals and outputs the electrical signals to the control unit 190. The input device 13 may also include, for example, a receiving port that accepts electrical signals input from an external input device.
[0038] The output device 14 is a device for presenting information to the user operating the terminal device 10. The output device 14 is implemented, for example, by a display 141. The display 141 displays data according to the control of the control unit 190. The display 141 is implemented, for example, by an LCD (Liquid Crystal Display) or an organic EL (Electro-Luminescence) display.
[0039] The audio processing unit 17 performs, for example, digital-to-analog conversion processing of the audio signal. The audio processing unit 17 converts the signal provided from the microphone 171 into a digital signal and provides the converted signal to the control unit 190. The audio processing unit 17 also provides the audio signal to the speaker 172. The audio processing unit 17 is implemented, for example, by an audio processing processor. The microphone 171 receives an audio input and provides the audio signal corresponding to the audio input to the audio processing unit 17. The speaker 172 converts the audio signal provided from the audio processing unit 17 into audio and outputs the audio to the outside of the terminal device 10.
[0040] Camera 160 is a device that receives light using a photodetector and outputs it as a shooting signal.
[0041] The location information sensor 150 is a sensor that detects the position of the terminal device 10, and is, for example, a GPS (Global Positioning System) module. A GPS module is a receiving device used in a satellite positioning system. In a satellite positioning system, signals are received from at least three or four satellites, and the current position of the terminal device 10, which is equipped with a GPS module, is detected based on the received signals. The location information sensor 150 may also detect the current position of the terminal device 10 from the position of the wireless base station to which the terminal device 10 is connected.
[0042] The storage unit 180 is implemented by, for example, a memory 15 and a storage 16, and stores data and programs used by the terminal device 10. The storage unit 180 stores, for example, user information 181.
[0043] The user information 181 includes, for example, information about a user who uses the terminal device 10. The information about the user includes, for example, the user's name, age, address, date of birth, contact information, and the like.
[0044] The control unit 190 is implemented when the processor 19 reads a program stored in the storage unit 180 and executes instructions included in the program. The control unit 190 controls the operation of the terminal device 10. By operating according to a program, the control unit 190 exerts functions as an operation reception unit 191, a transmission / reception unit 192, and a presentation control unit 193.
[0045] The operation reception unit 191 performs processing for receiving an instruction or information input from the input device 13. Specifically, for example, the operation reception unit 191 receives an instruction or information input from the touch-sensitive device 131 or the like.
[0046] Furthermore, the operation reception unit 191 receives a voice instruction input from the microphone 171. Specifically, for example, the operation reception unit 191 receives a voice signal input from the microphone 171 and converted into a digital signal by the voice processing unit 17. The operation reception unit 191 acquires an instruction from the user by, for example, analyzing the received voice signal and extracting a predetermined noun.
[0047] The transmission / reception unit 192 performs processing for the terminal device 10 to transmit and receive data to and from an external device such as the server 20 according to a communication protocol. Specifically, for example, the transmission / reception unit 192 transmits information input by a user or an instruction from the user to the server 20. Furthermore, the transmission / reception unit 192 receives information provided from the server 20.
[0048] The presentation control unit 193 controls the output device 14 to present information provided from the server 20 to the user. Specifically, for example, the presentation control unit 194 causes the display 141 to display information such as a request instruction and request acceptance transmitted from the server 20. Furthermore, the presentation control unit 194 causes information transmitted from the server 20 to be output from the speaker 172.
[0049] <1.2 Functional Configuration of the Server> Figure 3 shows an example of the functional configuration of the server 20. As shown in Figure 3, the server 20 functions as a communication unit 201, a storage unit 202, and a control unit 203.
[0050] The communication unit 201 performs processing to enable the server 20 to communicate with external devices.
[0051] The storage unit 202 includes, for example, a prompt table 2021. The tables stored in the storage unit 202 are not limited to these.
[0052] The prompt table 2021 is a table that stores information about prompts entered into the LLM system 30. Further details will be described later.
[0053] The control unit 203 is realized when the processor 29 reads a program stored in the memory unit 202 and executes instructions contained in the program. The program includes applications such as a web browser application. The program includes an interpreter-type programming language such as JavaScript® that is executed on the web browser application stored in the terminal device 10. By operating according to the program, the control unit 203 performs the functions indicated as the receive control module 2031, the transmit control module 2032, the prompt management module 2033, and the presentation control module 2034.
[0054] The reception control module 2031 controls the process by which the server 20 receives signals from an external device according to a communication protocol. The transmission control module 2032 controls the process by which the server 20 transmits signals to an external device according to a communication protocol. The prompt management module 2033 controls various operations when using AI chat. The presentation control module 2034 controls the process of presenting information to the user.
[0055] Specifically, the prompt management module 2033 accepts, for example, a user selection of one of several pre-configured prompts via the receiving control module 2031. The pre-configured prompts are not limited to, for example, the initially set prompt (standard prompt), but may also include prompts that have been previously edited and updated. The pre-configured prompts may also be candidates that are predicted and displayed based on the first few characters entered by a predictive text function. The prompt management module 2033 accepts, for example, an edit of the selected prompt from the user via the receiving control module 2031. The prompt may include, for example, an instruction and various data. The prompt management module 2033 sends the edited prompt to the LLM system 30 via, for example, the transmission control module 2032. The prompt management module 2033 receives the desired response output from the LLM system 30 via, for example, the receiving control module 2031. The desired response includes, for example, the user's desired answer to a user's question or request. The prompt management module 2033 updates a pre-configured prompt with the edited prompt if, for example, the edited prompt entered into the LLM system 30 meets predetermined requirements.
[0056] Furthermore, the prompt management module 2033, for example via the presentation control module 2034, proposes updating a pre-configured prompt with the edited prompt if the edited prompt meets predetermined requirements. The prompt management module 2033 updates the pre-configured prompt with the edited prompt if the user accepts the proposal.
[0057] Furthermore, the prompt management module 2033 proposes, for example via the presentation control module 2034, to update a pre-set prompt with the edited prompt if the same edit is performed on a prompt a predetermined number of times, assuming that certain requirements are met. The same edit on a prompt is not limited to, for example, an exact match, but may also include a partial match. The predetermined number of edits may include, for example, when the total number of edits reaches a predetermined number, when the number of edits reaches a predetermined number within a predetermined period, or when the same edit is performed consecutively.
[0058] Furthermore, the prompt management module 2033 proposes, for example, via the presentation control module 2034, to update a pre-set prompt with the edited prompt if a predetermined number of similar edits are made to the prompt, provided that certain requirements are met. Similar edits to a prompt are not limited to identical edits, but may include similar edits (such as the same concept).
[0059] Furthermore, the prompt management module 2033 manages, for example, pre-configured prompts and updated prompt versions as an editing history. The prompt management module 2033 also manages these versions as a management tree. The prompt management module 2033 may manage, for example, all past versions, or it may manage versions edited within the most recent predetermined period.
[0060] <2. Data Structure> Figure 4 shows the data structure of the table stored by the server 20. Note that Figure 4 is just one example and does not exclude any data not shown. Also, even if data is listed in the same table, it may be stored in separate memory areas in the storage unit 202.
[0061] Figure 4 shows the data structure of the prompt table 2021. The prompt table 2021 shown in Figure 4 is a table that has columns for prompt, version, update date and time, and creator, with prompt ID as the key.
[0062] The prompt ID is an item that stores an identifier to uniquely identify a prompt.
[0063] The "Prompt" field is an item that stores information about the prompt to be entered into the LLM. The "Prompt" field may include, for example, an instruction and various types of data. The instruction may include, for example, text information that instructs the LLM to output the answer desired by the user. The text information of the prompt may include, for example, the following: "I am XX. Please explain △△ in □□ characters or less." The various types of data may include, for example, document data, image data, video data, or audio data.
[0064] The "Prompt" field may, for example, store the most recent (last updated) prompt among those that have been edited, but is not limited to this; it may store all edited prompts. Furthermore, each edited prompt may be stored in a separate row with a different prompt ID.
[0065] The item "Prompt" may, for example, store reference information (path) to a prompt file stored in another memory area.
[0066] The "Version" field stores the version corresponding to the updated prompt. For example, the "Version" field shows the version (latest version) of the currently set (last updated) prompt. If the "Prompt" field stores all edited prompts, the "Version" field may store the version corresponding to all edited prompts.
[0067] The "Update Date and Time" field stores the update date and time of updated prompts. For example, the "Update Date and Time" field shows the update date and time (latest update date and time) of the currently set (last updated) prompt. If the "Prompt" field stores all edited prompts, the "Update Date and Time" field may store the update date and time corresponding to all edited prompts.
[0068] The creator field is a record of the user who created (updated) the configured prompt.
[0069] <3 Operation> The operation of server 20 when a user uses AI chat will be explained.
[0070] Figure 5 is a flowchart illustrating an example of the operation of the server 20 when a user uses AI chat. In the explanation of Figure 5, the server 20 is shown as an example of inputting a prompt into the LLM to obtain a desired response. However, this embodiment is not limited to this and can be applied when inputting prompts into various generating AIs.
[0071] First, a user who wants to use the AI chat accesses the server 20 by operating the terminal device 10. The user logs into the AI chat service provided by the server 20 by, for example, entering their user ID and password into the terminal device 10.
[0072] In step S11, the server 20 accepts a prompt selection from the user. Specifically, the prompt management module 2033, for example via the presentation control module 2034, displays a plurality of pre-configured prompts on the display 141 of the terminal device 10. The pre-configured prompts are not limited to, for example, the initially set prompts (standard prompts), but may also include prompts that have been previously edited and updated. The prompt management module 2033 accepts a selection from the user for one of the displayed prompts, for example via the reception control module 2031. The selected prompt includes an instruction to cause the LLM to generate the answer desired by the user.
[0073] In step S12, the server 20 accepts the user's edit of the prompt. Specifically, the prompt management module 2033, for example via the presentation control module 2034, displays the editing screen for the selected prompt on the display 141 of the terminal device 10. The prompt management module 2033 accepts the edited content entered by the user on the editing screen, for example via the reception control module 2031. The edited content includes, for example, text information arbitrarily edited by the user and instructions to cause the LLM to generate a more appropriate response desired by the user.
[0074] In step S13, the server 20 sends the user-edited prompt to the LLM system 30. Specifically, the prompt management module 2033 sends the user-edited prompt to the LLM system 30, for example, via the transmission control module 2032.
[0075] In step S14, the server 20 receives the desired response from the LLM system 30. Specifically, the LLM system 30 generates and outputs the response desired by the user based on the input prompt. The prompt management module 2033 receives the desired response output from the LLM system 30, for example, via the receive control module 2031.
[0076] If the prompt edited in step S15 meets predetermined requirements (i.e., if the answer in step S15 is Yes), in step S16, the server 20 updates the pre-configured prompt with the edited prompt. Specifically, the prompt management module 2033, for example via the presentation control module 2034, proposes updating the pre-configured prompt with the edited prompt if the edited prompt meets predetermined requirements. That is, the prompt management module 2033, for example via the presentation control module 2034, displays a confirmation screen on the display 141 of the terminal device 10 asking whether or not to update with the edited prompt. If the user accepts the update proposal, the prompt management module 2033 updates the pre-configured prompt with the edited prompt. At this time, the prompt management module 2033 updates the "Prompt" item in the prompt table 2021, and also changes the "Version" and "Update Date and Time" items. If the user does not accept the update proposal, the subsequent flow is not performed.
[0077] Here, the prompt management module 2033 proposes, for example, via the presentation control module 2034, to update a pre-set prompt with the edited prompt if the same edit is performed on the prompt a predetermined number of times, assuming that certain requirements are met. The same edit on a prompt is not limited to, for example, an exact match, but may also include a partial match. The predetermined number of edits may include, for example, when the total number of edits reaches a predetermined number, when the number of edits reaches a predetermined number within a predetermined period, or when the same edit is performed consecutively.
[0078] Furthermore, the prompt management module 2033 proposes, for example, via the presentation control module 2034, to update a pre-set prompt with the edited prompt if a predetermined number of similar edits are made to the prompt, provided that certain requirements are met. Similar edits to a prompt are not limited to identical edits, but may include similar edits (edits expressing the same idea, etc.).
[0079] In step S17, the server 20 manages the updated prompts. Specifically, the prompt management module 2033 manages the versions of pre-configured prompts and updated prompts as an update history. The prompt management module 2033 may manage the versions of prompts by updating the prompt table 2021, for example. Alternatively, the prompt management module 2033 may manage the versions as a management tree, for example. The management tree is a data structure that manages all or some of the prompts that have been updated in the past, divided into lower levels by version. Details of the management tree will be described later. The management tree is generated based on the data in the prompt table 2021. The prompt management module 2033 may manage all past versions, for example, or manage versions edited within the most recent predetermined period. The prompt management module 2033 may present the managed versions of prompts to the user as a management screen, for example.
[0080] On the other hand, if the prompt edited in step S15 does not meet the predetermined requirements (in the case of No in step S15), the prompt will not be updated or managed in steps S16 and S17.
[0081] <4. Screen Examples> Figure 6 is a schematic diagram showing an example of the display screen of the display 141 of the terminal device 10. Figure 6 shows, for example, the confirmation screen for the prompt update in step S16 shown in Figure 5.
[0082] The screen shown in Figure 6 includes the first region 1411, the second region 1412, and the third region 1413.
[0083] The first area 1411 is, for example, the area where the prompt before editing (a pre-set prompt) is displayed. The second area 1412 is, for example, the area where the prompt after editing is displayed. Here, for example, "within □□ characters" has been edited to "within ●● characters".
[0084] The third area 1413 is an area where operation buttons are displayed. These operation buttons may include, for example, an update button and a do not update button. The update button is a button that allows the user to agree to update the pre-edit prompt with the post-edit prompt. On the other hand, the do not update button is a button that does not allow the user to agree to update the pre-edit prompt with the post-edit prompt.
[0085] The user checks the information displayed in the first area 1411 and the second area 1412 and decides whether to update the pre-edit prompt with the post-edit prompt. The operation reception unit 191 receives instructions corresponding to the operation buttons pressed by the user.
[0086] Figure 7 is a schematic diagram showing another example of the display screen of the display 141 of the terminal device 10. Figure 7 shows, for example, the management screen (management tree) of the prompt in step S17 shown in Figure 5.
[0087] The screen shown in Figure 7 includes the first region 1421.
[0088] The first area 1421 is, for example, an area where the prompt update history is displayed. Figure 7 shows an example where the prompt management tree is displayed as the update history. The management tree is, for example, a data structure that manages all or some of the prompts that have been updated in the past, divided into lower levels by version.
[0089] Specifically, the management tree, for example, includes the pre-update (version V0) prompt "AAAA" in the first level, which is a higher level. The management tree, for example, includes the version V1 prompt "AAAB" and the version V2 prompt "BAAAA" in the second level, which is a lower level of the first level. Version V1 and version V2 may be distinguished, for example, by differences in the instruction text and various data included in the prompt. The management tree, for example, includes the version V1-1 prompt "AAAb1" and the version V1-2 prompt "AAAb2" in the third level, which is a lower level of version V1. Version V1-1 and version V1-2 may be distinguished, for example, by differences in some of the data among the instruction text and various data included in the prompt. Similarly, the management tree, for example, includes the version V2-1 prompt "BAAb1" and the version V2-2 prompt "BAAb2" in the third level, which is a sub-level of version V2.
[0090] For example, the user may review the management tree, which is the update history displayed in the first area 1421, and select the desired version of the prompt from the management tree to have the LLM generate the desired answer.
[0091] <5 Modification> Figure 8 is a flowchart showing a first modification of the operation of the server 20 when a user uses AI chat. In the above embodiment, the prompt was updated when the prompt met predetermined requirements, but it is not limited to this. The server 20 may update the prompt, for example, when instructed by the user.
[0092] First, a user who wants to use the AI chat accesses the server 20 by operating the terminal device 10. The user logs into the AI chat service provided by the server 20 by, for example, entering their user ID and password into the terminal device 10.
[0093] In step S11, the server 20 accepts a prompt selection from the user.
[0094] In step S12, the server 20 accepts an edit request from the user.
[0095] In step S13, the server 20 sends the user-edited prompt to the LLM system 30.
[0096] In step S14, the server 20 receives the desired response from the LLM system 30.
[0097] If the server 20 receives instructions from the user in step S21 (if the answer to step S21 is Yes), in step S16, the server 20 updates the pre-configured prompt with the edited prompt. Specifically, the prompt management module 2033 receives instructions from the user, for example, via the receiving control module 2031, to update the pre-configured prompt with the edited prompt. The user can give instructions to update by operating the terminal device 10, for example, regardless of whether the server 20 has suggested updating. In this example, the server 20 receives instructions to update the prompt in conjunction with editing the prompt when using AI chat, but it may also receive instructions to edit and update the prompt at times other than when using AI chat. In this case, the prompt management module 2033 updates the "Prompt" item in the prompt table 2021, for example, and also changes the "Version" item and the "Update Date and Time" item.
[0098] In step S17, the server 20 manages the updated prompts.
[0099] On the other hand, if there is no instruction from the user in step S21 (in the case of No in step S21), the prompts in steps S16 and S17 will not be updated or managed.
[0100] Figure 9 is a flowchart showing a second modified example of the operation of the server 20 when a user uses the AI chat. In the above embodiment, when accepting a prompt edit, the user entered the edit content on the editing screen, but this embodiment is not limited to this. For example, the server 20 may accept a prompt edit by presenting a version of the prompt managed as an update history and allowing the user to select one.
[0101] First, a user who wants to use the AI chat accesses the server 20 by operating the terminal device 10. The user logs into the AI chat service provided by the server 20 by, for example, entering their user ID and password into the terminal device 10.
[0102] In step S11, the server 20 accepts a prompt selection from the user.
[0103] In step S12, the server 20 accepts an edit request from the user.
[0104] In step S31, the server 20 presents the prompt version. Specifically, the prompt management module 2033, for example via the presentation control module 2034, displays the prompt versions managed as update history on the display 141 of the terminal device 10. The prompt management module 2033 may also, for example via the presentation control module 2034, display the prompt versions as a management tree (screen example in Figure 7) on the display 141 of the terminal device 10. The prompt versions may include, for example, all past versions, or may include versions edited within the most recent predetermined period.
[0105] In step S32, the server 20 accepts the selection of a prompt version. Specifically, the prompt management module 2033 accepts the user's selection of one of the displayed prompt versions via the receive control module 2031. The selected prompt version includes instructions for the LLM to generate the response desired by the user.
[0106] In step S13, the server 20 sends the user-edited prompt to the LLM system 30.
[0107] In step S14, the server 20 receives the desired response from the LLM system 30.
[0108] If the prompt edited in step S15 meets the predetermined requirements (i.e., the answer in step S15 is Yes), in step S16, the server 20 updates the pre-configured prompt with the edited prompt.
[0109] In step S17, the server 20 manages the updated prompts.
[0110] On the other hand, if the prompt edited in step S15 does not meet the predetermined requirements (in the case of No in step S15), the prompt will not be updated or managed in steps S16 and S17.
[0111] Figure 10 is a flowchart showing a third modified example of the operation of the server 20 when a user uses the AI chat. In the above embodiment, when accepting a prompt edit, it was accepted by entering the edit content on the editing screen, but this embodiment is not limited to this. The server 20 may, for example, accept a prompt edit based on the prompts of other users that are managed as an update history.
[0112] First, a user who wants to use the AI chat accesses the server 20 by operating the terminal device 10. The user logs into the AI chat service provided by the server 20 by, for example, entering their user ID and password into the terminal device 10.
[0113] In step S11, the server 20 accepts a prompt selection from the user.
[0114] In step S12, the server 20 accepts an edit request from the user.
[0115] In step S41, the server 20 accepts a request to view other users' prompts. Specifically, the prompt management module 2033 accepts a request to view other users' prompts from the user, for example, via the receive control module 2031. Other users' prompts are managed, for example, as an update history in the prompt table 2021. Other users' prompts may also be managed, for example, by version. The versions of other users' prompts may be managed as a management tree.
[0116] Other users may, for example, impose viewing restrictions on users requesting viewing. Other users may, for example, allow users to view prompts if they have a predetermined relationship with the user. A predetermined relationship includes, for example, a relationship where the user and the other user are friends, or a follow / follower relationship. In addition, other users may be able to arbitrarily set the range of prompts they are allowed to view.
[0117] In step S42, the server 20 presents the prompt of the other user. Specifically, the prompt management module 2033, for example via the presentation control module 2034, displays the requested prompt of the other user on the display 141 of the terminal device 10. The other user's prompt management module 2033 may, for example via the presentation control module 2034, display the version of the other user's prompt on the display 141 of the terminal device 10. The other user's prompt management module 2033 may, for example via the presentation control module 2034, display the versions of the other user's prompt as a management tree on the display 141 of the terminal device 10. The versions of the other user's prompt may, for example, include all past versions, or may include versions edited within the most recent predetermined period.
[0118] In step S43, the server 20 accepts the selection of another user's prompt. Specifically, the prompt management module 2033 accepts the user's selection of one of the displayed prompts from another user via the receive control module 2031. The selected prompt from another user includes instructions for the LLM to generate the response desired by the user.
[0119] In step S13, the server 20 sends the user-edited prompt to the LLM system 30.
[0120] In step S14, the server 20 receives the desired response from the LLM system 30.
[0121] If the prompt edited in step S15 meets the predetermined requirements (i.e., the answer in step S15 is Yes), in step S16, the server 20 updates the pre-configured prompt with the edited prompt.
[0122] In step S17, the server 20 manages the updated prompts.
[0123] On the other hand, if the prompt edited in step S15 does not meet the predetermined requirements (in the case of No in step S15), the prompt will not be updated or managed in steps S16 and S17.
[0124] The first to third variations described above can be combined and applied as appropriate.
[0125] Furthermore, although the above embodiment describes an example of how each function is provided by the terminal device 10 or the server 20, the embodiment is not limited to this configuration, and some or all of the functions may be provided by the terminal device 10, the server 20, or both the terminal device 10 and the server 20 in a configuration different from that of the above embodiment.
[0126] <6 Summary> As described above, in this embodiment, the prompt management module 2033 accepts a user's selection of one of a plurality of pre-set prompts. The prompt management module 2033 accepts the user's edits to the selected prompt. The prompt management module 2033 inputs the edited prompt to the generation AI and causes the generation AI to output the desired response. If the edited prompt satisfies predetermined requirements, the prompt management module 2033 updates the pre-set prompts with the edited prompt. This personalizes the prompts according to the user, eliminates the need for the user to input prompts, and reduces the effort required when using the generation AI.
[0127] Furthermore, in this embodiment, the prompt management module 2033 proposes updating a pre-set prompt with the edited prompt if the edited prompt meets predetermined requirements. In the updating step, the prompt management module 2033 updates the pre-set prompt with the edited prompt if the user accepts the proposal. This allows the prompt to be updated upon user acceptance, making it easy for the user to obtain the desired response from the generating AI.
[0128] Furthermore, in this embodiment, the prompt management module 2033 proposes that, in the proposed step, if the same edit is performed on a prompt a predetermined number of times, it will update the pre-set prompt with the edited prompt. This makes it possible to propose updating prompts that are frequently used by the user, thereby reducing the effort required when using the generation AI.
[0129] Furthermore, in this embodiment, the prompt management module 2033 proposes that, in the proposed step, if a predetermined number of similar edits are made to a prompt, it updates the pre-set prompt with the edited prompt. This makes it possible to propose updating prompts that are frequently used by the user, including similar ones, and further reduces the effort required when using the generation AI.
[0130] Furthermore, in this embodiment, the prompt management module 2033 updates the pre-configured prompts with the edited prompts when instructed by the user during the update step. This allows prompt updates to be performed according to the user's wishes, regardless of whether prompt updates have been suggested. For example, prompts that have been used infrequently in the past but are expected to be used frequently in the future can be easily updated.
[0131] Furthermore, in this embodiment, the prompt management module 2033 manages the versions of pre-set prompts and updated prompts. This allows for the management of updated prompt versions as an update history, and makes it easy to obtain user update information.
[0132] Furthermore, in this embodiment, the prompt management module 2033 manages the pre-configured prompts and updated prompt versions as a management tree during the management steps. This allows the user to easily understand the update information visually.
[0133] In this embodiment, the prompt management module 2033 presents the user with a version. The prompt management module 2033 accepts the user's selection of a version. In the update step, the prompt management module 2033 updates with the selected version. This allows the user to select a prompt from the managed prompt versions that will provide the desired response from the generation AI, thereby reducing the effort required when using the generation AI.
[0134] Furthermore, in this embodiment, the prompt management module 2033 receives a request from the user to view the prompts of other users. The prompt management module 2033 presents the requested prompts of other users to the user. The prompt management module 2033 accepts the user's selection of the presented prompts of other users. In the update step, the prompt management module 2033 updates with the selected prompt of the other user. This makes it possible to select a prompt from the managed versions of other users' prompts that will generate the desired answer from the generation AI, thereby reducing the effort required when using the generation AI.
[0135] <7 Basic Hardware Configuration of a Computer> Figure 11 is a block diagram showing the basic hardware configuration of computer 90. Computer 90 includes at least a processor 91, main memory 92, auxiliary memory 93, and a communication IF 99 (interface). These are electrically connected to each other by a bus.
[0136] The processor 91 is hardware for executing the instruction set described in the program. The processor 91 consists of an arithmetic unit, registers, peripheral circuits, etc.
[0137] The main memory 92 is for temporarily storing programs and data processed by programs, etc. For example, it is a volatile memory such as DRAM (Dynamic Random Access Memory).
[0138] The auxiliary storage device 93 is a storage device for storing data and programs. Examples include flash memory, HDD (Hard Disc Drive), magneto-optical disk, CD-ROM, DVD-ROM, semiconductor memory, etc.
[0139] A communication IF99 is an interface for inputting and outputting signals for communication with other computers via a network using wired or wireless communication standards.
[0140] A network consists of various mobile communication systems, such as the Internet, LANs, and wireless base stations. For example, a network includes 3G, 4G, and 5G mobile communication systems, LTE (Long Term Evolution), and wireless networks that can connect to the Internet via designated access points (e.g., Wi-Fi®). When connecting wirelessly, communication protocols include, for example, Z-Wave®, ZigBee®, and Bluetooth®. When connecting via a wired connection, the network also includes connections made directly via USB (Universal Serial Bus) cables, etc.
[0141] Furthermore, by distributing all or part of each hardware configuration across multiple computers 90 and connecting them to each other via a network, a computer 90 can be virtually realized. Thus, the concept of computer 90 includes not only a computer 90 housed in a single enclosure or case, but also a virtualized computer system.
[0142] <8 Basic Functional Configuration of Computer 90> The functional configuration of the computer realized by the basic hardware configuration of computer 90 shown in Figure 10 will be explained. The computer comprises at least one functional unit: a control unit, a storage unit, and a communication unit.
[0143] Furthermore, the functional units of computer 90 can also be realized by distributing all or part of each functional unit across multiple computers 90 interconnected via a network. The concept of computer 90 includes not only a single computer 90 but also a virtualized computer system.
[0144] The control unit is realized when the processor 91 reads various programs stored in the auxiliary storage device 93, loads them into the main memory device 92, and executes processing according to the program. The control unit can realize various functional units that perform information processing depending on the type of program. In this way, the computer is realized as an information processing device that performs information processing.
[0145] The memory unit is implemented by a main memory 92 and an auxiliary memory 93. The memory unit stores data, various programs, and various databases. The processor 91 can also reserve memory areas corresponding to the memory unit in the main memory 92 or the auxiliary memory 93 according to the program. The control unit can also cause the processor 91 to perform addition, update, and deletion operations on data stored in the memory unit according to the various programs.
[0146] A database, specifically a relational database, is used to manage and link data sets called tables, which are structurally defined by rows and columns. In a database, tables are called tables, the columns of a table are called columns, and the rows of a table are called records. In a relational database, relationships can be established and linked between tables.
[0147] Typically, each table has a key column to uniquely identify records, but setting a key on a column is not mandatory. The control unit can instruct the processor 91 to add, delete, or update records in a specific table stored in the memory unit, according to various programs.
[0148] The communication unit is implemented by the communication IF 99. The communication unit implements the function of communicating with other computers 90 via the network. The communication unit can receive information transmitted from other computers 90 and input it to the control unit. The control unit can cause the processor 91 to perform information processing on the received information according to various programs. The communication unit can also transmit information output from the control unit to other computers 90.
[0149] Furthermore, each of the above-mentioned configurations, functions, processing units, processing means, etc., may be implemented in hardware, in whole or in part, for example, by designing them as integrated circuits. The present invention can also be implemented by software program code that realizes the functions of the embodiment. In this case, a storage medium on which the program code is recorded is provided to a computer, and the processor of that computer reads the program code stored in the storage medium. In this case, the program code read from the storage medium itself realizes the functions of the embodiment described above, and the program code itself and the storage medium on which it is stored constitute the present invention. Examples of storage media used to supply such program code include flexible disks, CD-ROMs, DVD-ROMs, hard disks, SSDs, optical disks, magneto-optical disks, CD-Rs, magnetic tapes, non-volatile memory cards, ROMs, and the like.
[0150] Furthermore, the program code that implements the functions described in this embodiment can be implemented in a wide range of programming or scripting languages, such as assembler, C / C++, Perl, Shell, PHP, and Java®.
[0151] Furthermore, the program code for the software that implements the functions of the embodiment may be distributed via a network and stored in a storage means such as a computer's hard disk or memory, or in a storage medium such as a CD-RW or CD-R, and the computer's processor may read and execute the program code stored in the storage means or storage medium.
[0152] The functions realized by the components described herein may be implemented in a circuit or processing circuitry, including general-purpose processors, application-specific processors, integrated circuits, ASICs (Application Specific Integrated Circuits), CPUs (a Central Processing Unit), conventional circuits, and / or combinations thereof, programmed to realize the functions described herein. A processor is considered to be a circuit or processing circuitry, including transistors and other circuits. A processor may be a programmed processor that executes a program stored in memory.
[0153] In this specification, circuitry, unit, and means are hardware programmed to perform or execute the functions described herein. Such hardware may be any hardware disclosed herein, or any hardware known to be programmed to perform or execute the functions described herein.
[0154] If the hardware is a processor that is considered to be a type of circuitry, then the circuitry, means, or unit is a combination of hardware and software used to constitute the hardware and / or processor.
[0155] While several embodiments of this disclosure have been described above, these embodiments can be implemented in a variety of other forms, and various omissions, substitutions, and modifications are permitted without departing from the spirit of the invention. These embodiments and their variations are included in the scope and spirit of the invention, as well as in the claims and their equivalents.
[0156] (Note) The matters described in each of the above embodiments are noted below.
[0157] (Note 1) A program for execution on a computer having a processor and memory, the program causing the processor to perform the following steps: receiving a user's selection of one of a plurality of pre-set prompts; receiving the user's edit of the selected prompt; inputting the edited prompt into a generating AI and causing the generating AI to output a desired response; and updating the pre-set prompt with the edited prompt if the edited prompt satisfies predetermined requirements.
[0158] (Note 2) The program described in (Note 1), wherein if the edited prompt satisfies predetermined requirements, the program causes the processor to perform the step of proposing to update the pre-set prompt with the edited prompt, and in the updating step, if the user accepts the proposal, the program updates the pre-set prompt with the edited prompt.
[0159] (Note 3) The program described in (Note 2), which, in the proposed step, proposes updating the pre-set prompt with the edited prompt if the same edit is performed on the prompt a predetermined number of times.
[0160] (Appendix 4) The program described in (Appendix 2), which, in the proposed step, proposes updating the pre-set prompt with the edited prompt if the same editing is performed on the prompt a predetermined number of times.
[0161] (Note 5) The program described in (Note 1) which, in the updating step, updates the pre-set prompt with the edited prompt when instructed by the user.
[0162] (Note 6) The program described in (Note 1) that causes the processor to perform the step of managing the pre-set prompt and the updated version of the prompt.
[0163] (Note 7) The program described in (Note 6) that manages the pre-set prompts and the updated versions of the prompts as a management tree in the management step described above.
[0164] (Appendix 8) The program described in (Appendix 6), which causes the processor to perform the steps of presenting the version to the user and accepting the user's selection of the version, and in the update step, updates with the selected version.
[0165] (Note 9) The program described in (Note 1), wherein the processor is made to perform the steps of: receiving a request from the user to view another user's prompt; presenting the other user's prompt that was requested to be viewed to the user; and receiving a selection from the user regarding the presented other user's prompt, and in the updating step, updating with the selected other user's prompt.
[0166] (Note 10) A method to be performed on a computer comprising a processor and memory, wherein the processor performs all steps performed in any of the inventions described in (Note 1) to (Note 9).
[0167] (Note 11) An information processing apparatus comprising a control unit and a storage unit, wherein the control unit performs all steps performed in any of the inventions described in (Note 1) to (Note 9).
[0168] (Note 12) A system comprising means for performing all steps performed in any of the inventions described in (Note 1) to (Note 9).
[0169] 1...System 10...User terminal 12...Communication interface 13...Input device 14...Output device 15...Memory 16...Storage 19...Processor 20...Server 22...Communication interface 23...Input / Output interface 25...Memory 26...Storage 29...Processor
Claims
1. A program for execution on a computer having a processor and memory, the program causing the processor to perform the following steps: receiving a user's selection of one of a plurality of pre-set prompts; receiving the user's edit of the selected prompt; inputting the edited prompt into a generating AI and causing the generating AI to output a desired response; and updating the pre-set prompt with the edited prompt if the edited prompt satisfies predetermined requirements.
2. The program according to claim 1, wherein if the edited prompt satisfies predetermined requirements, the program causes the processor to perform the step of proposing to update a pre-set prompt with the edited prompt, and in the updating step, if the user accepts the proposal, the program updates the pre-set prompt with the edited prompt.
3. The program according to claim 2, wherein, in the proposed step, if the same edit is performed on the prompt a predetermined number of times, the program proposes updating the pre-set prompt with the edited prompt.
4. The program according to claim 2, wherein, in the proposed step, if the same editing is performed on the prompt a predetermined number of times, the program proposes updating the pre-set prompt with the edited prompt.
5. The program according to claim 1, wherein, in the updating step, if instructed by the user, the program updates the pre-set prompt with the edited prompt.
6. The program according to claim 1, which causes the processor to perform the step of managing the pre-set prompt and the updated version of the prompt.
7. The program according to claim 6, wherein in the management step, the pre-set prompts and the updated versions of the prompts are managed as a management tree.
8. The program according to claim 6, wherein the processor is made to perform the steps of presenting the version to the user and accepting a selection from the user for the version, and in the updating step, the program is updated with the selected version.
9. The program according to claim 1, wherein the processor is made to perform the steps of: receiving a request from the user to view another user's prompt; presenting the other user's prompt that was requested to be viewed to the user; and receiving a selection from the user regarding the presented other user's prompt, and in the updating step, updating with the selected other user's prompt.
10. A method to be performed on a computer comprising a processor and memory, wherein the processor performs all steps performed in any of the inventions according to claims 1 to 9.
11. An information processing apparatus comprising a control unit and a storage unit, wherein the control unit performs all steps performed in the invention according to any one of claims 1 to 9.
12. A system comprising means for performing all steps performed in the invention according to any one of claims 1 to 9.