Information processing apparatus and information processing method

The edge device simplifies function configuration for end users by using a generation AI and vector DB to identify and set up desired functions through interactive dialogue, addressing the complexity issue and reducing the need for advanced design knowledge.

JP2026018941APending Publication Date: 2026-02-05TOSHIBA TEC KK
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
JP2024120300
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-07-25
Publication Date
2026-02-05

AI Technical Summary

Technical Problem

Existing edge devices are difficult for end users to configure due to complex function settings, hindering their use in on-site surveys and analysis.

Method used

An information processing device equipped with a generation AI (dialogue LLM) and a vector DB, using the RAG method to identify and configure user-desired functions through interactive dialogue, enabling easy function setup without requiring advanced design knowledge.

Benefits of technology

Users can easily configure edge device functions by inputting text or answering questions, preventing unintended function proposals and reducing the need for complex user interfaces, thus simplifying the configuration process.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026018941000001_ABST
    Figure 2026018941000001_ABST
Patent Text Reader

Abstract

To provide an information processor and an information processing method for easily constructing the function of an edge device to be provided to an end user.SOLUTION: According to an embodiment, an information processing apparatus includes a receiving unit, a specifying unit, and a control unit. The reception unit receives an input of request information indicating content of processing desired by a user. According to an aspect of the invention, there is provided an information processing apparatus including a generating AI that generates and outputs information corresponding to input information; and a specifying unit that specifies a function capable of realizing content of a process desired by a user, based on the request information and the information generated by the generating AI. The control unit controls the own device to be in a state where the specified function can be realized.SELECTED DRAWING: Figure 4
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] FIELD Embodiments of the present invention relate to an information processing device and an information processing method. [Background technology]

[0002] Conventionally, edge devices have been used for investigations, analysis, problem solving, etc. that are specific to the user and the environment in which the edge device is used. For this reason, edge devices do not have fixed functions, but rather connect various sensing devices and use functions to process the sensing data (e.g., AI) to realize various functions, and are generally used for investigations and problem solving through solutions.

[0003] Therefore, technologies have been proposed to add or change functions to edge devices by downloading them from a platform, providing APIs as a platform, etc. For example, a flow design tool such as Node-red is used to set the order in which functions are called.

[0004] However, while the above steps are easy for designers and edge device providers, they are often difficult for end users who conduct on-site surveys, analysis, and solution considerations, and this could hinder the use of edge devices. Summary of the Invention [Problem to be solved by the invention]

[0005] The problem to be solved by the present invention is to provide an information processing apparatus and an information processing method that can easily configure the functions of edge devices to be provided to end users. [Means for solving the problem]

[0006] An information processing device according to an embodiment includes a receiving unit, an identifying unit, and a control unit. The receiving unit receives input of request information representing the content of a process desired by a user. The identifying unit receives input information from a storage unit that stores reference information related to functions executable by the device as an information source. The identifying unit inputs input information to a generation AI that generates and outputs information according to the input information, instructing the generation AI to identify a function capable of realizing the content of the process represented in the request information. The identifying unit then identifies a function capable of realizing the content of the process desired by the user based on the output information output by the generation AI. The control unit controls the device to a state in which the identified function can be realized. [Brief explanation of the drawings]

[0007] [Figure 1] FIG. 1 is a schematic diagram showing an example of a schematic configuration of an information processing system according to an embodiment. [Figure 2] FIG. 2 is a block diagram illustrating an example of a hardware configuration of an edge device according to the embodiment. [Figure 3] FIG. 3 is a block diagram illustrating an example of a hardware configuration of an edge server according to the embodiment. [Figure 4] FIG. 4 is a block diagram illustrating an example of a functional configuration of an edge device according to the embodiment. [Figure 5] FIG. 5 is a block diagram illustrating an example of a functional configuration of the edge server according to the embodiment. [Figure 6] FIG. 6 is a flowchart illustrating an example of processing executed by the edge device according to the embodiment. DETAILED DESCRIPTION OF THE INVENTION

[0008] Hereinafter, an information processing device and an information processing method according to an embodiment will be described in detail with reference to the drawings. In the embodiment described below, an edge server installed in a store such as a department store or supermarket will be described as an example of an information processing device, but the present invention is not limited to the embodiment.

[0009] 1 is a schematic diagram showing a schematic configuration of an information processing system S according to an embodiment. As shown in FIG. 1, the information processing system S includes an edge device 1 and an edge server 2.

[0010] The edge device 1 and the edge server 2 are communicatively connected via a network Na such as a LAN (Local Area Network), and the edge server 2 is communicatively connected to a network Nb such as the Internet.

[0011] The number of edge devices 1 connected to the edge server 2 is not limited to the illustrated example.

[0012] The edge device 1 is a device installed in a store. The edge device 1 is also a device used by a user such as a store manager. For example, the edge device 1 may be a smartphone, a tablet terminal, a PC (Personal Computer), or the like.

