Programs, information processing devices, terminal devices, methods, and systems
The system addresses generative AI's inaccuracies by granting access to reliable databases and generating prompts within user-defined scopes, ensuring accurate answers.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- OPTIM
- Filing Date
- 2025-07-11
- Publication Date
- 2026-04-17
AI Technical Summary
Generative AI often generates inaccurate answers due to 'hallucination' when faced with limited information sources, particularly specialized information not publicly available on the Internet.
A system that grants users access rights to a database of reliable information sources, extracts relevant information based on user queries, and generates prompts for the AI to provide answers within the scope of accessible data, ensuring accuracy.
Enables users to obtain accurate information by suppressing hallucination and providing answers based on trusted, purchased information sources.
Smart Images

Figure 0007847403000001_ABST
Abstract
Description
Technical Field
[0001] This disclosure relates to programs, information processing devices, terminal devices, methods, and systems.
Background Art
[0002] In recent years, the development of technologies utilizing generative AI (large language models) has been active. Since generative AI can generate answers in natural language to questions from users, it is expected to be applied in various fields.
[0003] Patent Document 1 describes a technique related to text generation using a language model.
Prior Art Documents
Patent Documents
[0004]
Patent Document 1
Summary of the Invention
Problems to be Solved by the Invention
[0005] Since generative AI generates answers based on knowledge learned from a vast amount of data, it is a very convenient tool. However, the answers are not always accurate, and a phenomenon called "hallucination," where it generates information that does not conform to facts or context, has become an issue. In particular, it has been difficult to obtain accurate answers based on limited information sources such as specialized information or the content of specific books not publicly available on the Internet.
[0006] The objective of this disclosure is to enable a user to obtain information desired by the user with high precision when using generative AI.
Means for Solving the Problems
[0007] To solve the above problems, a program according to one aspect of the present disclosure is a program for operating a computer comprising a processor and memory, and causes the processor to execute the following steps: granting a user access rights to a database storing a predetermined set of information; receiving a query from a terminal operated by the user who has been granted access rights; extracting information related to the query from the set of information to which the user has access rights; generating a prompt for a generating AI to generate an answer based on the query and the extracted information; inputting the prompt to the generating AI to obtain an answer; and presenting the obtained answer to the terminal. [Effects of the Invention]
[0008] According to this disclosure, it is possible to obtain information desired by the user with high accuracy using generative AI. [Brief explanation of the drawing]
[0009] [Figure 1] This is a block diagram showing an example of the overall configuration of the information provision system 1 according to this embodiment. [Figure 2] This is a block diagram showing an example of the functional configuration of the terminal device 10. [Figure 3] This block shows a functional configuration example for server 20. [Figure 4] This figure shows an example of the data structure for the Books Table 2021. [Figure 5] This figure shows an example of the data structure for the Access Rights Table 2022. [Figure 6] This flowchart shows an example of the access granting process flow according to this embodiment. [Figure 7] This flowchart shows an example of the information provision process flow according to this embodiment. [Figure 8] This figure shows an example of a screen displayed on terminal device 10. [Figure 9] A block diagram showing the basic hardware configuration of Computer 90. [Modes for carrying out the invention]
[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 that yields an output for a given input. This information can be data with 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 structure 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] In the following description, the "program" may be used as the subject to describe the processing. However, since the program performs the defined processing as appropriate by being executed by a processor while using a storage unit and / or an interface unit, etc., the subject of the processing may be the processor (or a device such as a controller having the processor).
[0016] The program may be installed in a device such as a computer, or may be, for example, in a program distribution server or a computer-readable (e.g., non-transitory) recording medium. In the following description, two or more programs may be realized as one program, or one program may be realized as two or more programs.
[0017] In the following description, an identification number is used as the identification information for various objects, but identification information of other types (e.g., an identifier including letters or symbols) may be adopted.
[0018] In the following description, when explaining without distinguishing between elements of the same type, reference signs (or common signs among the reference signs) are used, and when explaining by distinguishing between elements of the same type, the identification numbers (or reference signs) of the elements may be used.
[0019] In the following description, the control lines and information lines indicate those considered necessary for the description, and not necessarily all the control lines and information lines are shown on the product. All the components may be interconnected.
[0020] Each information processing device is constituted by a computer having an arithmetic unit and a storage unit. The basic hardware configuration of the computer and the basic functional configuration of the computer realized by the hardware configuration will be described later. For each of the terminal device 10 and the server 20, descriptions overlapping with the basic hardware configuration of the computer and the basic functional configuration of the computer to be described later are omitted.
[0021] <Overview> The system according to this embodiment generates answers using a generating AI based on reliable information sources such as books purchased by the user. The system accepts the purchase of access rights to the information group via a terminal device operated by the user, and when it receives a query from the terminal, it checks the access rights held by the user. Then, it extracts information related to the query from the information within the scope of the access rights, and creates a prompt for the generating AI based on this extracted information and general information to obtain an answer. This makes it possible to suppress hallucination and provide highly accurate information with clear sources.
[0022] <1. Overall System Configuration> Figure 1 is a block diagram showing an example of the overall configuration of the information provision system 1 according to this embodiment. System 1 is a system that, for example, provides highly accurate answers to user inquiries regarding specific information sources by utilizing generation AI. As shown in Figure 1, system 1 includes a terminal device 10, a server 20, a database 30, and a generation AI system 40. These devices are connected to each other so as to be able to communicate with each other via a network 80 such as the Internet or a LAN (Local Area Network).
[0023] In Figure 1, for the sake of illustration simplicity, an example is shown where System 1 includes one terminal device 10, but it is not limited to this, and in reality, it may include multiple terminal devices 10 for use by multiple users. Similarly, the server 20, database 30, and generation AI system 40 may each consist of a single device or a collection of multiple devices. For example, the multiple functions required to implement Server 20 may be distributed to one or more physical servers depending on the processing capacity of each hardware.
[0024] Terminal device 10 is an information processing device operated by the user. Through this terminal device 10, the user can purchase desired information sets (books, etc.), input queries (questions) to the generation AI system 40, and view the generated answers. Terminal device 10 can be implemented as, for example, a mobile device such as a smartphone or tablet, or a stationary PC (Personal Computer), laptop PC, etc. As shown in Figure 1, terminal device 10 includes a communication IF 12, an input device 13, an output device 14, memory 15, storage 16, and a processor 19. The input device 13 functions as a device for receiving input operations from the user, and the output device 14 functions as a device for outputting information to the user. Through this terminal device 10, the user can purchase desired information sets, input queries to the generation AI system 40, and view the generated answers.
[0025] Server 20 is the core information processing device of this disclosure and centrally manages and controls the information provision services in this system. Server 20 may be, for example, an API (Application Programming Interface) server. Server 20 is implemented by a computer equipped with hardware such as a communication interface (IF), input / output interface (IIF), memory, storage, and a processor. As shown in Figure 1, Server 20 includes a communication interface 22, an IIF 23, memory 25, storage 26, and a processor 29.
[0026] Database 30 stores information that serves as the basis for the generation AI system 40 when generating answers. This information includes, for example, text data or related image data such as specialized books, travel magazines, and company manuals on a specific topic. Each piece of information is tagged with a book ID or similar tag used for access control and managed in predetermined group units.
[0027] The generative AI system 40 is, for example, a cloud server with an LLM (Large Language Model). The generative AI system 40 may be provided as an external cloud service, or it may be an on-premise AI model running on a server within the organization. Also, although Figure 1 shows an example where the generative AI system 40 is independent of the server 20, the server 20 may also be configured to include the functions of the generative AI system 40 (e.g., the LLM).
[0028] LLM (Language Modeling) is a single-modal natural language model built by training on large amounts of text data, and is used for many NLG (Natural Language Generation) tasks, such as generating responses to specific questions, automatically generating sentences, and summarizing text. LLM is an example of a generative AI model. Examples of LLMs include the following: • OpenAI: GPT-4 Google: Gemini 1.5 Flash Anthropic:Claude 3.5Sonnet
[0029] The generation AI system 40 inputs the prompt sent from the server 20 into the LLM and causes the LLM to output a response to the input prompt. The generation AI system 40 then sends the response output from the LLM back to the server 20.
[0030] <2. Configuration of terminal equipment> Figure 2 is a block diagram showing an example of the functional configuration of the terminal device 10. 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.
[0031] 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 an external source and outputs it to the control unit 190.
[0032] 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.
[0033] 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.
[0034] 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 received 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 that audio input to the audio processing unit 17. The speaker 172 converts the audio signal received from the audio processing unit 17 into audio and outputs the audio to the outside of the terminal device 10.
[0035] Camera 160 is a device that receives light using a photodetector and outputs it as a shooting signal.
[0036] 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.
[0037] The storage unit 180 is implemented by, for example, memory 15 and storage 16, and stores data and programs used by the terminal device 10. The storage unit 180 stores, for example, user information 181.
[0038] User information 181 includes, for example, information about the user who uses the terminal device 10. User information includes, for example, the user's name, age, address, date of birth, contact information, etc.
[0039] The control unit 190 is realized when the processor 19 reads a program stored in the memory unit 180 and executes instructions contained in the program. The control unit 190 controls the operation of the terminal device 10. By operating according to the program, the control unit 190 performs the functions of an operation reception unit 191, a transmission / reception unit 192, and a presentation control unit 193.
[0040] The operation reception unit 191 processes instructions or information input from the input device 13. Specifically, for example, the operation reception unit 191 receives information such as user instructions to purchase a set of information or queries input from a touch-sensitive device 131 or the like.
[0041] Furthermore, the operation reception unit 191 receives voice commands input from the microphone 171. Specifically, for example, the operation reception unit 191 receives voice signals input from the microphone 171 and converted into digital signals by the voice processing unit 17.
[0042] The transmitting / receiving unit 192 performs processing to enable the terminal device 10 to send and receive data with an external device such as the server 20 in accordance with a communication protocol. Specifically, for example, the transmitting / receiving unit 192 sends information such as queries entered by the user to the server 20. The transmitting / receiving unit 192 also receives information about the response provided by the server 20.
[0043] The presentation control unit 193 controls the output device 14 to present information provided by the server 20 to the user. Specifically, for example, the presentation control unit 193 displays the response to the query sent from the server 20 and source information on the display 141. The presentation control unit 193 can also output the response sent from the server 20 as audio from the speaker 172.
[0044] <3. Functional Configuration of the Server> Figure 3 shows an example of the functional configuration of server 20. As shown in Figure 3, server 20 performs the functions of a communication unit 201, a storage unit 202, and a control unit 203.
[0045] The communication unit 201 performs processing to enable the server 20 to communicate with an external device such as a terminal device 10 or a generation AI system 40 via the network 80.
[0046] The memory unit 202 stores various data related to the services provided by this system, for example. Specifically, the memory unit 202 stores a book table 2021 that manages the contents of information groups and an access rights table 2022 that manages access rights for each user, etc.
[0047] The control unit 203 is implemented by the processor executing a program stored in the memory unit 202, and controls the operation of the entire server 20. By operating according to the program, the control unit 203 functions as a reception module 2031, an access rights management module 2032, an information extraction module 2033, a prompt generation module 2034, and a presentation control module 2035.
[0048] The reception module 2031 functions as a window for receiving all requests from the terminal device 10. Specifically, the reception module 2031 receives requests for purchasing information sets, question requests including user IDs and queries, etc., as API endpoints, determines the type of request, and distributes the processing to the appropriate subsequent internal module.
[0049] The access rights management module 2032 manages access rights to information sets for each user. When the access rights management module 2032 receives a purchase request, it works in conjunction with payment processing and other processes to associate a specific user ID with the ID of the information set (such as a book ID) and record it in the access rights table 2022. When it receives a query request, it queries the access rights table 2022 based on the user ID included in the request, identifies a list of information sets that the user is permitted to access, and passes it to the information extraction module 2033.
[0050] The information extraction module 2033 is responsible for the search process in Search Enhancement Generation (RAG). Based on the list of accessible information passed from the access rights management module 2032 and the query passed from the reception module 2031, the information extraction module 2033 searches the database 30. This search is limited to the scope of information for which access is permitted. For example, the information extraction module 2033 vectorizes the query and calculates cosine similarity, etc., with the vector data stored in the database 30 to extract multiple text fragments and image data that are semantically related to the content of the query. It also obtains the source of each extracted piece of information (book title, page number, etc.) and passes it to the prompt generation module 2034 and the presentation control module 2035.
[0051] The prompt generation module 2034 dynamically generates prompts for input to the generating AI system 40. The prompt generation module 2034 receives the original query from the reception module 2031 and the extracted information from the information extraction module 2033 as input. It then generates a structured prompt using templates that include strict instructions such as, "Answer the following 'Question' based only on the following 'Related Information'. Your answer must not include knowledge not included in the 'Related Information'," or flexible instructions such as, "Answer the following 'Question' using the following 'Related Information' as the primary basis, supplementing it with your knowledge as needed." For example, a format like "#Instruction{Instruction Content}#Related Information{Extracted Information 1}{Extracted Information 2}#Question{Original Query}" is possible. Here, "#Instruction", "#Related Information", and "#Question" are markers indicating the role of information within the prompt, and "{Instruction Content}", "{Extracted Information 1}", "{Extracted Information 2}", and "{Original Query}" are placeholders that will be replaced with the actual information or query content.
[0052] The presentation control module 2035 generates the final response to the user and sends it to the terminal device 10. The prompt generation module 2034 combines the response obtained from the generation AI system 40 with the source information obtained from the information extraction module 2033. It then formats it into an HTML or similar format so that it can be displayed clearly on the screen of the terminal device 10, and sends it to the terminal device 10 via the communication unit 201. It is also responsible for generating error messages in cases where there are no access rights or when relevant information cannot be found.
[0053] <4. Data Structure> Figure 4 shows an example of the data structure of the book table 2021 stored in database 30. The book table 2021 manages information about books, which is an example of a group of information. This table may consist of items (columns) such as "Title," "Summary," "Attribute Tags," and "Information Body," with "Book ID" as the primary key. "Book ID" is an identifier that uniquely identifies each book and functions as the primary key for database management. "Title" is the title of the book. "Summary" is a concise description that helps the user understand the content. "Attribute Tags" are categories or keywords (e.g., "Travel," "AI") to improve searchability. "Information Body" is the book content itself that forms the basis for generating answers, and includes text data or image data.
[0054] Figure 5 shows an example of the data structure of the access rights table 2022 stored in the storage unit 202 of the server 20. The access rights table 2022 is a data structure for managing access rights to information sets for each user. For example, the "User ID" is used as the primary key, and multiple "Book IDs" to which a single user is permitted to access are associated. This table may further consist of items (columns) such as the "Grant Date" and "Expiration Date" of the access rights. The "User ID" is an identifier that uniquely identifies each user. The "Book ID" is an identifier that identifies the book (information set) to which access is permitted. The "Grant Date" indicates the date on which the access rights were granted to the user, and the "Expiration Date" indicates the date on which the access rights expire. The access rights management module 2032 refers to this table to determine the user's access rights.
[0055] <5. Operation> Next, an example of the operation of the processing in this embodiment will be described in detail, mainly focusing on the operation of each module of the server 20. The processing in this embodiment is broadly composed of two flows: "access rights granting processing," in which the user acquires access rights to the information group, and "information provision processing," in which information is acquired based on those access rights. The following describes each flow with reference to the flowcharts in Figures 6 and 7. <5-1. Granting Access Rights>
[0056] As shown in Figure 6, the access rights granting process first involves receiving payment from the user (step S1). Specifically, when a user purchases a dedicated application corresponding to a particular travel magazine from an application store on the terminal device 10 and pays for it, the reception module 2031 accepts the purchase request. Subsequently, after confirming the completion of payment, the server 20 grants access rights (step S2). The reception module 2031 passes the book ID corresponding to the purchased application and the user's user ID to the access rights management module 2032. Based on the received information, the access rights management module 2032 adds or updates a new record in the access rights table 2022 and grants the user access rights to the book information. <5-2. Information Provision Processing>
[0057] Next, the information provision processing flow will be explained. As shown in Figure 7, when a user enters a query for information retrieval from a dedicated application installed on the terminal device 10, the reception module 2031 of the server 20 receives the query, which includes the user ID (step S3). For subsequent processing, the reception module 2031 passes the received user ID to the access rights management module 2032 and the contents of the query to the information extraction module 2033.
[0058] Next, the access rights management module 2032 checks the user's access rights (step S4). The access rights management module 2032 queries the access rights table 2022 using the user ID received from the reception module 2031 and identifies a list of book IDs to which the user is permitted to access. If no access rights exist, the access rights management module 2032 notifies the presentation control module 2035, and the presentation control module 2035 sends an error notification to the terminal device 10. If access rights exist, the access rights management module 2032 passes the identified list of book IDs to the information extraction module 2033.
[0059] Next, the information extraction module 2033 extracts information related to the query from database 30 as part of the search process in Search Enhancement Generation (RAG) (step S5). Having received the list of accessible book IDs from the access rights management module 2032 and the original query from the reception module 2031, the information extraction module 2033 searches the book table 2021 in database 30. This search is limited to the range of book IDs for which access is permitted. The information extraction module 2033 analyzes the intent of the query and extracts text fragments and other information with high semantic relevance from the information body of the permitted books.
[0060] Next, the prompt generation module 2034 generates a prompt for the generating AI system 40 (step S6). The prompt generation module 2034 combines the original query with the relevant information extracted by the information extraction module 2033 to generate a structured prompt. For example, a prompt in the format of "Please answer the following question using the following information as a reference. Information: '(extracted information)'. Question: '(original query)'" is generated.
[0061] Next, the server 20 uses the generated prompt to obtain a response from the generating AI system 40 (step S7). The server 20 sends the prompt generated in step S6 to the generating AI system 40 and receives the generated response in return.
[0062] Finally, the presentation control module 2035 presents the acquired answer to the user (step S8). Having received the answer from the prompt generation module 2034, the presentation control module 2035 formats the answer in a format suitable for the screen of the terminal device 10. At this time, it adds source information (book title, page number, etc.) received from the information extraction module 2033 to the answer. The formatted final answer is then sent to the terminal device 10 and displayed to the user. This allows the user to obtain an accurate answer based on reliable information, such as the contents of the purchased book. Note that the method of presenting the answer is not limited to text display; it may also be output as speech using speech synthesis.
[0063] <6. Screen Example> Figure 8 shows an example of a user interface screen displayed on the display 141 of the terminal device 10 by a dedicated application according to this embodiment. This screen is the main point of contact for the user to interact with the system. The screen has a text input field 1401 for the user to freely input a question (query) to the generating AI, and a send button 1402 for completing the input and instructing the server 20 to send it. When the user enters a query such as "What are some recommended souvenirs from XX?" into the input field 1401 and operates the send button 1402, the operation reception unit 191 of the terminal device 10 detects this operation. The transmission / reception unit 192 then sends the input query and information identifying the user to the server 20. Once a series of processes (S4 to S7 in Figure 7) in the server 20 and the generating AI system 40 are completed, the generated answer is sent from the presentation control module 2035 of the server 20. The transmission / reception unit 152 of the terminal device 10 receives this, and the presentation control unit 193 displays its contents in the answer display area 1403. The displayed answers include not only the text generated by the generation AI system 40, but also source information 1404 indicating the information source on which it is based (e.g., "From 'Travel Magazine', p. 15"). This source information 1404 is obtained when the information extraction module 2033 of the server 20 extracts the information, allowing the user to directly verify the basis for ensuring the accuracy of the answer.
[0064] <Summary> As described above, the server 20, as an information processing device related to this disclosure, first grants and manages access rights for each user to the database 30, which stores a specific set of information such as books (access rights granting step). Then, when the server 20 receives a query from a terminal device 10 of a user who has access rights, the server 20 extracts information related to the query from the database 30, limited to the set of information that the user is permitted to access (information extraction step). Next, the server 20 uses the Search Enhancement Generation (RAG) method to generate a structured prompt for the generation AI system 40 to generate an answer based on the original query and the extracted information (prompt generation step). Finally, the server 20 inputs this prompt into the generation AI system 40, adds source information (book title and page number) to the answer obtained, and presents it to the terminal device 10 (answer presentation step).
[0065] This sequence of operations ensures that the sources of information on which the generating AI bases its answers are limited to specific books or other materials owned (or on which the user has access) and whose content the user trusts. This effectively suppresses the problem of "hallucination," where the generating AI generates answers based on uncertain information or irrelevant information found on the internet. The user can pinpoint and accurately extract the information they want, as if they were talking to an expert who is intimately familiar with the contents of the book they purchased. Therefore, this disclosure demonstrates that the generating AI can be used to obtain the information the user desires with high accuracy. <7. Variation>
[0066] (A variation on cross-searching of multiple sets of information) The above embodiment describes an example in which a user enters a query in the context of a single set of information (a specific book), but this disclosure is not limited thereto. If a user has access rights to multiple sets of information (for example, a series of travel magazines, or multiple specialist books by the same author), the information extraction module 2033 may search across these multiple sets of information and extract relevant information. In this case, the access rights management module 2032 passes a list of all book IDs to which the user is permitted access to the information extraction module 2033. The information extraction module 2033 searches the information bodies of all books included in that list and extracts information related to the query. This improves convenience, as the user can obtain comprehensive information from all books they have purchased with a single query.
[0067] (Variations regarding standalone operation) In the above embodiment, a client-server system was described in which a terminal device 10 and a server 20 communicate with each other, but the embodiments of this disclosure are not limited thereto. It is also possible to adopt a so-called standalone configuration in which the main processing related to information provision is completed within the terminal device 10.
[0068] In this configuration, the user downloads a dedicated application containing data for a predetermined set of information, such as a specific series of books or magazines, from an application store to the terminal device 10. Alternatively, in response to additional purchases (add-ons) within the application, the corresponding data set is downloaded from a server and stored in the memory unit 180 of the terminal device 10. As a result, the memory of the user's terminal device 10 is in a state of "storing one or more predetermined sets of information" as defined in the present invention.
[0069] When a user enters a query on the application, the processor 19 of the terminal device 10 extracts information related to the query from the information stored in its own memory unit 180 (memory 15, storage 16) without querying an external server. Then, it combines the extracted information with the original query to generate a prompt for the generating AI, obtains the answer, and presents it to the user.
[0070] Here, the generative AI that inputs the prompt may be a small language model (on-device AI) optimized to run on the terminal device 10. In this case, the entire process from query input to answer presentation is completed completely offline, without requiring a network connection. This has the advantage of being usable even in locations with poor communication environments, and also ensures very high security from a privacy perspective, as user queries and reference data are not transmitted externally.
[0071] Alternatively, a configuration utilizing an API provided by an external cloud service as the generating AI is also conceivable. In this case, the terminal device 10 sends only locally generated prompts to the generating AI system 40 via the network and receives a response.
[0072] Thus, a standalone configuration allows for flexible system design depending on the user's usage scenario or privacy requirements.
[0073] <Basic Computer Hardware Configuration> Figure 9 is a block diagram showing the basic hardware configuration of computer 90. Computer 90 includes at least a processor 901, main memory 902, auxiliary storage 903, and a communication interface 991. These are electrically connected to each other by a communication bus 921.
[0074] The processor 901 is hardware for executing the instruction set written in a program. The processor 901 consists of an arithmetic unit, registers, peripheral circuits, etc.
[0075] Main memory 902 is used to temporarily store programs and data processed by programs, etc. For example, it is a volatile memory such as DRAM (Dynamic Random Access Memory).
[0076] Auxiliary storage device 903 refers to a storage device for saving data and programs. Examples include flash memory, HDD (Hard Disc Drive), magneto-optical disk, CD-ROM, DVD-ROM, and semiconductor memory.
[0077] The IF991 communication interface is an interface for inputting and outputting signals for communication with other computers via a network using wired or wireless communication standards. 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.
[0078] 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.
[0079] <Basic Functional Configuration of Computer 90> The functional configuration of the computer realized by the basic hardware configuration of computer 90 (Figure 9) will be explained. The computer comprises at least one functional unit: a control unit, a memory unit, and a communication unit.
[0080] 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.
[0081] The control unit is realized when the processor 901 reads various programs stored in the auxiliary storage device 903, loads them into the main memory device 902, and executes processing according to those programs. 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.
[0082] The memory unit is implemented by the main memory 902 and the auxiliary memory 903. The memory unit stores data, various programs, and various databases. The processor 901 can also reserve memory areas corresponding to the memory unit in the main memory 902 or the auxiliary memory 903 according to the program. The control unit can also cause the processor 901 to perform operations such as adding, updating, and deleting data stored in the memory unit according to the various programs.
[0083] A database, specifically a relational database, is used to manage and link together tabular data sets called masters, which are structurally defined by rows and columns. In a database, tables are called tables, masters are called masters, the columns of tables are called columns, and the rows of tables are called records. In a relational database, relationships can be established and linked between tables and masters. Typically, each table and master has a primary key column to uniquely identify records, but setting a primary key column is not mandatory. The control unit can instruct the processor 901 to add, delete, or update records in specific tables and masters stored in the memory unit, according to various programs. Furthermore, by storing data, various programs, and various databases in the memory unit, the information processing device and information processing system related to this disclosure can be considered to have been manufactured.
[0084] Furthermore, the databases and masters in this disclosure may include any data structures (lists, dictionaries, associative arrays, objects, etc.) in which information is structurally defined. Data structures also include data that can be considered as data structures by combining data with functions, classes, methods, etc., written in any programming language.
[0085] The communication unit is implemented by the communication IF991. The communication unit provides the functionality to communicate 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 901 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.
[0086] Furthermore, each of the above-mentioned configurations, functions, processing units, processing means, etc., may be implemented in hardware, either partially or entirely, by designing them as integrated circuits, for example. 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.
[0087] 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 (registered trademark).
[0088] 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.
[0089] 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. 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. 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.
[0090] 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.
[0091] (Note) The details described in each of the above embodiments are noted below.
[0092] (Note 1) A program for operating a computer that includes a processor and memory, The program is provided to the processor: The steps include granting a user access rights to a database containing a predetermined set of information, The steps include receiving a query from a terminal operated by a user who has been granted the aforementioned access rights, The steps include: extracting information related to the query from the information set to which the user has access rights; A step of generating a prompt to cause the generating AI to generate an answer based on the query and the extracted information, The steps include inputting the prompt into the generating AI to obtain the answer, The steps include presenting the obtained response to the terminal, A program that executes the command. (Note 2) A program for operating a terminal device comprising a processor and memory, The memory stores one or more predetermined groups of information, The program is provided to the processor: Steps to receive queries from users, The steps include: extracting information related to the query from the one or more information groups stored in the memory; A step of generating a prompt to cause the generating AI to generate an answer based on the query and the extracted information, The steps include inputting the prompt into the generating AI to obtain the answer, The steps include presenting the obtained response, A program that executes the command. (Note 3) The granting step includes granting the access rights in exchange for payment of a predetermined fee by the user, as described in (Appendix 1). (Note 4) The program described in (Appendix 2), further comprising the step of downloading one or more sets of information via a network and storing them in memory in response to payment of a predetermined fee from the user. (Note 5) The program described in (Appendix 1) includes, in the extraction step, extracting information related to the query from a plurality of information sets to which the user has access rights. (Note 6) The program described in (Appendix 2) includes, in the extraction step, extracting information related to the query from among a plurality of information groups stored in the memory. (Note 7) The aforementioned information group includes the program described in (Appendix 1) or (Appendix 2), which includes information about books. (Note 8) The program described in (Appendix 1) or (Appendix 2) includes presenting the answer in association with information regarding the source of the extracted information that formed the basis for generating the answer. (Note 9) The program described in (Appendix 1) or (Appendix 2) includes, in addition to outputting the aforementioned answer as audio. (Note 10) An information processing device comprising a control unit and a storage unit, The aforementioned storage unit stores user-specific access rights to a database containing a predetermined set of information. The control unit, The system accepts queries from a terminal operated by a user who has been granted the aforementioned access rights. Information related to the aforementioned query is extracted from the database based on the access rights held by the user. Based on the aforementioned query and the extracted information, a prompt is generated to cause the generating AI to generate an answer. The prompt is input to the generating AI to obtain the answer. The acquired response is displayed on the terminal. Information processing device. (Note 11) A terminal device comprising a processor and memory, The memory stores one or more predetermined groups of information, The aforementioned processor, Accepting queries from users, From the one or more information groups stored in the memory, information related to the query is extracted. Based on the aforementioned query and the extracted information, a prompt is generated to cause the generating AI to generate an answer. The prompt is input to the generating AI to obtain the answer. The above response obtained is presented. Terminal device. (Note 12) A method performed by a computer having a processor and memory, Grant the user access rights to a database containing a predetermined set of information. The system accepts queries from a terminal operated by a user who has been granted the aforementioned access rights. Information related to the query is extracted from the information set to which the user has access rights. Based on the aforementioned query and the extracted information, a prompt is generated to cause the generating AI to generate an answer. The prompt is input to the generating AI to obtain the answer. The acquired response is displayed on the terminal. method. (Note 13) A method executed by a terminal device comprising a processor and a memory storing a predetermined set of information, Accepting queries from users, From the one or more information groups stored in the memory, information related to the query is extracted. Based on the aforementioned query and the extracted information, a prompt is generated to cause the generating AI to generate an answer. The prompt is input to the generating AI to obtain the answer. The above response obtained is presented. method. (Note 14) A means for granting a user access rights to a database containing a predetermined set of information, A means for receiving queries from a terminal operated by a user who has been granted the aforementioned access rights, Means for extracting information related to the query from the information set to which the user has access rights, A means for generating a prompt to cause the generating AI to generate an answer based on the query and the extracted information, A means for inputting the prompt into the generating AI and obtaining the answer, A means for presenting the acquired response to the terminal, A system equipped with these features. (Note 15) A means of receiving queries from users, A means for extracting information related to the query from one or more sets of information stored in memory, A means for generating a prompt to cause the generating AI to generate an answer based on the query and the extracted information, A means for inputting the prompt into the generating AI and obtaining the answer, Means for presenting the obtained response, A system equipped with these features. [Explanation of symbols]
[0093] 1... System 10…Terminal device 12…Communication IF 13…Input device 14…Output device 15…Memory 16…Storage 19… Processor 20... Server 22...Communication IF 23…Input / Output Interface 25…Memory 2 hours… storage 29… Processor 30…Database 40…Generative AI System
Claims
1. A program for operating a computer that includes a processor and memory, The program is provided to the processor: The steps include granting a user access rights to a database containing a predetermined set of information, The steps include receiving a query from a terminal operated by a user who has been granted the aforementioned access rights, The steps include: extracting information related to the query from the information set to which the user has access rights; A step of generating a prompt that instructs the large-scale language model to generate an answer based solely on the extracted information, and not to generate an answer using knowledge not included in the extracted information, based on the query and the extracted information. The steps include inputting the prompt into the large-scale language model and obtaining the response, A program that performs the steps of presenting the obtained response to the terminal.
2. A program for operating a terminal device comprising a processor and memory, The memory stores one or more predetermined sets of information downloaded via the network in response to payment of a predetermined fee from the user. The program is provided to the processor: Steps to receive queries from users, The steps include: extracting information related to the query from the one or more information groups stored in the memory; A step of generating a prompt that instructs the large-scale language model to generate an answer based solely on the extracted information, and not to generate an answer using knowledge not included in the extracted information, based on the query and the extracted information. A program that performs the steps of inputting the aforementioned prompt into the large-scale language model to obtain the aforementioned answer, and presenting the obtained answer.
3. The program according to claim 1, wherein the granting step includes granting the access rights in exchange for payment of a predetermined fee by the user.
4. The program according to claim 1, wherein the extraction step includes extracting information related to the query from a plurality of information sets to which the user has access rights.
5. The program according to claim 2, wherein the extraction step includes extracting information related to the query from a plurality of information groups stored in the memory.
6. The program according to claim 1 or 2, wherein the group of information includes information relating to books.
7. The program according to claim 1 or 2, wherein the step of presenting the answer includes presenting the answer in association with information relating to the source of the extracted information that formed the basis for generating the answer.
8. The program according to claim 1 or 2, wherein the aforementioned step includes outputting the answer as audio.
9. An information processing device comprising a control unit and a storage unit, The aforementioned storage unit stores user-specific access rights to a database containing a predetermined set of information. The control unit, The system accepts queries from a terminal operated by a user who has been granted the aforementioned access rights. Information related to the aforementioned query is extracted from the database based on the access rights held by the user. Based on the query and the extracted information, a prompt is generated that instructs the large-scale language model to generate an answer based solely on the extracted information and not to generate an answer using knowledge not included in the extracted information. The prompt is input to the large-scale language model to obtain the response, An information processing device that displays the acquired response to the terminal.
10. A terminal device comprising a processor and memory, The memory stores one or more predetermined sets of information downloaded via the network in response to payment of a predetermined fee from the user. The aforementioned processor receives queries from the user, From the one or more information groups stored in the memory, information related to the query is extracted. Based on the query and the extracted information, a prompt is generated that instructs the large-scale language model to generate an answer based solely on the extracted information and not to generate an answer using knowledge not included in the extracted information. The prompt is input to the large-scale language model to obtain the response, A terminal device that displays the aforementioned response obtained.
11. A method performed by a computer having a processor and memory, Grant the user access rights to a database containing a predetermined set of information. The system accepts queries from a terminal operated by a user who has been granted the aforementioned access rights. Information related to the query is extracted from the information set to which the user has access rights. Based on the query and the extracted information, a prompt is generated that instructs the large-scale language model to generate an answer based solely on the extracted information and not to generate an answer using knowledge not included in the extracted information. The prompt is input to the large-scale language model to obtain the response, A method for displaying the acquired response to the terminal.
12. A method performed by a terminal device comprising a processor and memory, The memory stores one or more predetermined sets of information downloaded via the network in response to payment of a predetermined fee from the user. The aforementioned method, Accepting queries from users, From the one or more information groups stored in the memory, information related to the query is extracted. Based on the query and the extracted information, a prompt is generated that instructs the large-scale language model to generate an answer based solely on the extracted information and not to generate an answer using knowledge not included in the extracted information. The prompt is input to the large-scale language model to obtain the response, A method for presenting the aforementioned answers obtained.
13. A means for granting a user access rights to a database containing a predetermined set of information, A means for receiving queries from a terminal operated by a user who has been granted the aforementioned access rights, Means for extracting information related to the query from the information set to which the user has access rights, A means for generating a prompt that includes instructions to the large-scale language model to generate an answer based solely on the extracted information and not to generate an answer using knowledge not included in the extracted information, based on the query and the extracted information. A means for inputting the prompt into the large-scale language model and obtaining the response, A system comprising means for presenting the acquired response to the terminal.
14. A means of receiving queries from users, A means for extracting information related to the query from one or more sets of information downloaded via the network and stored in memory in response to payment of a predetermined fee from the user, A means for generating a prompt that includes instructions to the large-scale language model to generate an answer based solely on the extracted information and not to generate an answer using knowledge not included in the extracted information, based on the query and the extracted information. A means for inputting the prompt into the large-scale language model and obtaining the response, A system comprising means for presenting the acquired response.
Citation Information
Patent Citations
Information Processing Apparatus and Information Processing Method
JP7698158B1
Information processing apparatus, control method of information processing apparatus, and program
JP2025013258A
JPP7698158B