[0013] For example, the edge device 1 uses a generation AI to have a dialogue with a user, identify a function desired by the user and a setting desired by the user for the function, and executes a process of providing the function to the user.

[0014] The edge server 2 is a server device installed in a store or a data center outside the store. For example, the edge server 2 communicates with the edge device 1 and provides the user with functions that the edge device 1 cannot provide on its own via the edge device 1.

[0015] Next, a description will be given of the hardware configuration of the edge device 1. Fig. 2 is a block diagram showing an example of the hardware configuration of the edge device 1 according to the embodiment.

[0016] As shown in FIG. 2, the edge device 1 includes a CPU (Central Processing Unit) 101, which is an example of a processor, a ROM (Read Only Memory) 102, a RAM (Random Access Memory) 103, and a memory unit 104.

[0017] The CPU 101 comprehensively controls each part of the edge device 1. The ROM 102 stores various programs. The RAM 103 is a workspace where programs and various data are expanded.

[0018] The memory unit 104 is a non-volatile memory such as a hard disk drive (HDD) or flash memory that retains stored information even when the power is turned off. The memory unit 104 includes a control program unit 1041, an interactive LLM 1042, a vector DB 1043, a function providing unit 1044, and a batch file storage unit 1045.

[0019] The control program unit 1041 stores a control program for controlling the edge device 1. The CPU 101, ROM 102, RAM 103, and memory unit 104 are connected to one another via a bus 110. The CPU 101, ROM 102, and RAM 103 constitute a control unit 100 having a computer configuration. That is, the control unit 100 executes a control process for the edge device 1, which will be described later, by the CPU 101 operating in accordance with the control program unit 1041 stored in the ROM 102 or memory unit 104 and expanded in the RAM 103.

[0020] The dialogue LLM 1042 is a generation AI that generates text, such as a large language model (LLM). The dialogue LLM 1042 generates dialogue text for identifying a function desired by a user. Note that, although an LLM is used as the generation AI in this embodiment, the generation AI is not limited to an LLM as long as it is capable of generating text.

[0021] The interactive LLM 1042 is an LLM constructed using known deep learning technology that receives text with specified conditions and outputs text based on the conditions. Here, the conditions may be, for example, reference conditions that serve as references for deriving the output result or constraints that narrow down the output result.

[0022] For example, the dialogue LLM 1042 generates text data such as dialogue text. The dialogue text is text data that describes the name of a function to be provided to the user (hereinafter also referred to as a provided function), a description of the provided function, and a sentence asking whether the provided function is a function desired by the user.

[0023] In addition, the dialogue text may be text data that describes the names of multiple provided functions, descriptions of each of the multiple provided functions, and a sentence asking whether the multiple provided functions include the function the user desires.

[0024] The dialogue LLM 1042 of this embodiment includes an instruction statement that instructs the generation of dialogue text and a request text that indicates the user's request, and generates dialogue text that corresponds to the user's request in response to input of instruction text (hereinafter also referred to as a prompt) with the added condition that the provided function is based on the request text and that the provided function is derived within the range of the information stored in the vector DB 1043.

[0025] The vector DB 1043 is a database that can be referenced by the interactive LLM 1042 based on the RAG (Retrieval-Augmented Generation) method.

[0026] The RAG method uses a Retriever to extract external knowledge, explicitly add the extracted external knowledge to the prompt, and perform in-context learning for the LLM. The Retriever is a system that searches for external knowledge that is closest to the question entered by the system or user based on the surface information and sentence embedding of the sentence.

[0027] It is generally known that the use of the RAG method can improve the performance of the LLM and prevent the generation AI from generating information that is not based on facts (hallucination). Therefore, in this embodiment, the edge device 1 uses the RAG method to prevent the dialogue LLM 1042 from proposing to the user the provision of functions outside the scope of the contents stored in the vector DB 1043.

[0028] In this embodiment, the vector DB 1043 stores, as vectors, documents that indicate how to use various functions that can be used in the edge device 1. The contents of the documents include, for example, a function overview, use cases, download sites, how to call the functions on the command line, questions about setting the functions, and the like.

[0029] The function providing unit 1044 stores data and the like for realizing a function identified using the interactive LLM 1042. The data includes applications, plug-ins, scripts, setting information, and the like for realizing the function. For example, the function providing unit 1044 stores a plurality of independent applications and the like used to realize functions that are frequently desired by users.

[0030] The batch file storage unit 1045 is a file for executing a function desired by the user, specified using the interactive LLM 1042, with the user's desired setting contents (hereinafter also referred to as setting contents). By executing the batch file storage unit 1045, the function specified as the user's desired function is realized.

[0031] The control unit 100 is connected to a communication unit 105, a display unit 106, an operation unit 107, and an imaging unit 108 via a bus 110.

[0032] The communication unit 105 is a communication interface such as a LAN I / F (Interface), and is connected to the network Na. The communication unit 105 transmits and receives various information to and from the edge server 2, for example, via the network Na.

[0033] The display unit 106 is a display device such as an LCD (Liquid Crystal Display), an organic EL (Organic Electro-Luminescence), etc. The display unit 106 displays various information related to the functional configuration of the edge device 1 under the control of the CPU 101.

[0034] The operation unit 107 is realized by, for example, a touch panel or the like. The operation unit 107 accepts various inputs from the user. The operation unit 107 may be an input device such as a keyboard or a pointing device. The operation unit 107 may also accept various inputs from the user via a voice input device (not shown) such as a microphone.

[0035] The imaging unit 108 is an imaging device. The imaging unit 108 includes a solid-state imaging element such as a CCD (Charge Coupled Device) or a CMOS (Complementary MOS). In this embodiment, a plurality of imaging units 108 are provided in the store. For example, the imaging unit 108 captures an image of a customer (visitor) who enters the store.

[0036] Note that components other than those described above may be connected to the control unit 100. For example, in addition to the above, a sensing device such as a temperature sensor, an output device such as a printer, etc. may be connected to the control unit 100. Also, some of the components described above may not be connected to the control unit 100.

[0037] Next, a description will be given of the hardware configuration of the edge server 2. Fig. 3 is a block diagram showing an example of the hardware configuration of the edge server 2 according to the embodiment.

[0038] As shown in FIG. 3, the edge server 2 includes a CPU 201, which is an example of a processor, a ROM 202, a RAM 203, and a memory unit 204.

[0039] The CPU 201 comprehensively controls each unit of the edge server 2. The ROM 202 stores various programs. The RAM 203 is a workspace where programs and various data are expanded.

[0040] The memory unit 204 is a non-volatile memory such as a HDD or flash memory that retains stored information even when the power is turned off. The memory unit 204 includes a control program unit 2041 and a function providing unit 2042.

[0041] The control program unit 2041 stores a control program for controlling the edge server 2. The CPU 201, ROM 202, RAM 203, and memory unit 204 are connected to one another via a bus 206. The CPU 201, ROM 202, and RAM 203 constitute a control unit 200 having a computer configuration. That is, the control unit 200 executes a control process for the edge server 2, which will be described later, by the CPU 201 operating in accordance with the control program unit 2041 stored in the ROM 202 or memory unit 204 and loaded into the RAM 203.

[0042] Returning to FIG. 3, the control unit 200 is connected to the communication unit 205 via a bus 206 .

[0043] The communication unit 205 is a communication interface such as a LAN I / F, and is connected to the networks Na and Nb. The communication unit 205 transmits and receives various information to and from, for example, the edge device 1 and an external server (not shown) via the networks Na and Nb.

[0044] Next, a description will be given of the functional configuration of the edge device 1. Fig. 4 is a block diagram showing an example of the functional configuration of the edge device 1. As shown in Fig. 4, the control unit 100 includes, as functional components, a reception unit 1001, an identification unit 1002, a setting unit 1003, a generation unit 1004, an execution unit 1005, and a communication control unit 1006. Note that the functional configuration of the edge device 1 is not limited to this.

[0045] Specifically, the control unit 100 (CPU 101) of the edge device 1 realizes the above-mentioned functional configuration by executing the control program unit 1041 stored in the memory unit 104. Note that in this embodiment, the above-mentioned functional configuration is a software configuration realized by cooperation between the processor and program of the edge device 1, but is not limited to this, and a hardware configuration in which part or all of the functional configuration is realized by a dedicated circuit or the like may also be used.

[0046] The receiving unit 1001 receives input of request text from the user, which indicates a function desired by the user. The request text is an example of request information.

[0047] For example, when a user instructs the reception unit 1001 to launch an application for configuring the functions of the edge device 1, the reception unit 1001 displays a GUI (Graphical User Interface) for interacting with the user to configure the functions on the display unit 106. As an example, the GUI has a display field for displaying text generated by the interactive LLM 1042 and an input field for the user to input text.

[0048] In this embodiment, the edge device 1 interacts with the user via a GUI, but the edge device 1 may also interact with the user via a CUI (Character User Interface). The edge device 1 may also interact with the user only by voice, without using the display unit 106. In this case, the edge device 1 is provided with a voice input device such as a microphone. The user makes various inputs via the voice input device.

[0049] In parallel with the above processing, the reception unit 1001 inputs text describing an instruction to generate a dialogue start text for starting processing to build a function based on the user's request to the dialogue LLM 1042. This enables the dialogue LLM 1042 to generate the dialogue start text.

[0050] In this embodiment, the dialogue LLM 1042 generates a dialogue start text such as "We will be building a function, so please tell us what you want to do." The reception unit 1001 displays this dialogue start text in the display field described above. The reception unit 1001 then receives, as request text, a sentence entered by the user in the input field for the dialogue start text.

[0051] The text generated by the dialogue LLM 1042 and the user's response to the text are stored in the memory unit 104 and are used by the dialogue LLM 1042 to generate text such as dialogue text.

[0052] As an example, the receiving unit 1001 receives input of a request text from the user saying, "I would like to measure the number of people using a camera."

[0053] The identification unit 1002 inputs, as an information source, a vector DB 1043 that stores reference information related to functions executable by the edge device 1, instruction text that instructs the interaction LLM 1042, which generates and outputs information according to the input information, to identify request text and functions that can realize the content of the processing expressed in the request text. Then, the identification unit 1002 identifies functions that can realize the content of the processing desired by the user based on the dialogue text output by the interaction LLM 1042.

[0054] Here, the vector DB 1043 is an example of a storage unit, the instruction text is an example of input information, and the dialogue text is an example of output information.

[0055] For example, the identification unit 1002 extracts a sentence with content similar to the request text from the vector DB 1043. The identification unit 1002 uses the sentence as a context to generate instruction text such as "Please generate a proposal for the request based on the context." Next, the identification unit 1002 inputs the instruction text into the dialogue LLM 1042.

[0056] The identification unit 1002 acquires the dialogue text generated by the dialogue LLM 1042 in response to the input of the instruction text, and displays the acquired dialogue text in the display field of the GUI.

[0057] Here, it is assumed that a request text "I want to measure the number of people using a camera" is input from the user.

[0058] Furthermore, vector DB1043 stores a document that describes a function called "customer detection" and a document that describes how to use the function, which reads, "Customer detection measures the number of customers in the store from their full-body images. It can estimate the number of customers even if they are looking sideways or backwards, but since it looks at the whole body, the measurement accuracy decreases in cases where the customer's entire body cannot be seen."

[0059] In this case, the identification unit 1002 vectorizes the request text "I would like to measure the number of people using a camera" and searches the vector DB 1043 to extract documents having vectors similar to "I would like to measure the number of people using a camera."

[0060] If the above request text and a document showing how to use the function "visitor detection" have similar vectors, the identification unit 1002 extracts the document showing how to use the function "visitor detection."

[0061] The identifying unit 1002 also extracts a document indicating the function "customer detection" that corresponds to the document indicating how to use the function "customer detection." This allows the identifying unit 1002 to derive the function "customer detection" as a function that corresponds to the request text "I want to measure the number of people using a camera."

[0062] The identification unit 1002 generates instruction text that instructs the user to use the extracted document as a context and to generate a proposal for the request based on the context. The identification unit 1002 also inputs the generated instruction text to the interactive LLM 1042.

[0063] The dialogue LLM1042 follows the input instruction text and generates dialogue text that reads, "Customer detection measures the number of customers in the store from their full-body images. It can also estimate the number of customers from the side or back, but because it looks at the whole body, the measurement accuracy drops in cases where the customer's entire body cannot be seen. Do you want to build this function?" using the document that explains how to use the above-mentioned "customer detection" function as context.

[0064] Furthermore, the specification unit 1002 displays the generated dialogue text in a display field of the GUI.

[0065] If the user inputs text that affirms the question, such as "Yes, I would like to use customer detection," as a response to the above dialogue text, the identification unit 1002 identifies customer detection, derived from the request text "I would like to measure the number of people using a camera," as the function desired by the user.

[0066] The setting unit 1003 uses the interactive LLM 1042 to perform settings related to the functions desired by the user identified by the identifying unit 1002 .

[0067] For example, the setting unit 1003 inputs to the interactive LLM 1042 an instruction text that describes the name of the identified function and an instruction to generate a setting start text to start the process of setting the function desired by the user.

[0068] Information on the setup start text for starting the setup of a function is associated with a document that indicates the function and stored in the vector DB 1043. This allows the interactive LLM 1042 to refer to the vector DB 1043 and generate setup start text corresponding to the function identified by the identification unit 1002 from the name of the function included in the instruction text input by the setting unit 1003.

[0069] Consider a case where the identification unit 1002 identifies customer detection as the function desired by the user. In this case, the dialogue LLM 1042 references the vector DB 1043 and identifies the setting start text associated with the document indicating the function "customer detection."

[0070] For example, if a document indicating a function called "customer detection" is associated with the setting start text "The number of customers visiting the store will be saved along with time data. Is it okay to record every 10 seconds?", the interactive LLM 1042 generates the above setting start text as setting start text for starting the setting related to customer detection. The setting unit 1003 also displays the generated setting start text in a display field.

[0071] When the user inputs text that affirms the question, such as "yes," as a response to the setting start text, the setting unit 1003 sets the recording interval to every 10 seconds.

[0072] In addition, if the user inputs text that denies the question, such as ``No,'' the setting unit 1003 may input instruction text to the interactive LLM 1042 stating that the user has denied the setting of the recording interval to every 10 seconds, and instructing the interactive LLM 1042 to generate setting text for setting the recording interval by referring to the vector DB 1043.

[0073] In this case, the vector DB1043 may store a document indicating the function "customer detection" in association with text indicating a question to be asked to the user if the user denies that the recording interval setting is every 10 seconds.

[0074] This allows the interactive LLM 1042 to generate text showing the question as setting text for setting the recording interval. The setting unit 1003 displays the generated setting text in a display field of the GUI.

[0075] As an example, suppose a document describing a function called "Visitor Detection" is associated with text that asks the user if they deny the recording interval setting of 10 seconds: "What is the recording interval in seconds? It can be set between XX and △△ seconds."

[0076] In this case, the interactive LLM 1042 generates text showing the question "What is the recording interval in seconds? It can be set between XX and △△ seconds" as setting text for setting the recording interval. The setting unit 1003 displays the generated setting text in the display field.

[0077] In this case, the setting unit 1003 sets the recording interval (number of seconds) based on the user's input answer to the setting text.

[0078] The generating unit 1004 generates a function desired by the user. For example, the generating unit 1004 generates a batch file for executing the function desired by the user, based on the function desired by the user identified by the identifying unit 1002 and the setting content of the function set by the setting unit 1003.

[0079] As an example, the generation unit 1004 inputs instruction text such as "Please answer the questions based on your interaction with the user" to the interactive LLM 1042. After that, the generation unit 1004 sequentially inputs questions such as "What functions do you want to use?" and "What is the recording interval?" to the interactive LLM 1042.

[0080] The generation unit 1004 acquires information corresponding to each question output from the interactive LLM 1042. Then, the generation unit 1004 creates a batch file that describes how to call the script, etc., in accordance with the acquired information.

[0081] Here, it is assumed that the identification unit 1002 identifies customer detection as a function desired by the user, and the setting unit 1003 sets the recording interval for customer detection to every 10 seconds. In this case, the generation unit 1004 generates a batch file for executing customer detection with a recording interval of every 10 seconds. The generation unit 1004 stores the generated batch file in the batch file storage unit 1045 of the memory unit 104.

[0082] Note that multiple batch files may be stored in batch file storage unit 1045. In this case, the batch file may be stored in batch file storage unit 1045 in association with a file ID for identifying the batch file, the name of a function executed by the batch file, and the setting contents of the function to be executed.

[0083] Furthermore, when generating the batch file, the generation unit 1004 may also generate a confirmation file (settings file) such as a Node-red import file and store it in the memory unit 104. This makes it possible to retain information that is useful for investigating the cause even if the user makes an unexpected error and is unable to execute a function correctly.

[0084] The execution unit 1005 executes a function desired by the user. For example, when the execution unit 1005 receives an instruction to execute a function from the user, the execution unit 1005 executes a batch file stored in the batch file storage unit 1045 of the memory unit 104.

[0085] Specifically, the execution unit 1005 executes a combination of multiple applications stored in the function providing unit 1044 of the memory unit 104 in accordance with the contents of the batch file. Furthermore, before executing the batch file, the execution unit 1005 determines whether all of the applications required to realize the contents of the batch file are present among the multiple applications stored in the function providing unit 1044.

[0086] If it is determined that there is no application that can implement the contents of at least one batch file among the multiple applications stored in the function providing unit 1044, the executing unit 1005 cooperates with the communication control unit 1006 (described later) to send a provision request to the edge server 2 requesting provision of an application required to execute the batch file. The provision request includes an application ID that identifies the application.

[0087] Furthermore, the execution unit 1005 stores the applications sent from the edge server 2 in response to the provision request in the function providing unit 1044. Then, the execution unit 1005 confirms that all applications for realizing the contents of the batch file are stored in the function providing unit 1044, and then executes the batch file.

[0088] In addition, if there is no application to realize the contents of the batch file, the execution unit 1005 may have the edge server 2 execute the application by using an API (Application Interface), for example, and obtain only the execution results from the edge server 2.

[0089] As an example, consider a case where a batch file for detecting customers is executed at a recording interval of 10 seconds. In this case, the execution unit 1005 acquires images captured by each of the multiple image capturing units 108 every 10 seconds in accordance with the batch file. The execution unit 1005 also executes a process of using a known image recognition technology to estimate the number of customers present in the store from full-body images of the customers and storing the estimation results in the memory unit 104.

[0090] The communication control unit 1006 controls communication with the edge server 2 and transmits and receives various information.

[0091] Specifically, when the execution unit 1005 determines that there is no application for realizing the contents of at least one batch file among the applications stored in the function providing unit 1044, the communication control unit 1006 transmits a provision request to the edge server 2. In addition, the communication control unit 1006 receives an application transmitted from the edge server 2 as a response to the provision request.

[0092] Next, a description will be given of the functional configuration of the edge server 2. Fig. 5 is a block diagram showing an example of the functional configuration of the edge server 2. As shown in Fig. 5, the control unit 200 includes, as functional components, a providing unit 2001 and a communication control unit 2002. Note that the functional configuration of the edge server 2 is not limited to this.

[0093] Specifically, the control unit 200 (CPU 201) of the edge server 2 realizes the above-mentioned functional configuration by executing the control program stored in the control program unit 2041 of the memory unit 204. In this embodiment, the above-mentioned functional configuration is a software configuration realized by cooperation between the processor and the program of the edge server 2, but is not limited to this, and a hardware configuration in which part or all of the functional configuration is realized by a dedicated circuit or the like may also be used.

[0094] When the edge device 1 alone cannot realize a function desired by a user, the providing unit 2001 provides the edge device 1 with data or the like for realizing the function. For example, when the providing unit 2001 receives a provision request from the edge device 1, the providing unit 2001 determines whether an application corresponding to the application ID included in the provision request is stored in the function providing unit 2042 of the memory unit 204.

[0095] If it is determined that the corresponding application is stored in the function providing unit 2042, the providing unit 2001 cooperates with the communication control unit 2002 (described later) to transmit the corresponding application to the edge device 1.

[0096] In addition, when the provision unit 2001 receives a provision request, it may execute the corresponding application stored in the function provision unit 2042, for example by using an API, in accordance with the batch file generated by the edge device 1, and send only the execution result to the edge device 1.

[0097] On the other hand, if it is determined that the corresponding application is not stored in the function providing unit 2042, the providing unit 2001 cooperates with the communication control unit 2002 (described later) to send a transmission request to an external server (not shown, which may be a cloud server) via the network Nb, requesting transmission of the corresponding application. The transmission request includes the application ID.

[0098] The providing unit 2001 cooperates with the communication control unit 2002 to transmit to the edge device 1 an application transmitted from an external server in response to a transmission request.

[0099] If the corresponding application is not stored in the function providing unit 2042, the providing unit 2011 may cooperate with the communication control unit 2002 to execute the corresponding application on an external server by using an API or the like in accordance with a batch file generated by the edge device 1. In this case, the providing unit 2001 may receive only the execution result from the external server and transmit the execution result to the edge device 1.

[0100] The communication control unit 2002 controls communication with the edge server 2 and external servers, and transmits and receives various information.

[0101] Specifically, when the providing unit 2001 determines that an application corresponding to the transmission request exists among the applications stored in the function providing unit 2042, the communication control unit 2002 cooperates with the providing unit 2001 to transmit the corresponding application to the edge device 1 as a response to the provision request.

[0102] Furthermore, if the providing unit 2001 determines that there is no application corresponding to the transmission request among the applications stored in the function providing unit 2042, the communication control unit 2002 transmits the transmission request to an external server.

[0103] The communication control unit 2002 then receives the application transmitted from the external server as a response to the transmission request, and cooperates with the providing unit 2001 to transmit the received application to the edge device 1 as a response to the provision request.

[0104] Next, a description will be given of a process executed by the edge device 1 according to this embodiment. Fig. 6 is a flowchart showing an example of a process executed by the edge device 1 according to this embodiment.

[0105] First, the receiving unit 1001 receives an input of a request text from a user (step ST101). For example, the receiving unit 1001 receives, as the request text, a response input by the user to the specific start text generated by the interactive LLM 1042 via a GUI for performing an interaction with the user to configure a function, as described above.

[0106] Next, the identification unit 1002 determines whether the function desired by the user has been identified (step ST102). For example, as described above, the identification unit 1002 uses the RAG technique to cause the dialogue LLM 1042 to generate dialogue text for identifying the function desired by the user, and determines whether the function desired by the user has been identified based on the user's response to the dialogue text.

[0107] If the function desired by the user cannot be identified (step ST102: No), the identification unit 1002 takes into consideration the previous interactions with the user and uses the RAG method to instruct the dialogue LLM 1042 to generate additional dialogue text to identify the function desired by the user, displays the generated dialogue text in the display field of the GUI (step ST103), and returns to the processing of step ST102.

[0108] On the other hand, if the function desired by the user can be identified (step ST102: Yes), the setting unit 1003 uses the RAG method as described above to instruct the interactive LLM 1042 to generate setting start text to start setting the function, and displays the generated setting start text in the display field of the GUI (step ST104).

[0109] Next, the setting unit 1003 determines whether the setting related to the function desired by the user is completed (step ST105). For example, when the setting unit 1003 obtains information necessary for setting the function from a dialogue with the user using the dialogue LLM 1042 for all setting items predetermined for each function, the setting unit 1003 determines that the setting related to the function specified in step ST102 is completed.

[0110] If the setting is not complete (step ST105: No), the setting unit 1003 takes into consideration the previous interaction with the user and uses the RAG method to instruct the interactive LLM 1042 to generate additional setting text for setting the functions desired by the user, displays the generated setting text in the display field of the GUI (step ST106), and returns to the processing of step ST105.

[0111] On the other hand, if the setting is completed (step ST105: Yes), the generating unit 1004 generates a batch file (step ST107).

[0112] For example, as described above, the generation unit 1004 inputs questions for identifying functions and questions for configuring settings related to the functions into the interactive LLM 1042, and acquires information necessary to build the functions desired by the user. The generation unit 1004 generates a batch file based on the acquired information.

[0113] Next, the generating unit 1004 stores the batch file (step ST108). For example, the generating unit 1004 stores the batch file generated in step ST107 in the batch file storage unit 1045 of the memory unit 104.

[0114] Next, the execution unit 1005 judges whether an instruction to execute the batch file has been received from the user (step ST109). If an instruction to execute the batch file has not been received (step ST109: No), the processing of step ST109 is repeated.

[0115] On the other hand, if an execution instruction has been received (step ST109: Yes), the execution unit 1005 executes the batch file (step ST110) and ends this process.

[0116] For example, if all of the applications required to implement the contents of a batch file are present among the multiple applications stored in the function providing unit 1044 of the memory unit 104, the execution unit 1005 will combine and execute the multiple applications stored in the function providing unit 1044 in accordance with the contents of the batch file, as described above.

[0117] On the other hand, if at least one of the applications required to realize the contents of the batch file does not exist among the multiple applications stored in the function providing unit 1044, the execution unit 1005 obtains the missing application from the edge server 2 as described above and then executes the batch file.

[0118] As described above, the edge device 1 of this embodiment accepts input of request text that expresses the content of the processing desired by the user, and inputs instruction text that instructs the interactive LLM 1042, which uses the vector DB 1043 as an information source and generates and outputs information according to the input information, to identify functions that can realize the content of the processing expressed in the request text.Based on the dialogue text output by the interactive LLM 1042, the edge device 1 identifies functions that can realize the content of the processing desired by the user, and controls the edge device 1 to a state in which the identified functions can be realized.

[0119] As a result, for example, a user can realize a desired function in the edge device 1 simply by inputting text, without performing operations such as setting the function call order in a flow design tool. Therefore, even a user without design knowledge can easily configure functions for the edge device 1. Furthermore, the edge device 1 according to this embodiment identifies a user's desired function using the vector DB 1043, which stores reference information related to function configuration, as an information source. Therefore, it is possible to prevent a function beyond the scope of the information stored in the vector DB 1043 from being identified as the user's desired function. In other words, the edge device 1 according to this embodiment makes it easy to configure functions for the edge device to be provided to end users. Furthermore, since the edge device 1 according to this embodiment can realize a user's desired function simply through user interaction as described above, it is possible to provide an environment in which the user can configure functions for the edge device 1 without preparing a complex user interface (UI). This is expected to have the effect of reducing the amount of work required to develop a UI for function configuration.

[0120] In addition, the edge device 1 of this embodiment causes the interactive LLM 1042 to generate a question to identify the user's desired function based on the information stored in the vector DB 1043, and identifies the user's desired function based on the user's answer to the question.

[0121] This allows, for example, a user to easily realize a desired function in the edge device 1 simply by answering a question generated by the interactive LLM 1042. Furthermore, because the interactive LLM 1042 generates questions based on information stored in the vector DB 1043, it is possible to prevent a situation in which a function beyond the scope of the information stored in the vector DB 1043 is proposed to the user.

[0122] In addition, the edge device 1 of this embodiment identifies the setting contents related to the identified function based on the identified function, the interactive LLM 1042, and the vector DB 1043, and generates a batch file that describes the execution procedures of one or more applications to realize the identified function using the identified setting contents.

[0123] This allows the user to easily perform setting processing for a desired function without performing operations such as setting the call order of functions using a flow design tool. Furthermore, the edge device 1 according to this embodiment identifies the setting content of the function desired by the user based on the information stored in the vector DB 1043. This makes it possible to prevent setting content that exceeds the range of information stored in the vector DB 1043 from being identified as the setting content of the function desired by the user.

[0124] In addition, the edge device 1 of this embodiment causes the interactive LLM 1042 to generate questions for setting up the user's desired functions related to the identified functions based on the information stored in the vector DB 1043, and sets up the user's desired functions based on the user's answers to the questions.

[0125] This allows, for example, a user to easily configure settings related to a desired function simply by answering questions generated by the interactive LLM 1042. Furthermore, because the interactive LLM 1042 generates questions based on information stored in the vector DB 1043, it is possible to prevent the user's desired function from being realized with unexpected settings.

[0126] Furthermore, the edge device 1 according to this embodiment generates a setting file that indicates the setting contents related to the function together with the batch file, which makes it easier for the user to investigate the cause even if the user makes an unexpected error and is unable to realize the function that he or she desires.

[0127] The above-described embodiment can be modified as needed by partially changing the configuration or functions of each of the above-described devices. Therefore, several modifications of the above-described embodiment will be described below as other embodiments. The following mainly focuses on differences from the above-described embodiment, and detailed descriptions of commonalities with the content already described will be omitted. The modifications described below may be implemented individually or in appropriate combination.

[0128] (Variation) In the above-described embodiment, the control unit 100 of the edge device 1 has, as its functional configuration, a reception unit 1001, an identification unit 1002, a setting unit 1003, a generation unit 1004, and an execution unit 1005. In this modification, a configuration in which the control unit 200 of the edge server 2 has these functions will be described.

[0129] In this modification, the memory unit 204 of the edge server 2 includes an interaction LLM 1042, a vector DB 1043, and a batch file storage unit 1045. The control unit 200 of the edge server 2 executes the processes related to the reception unit 1001, the identification unit 1002, the setting unit 1003, the generation unit 1004, and the execution unit 1005 described above.

[0130] Moreover, the memory unit 104 of the edge device 1 of this modification only includes a control program unit 1041. In this modification, the control unit 100 of the edge device 1 only performs the process of displaying various information such as processing results by the edge server 2 on the display unit 106 and the process of accepting various inputs from the user via the operation unit 107.

[0131] Note that some of the processes executed by the reception unit 1001 , the identification unit 1002 , the setting unit 1003 , the generation unit 1004 , and the execution unit 1005 may be executed by the edge server 2 .

[0132] According to this modification, the processing load on the edge device 1 can be reduced.

[0133] The programs executed by the information processing system S of the embodiment and the modified example may be stored on a computer connected to a network such as the Internet and provided by being downloaded via the network. Also, the programs executed by the information processing system S of the embodiment and the modified example may be provided or distributed via a network such as the Internet.

[0134] The programs executed by each device in the above-described embodiments are provided in a state where they are pre-installed in a ROM, a storage unit, etc. The programs executed by each device in the above-described embodiments may be provided by being recorded in an installable or executable file format on a computer-readable recording medium such as a CD-ROM, a flexible disk (FD), a CD-R, or a digital versatile disk (DVD).

[0135] Furthermore, the programs executed by each device in the above-described embodiments may be stored on a computer connected to a network such as the Internet and provided by being downloaded via the network. Also, the programs executed by each device in the above-described embodiments may be provided or distributed via a network such as the Internet.

[0136] These novel embodiments and their modifications may be embodied in various other forms, and various omissions, substitutions, changes, and combinations may be made without departing from the spirit of the invention. These embodiments and their modifications are included within the scope and spirit of the inventions, and are also included in the inventions described in the claims and their equivalents. [Explanation of symbols]

[0137] S Information Processing System 1. Edge Devices 2 Edge Server 1001 Reception 1002 Specific part 1003 Settings 1004 Generation part 1005 Executive Department 1006, 2002 Communication control unit 2001 Providing Department [Prior art documents] [Patent documents]

[0138] [Patent Document 1] Patent No. 7441366

Claims

1. a receiving unit that receives input of request information that indicates the content of a process desired by a user; an identification unit that inputs input information to a generation AI that uses a storage unit that stores reference information related to functions that can be executed by the device itself as an information source, and generates and outputs information according to the input information, instructing the generation AI to identify a function that can realize the request information and the content of the processing expressed in the request information, and identifies a function that can realize the content of the processing desired by the user based on the output information output by the generation AI; a control unit that controls the device to a state in which the specified function can be realized; An information processing device comprising:

2. The identification unit causes the generation AI to generate a question for identifying the function, and identifies the function based on a user's answer to the question. The information processing device according to claim 1 .

3. a generating unit that generates a batch file describing execution procedures of one or more applications for realizing the specified function; the control unit controls the device in accordance with the generated batch file to realize the specified function. The information processing device according to claim 1 .

4. the storage unit stores, as the reference information, information regarding settings of functions executable by the device itself; The generating AI is further provided with a setting unit that inputs information representing the identified function and input information instructing the generating AI to make settings related to the function, and performs settings related to the function based on output information output by the generating AI; the generating unit generates a batch file describing execution procedures of one or more applications for realizing the specified function in accordance with the contents set by the setting unit. The information processing device according to claim 3 .

5. The setting unit causes the generation AI to generate questions for setting the function, and sets the function based on the user's answers to the questions. The information processing device according to claim 4 .

6. The generation unit generates, together with the batch file, a setting file representing the content set by the setting unit. The information processing device according to claim 4 .

7. An information processing method by an information processing device, Accepting input of request information representing the content of the processing desired by the user; A generation AI uses a storage unit that stores reference information regarding functions that can be executed by the device itself as an information source, and generates and outputs information according to the input information. Input information instructing the generation AI to identify a function that can realize the request information and the content of the processing expressed in the request information, and based on the output information output by the generation AI, identify a function that can realize the content of the processing desired by the user; Controlling the device to a state in which the specified function can be realized; Information processing methods.

Citation Information

Patent Citations

  • Information processing device, information processing method, and computer program

    JP7441366B1