System
The system uses generative AI to enhance NPC interactions in online games by generating dynamic and personalized responses based on user input and external information, addressing the limitations of monotonous NPC conversations.
Patent Information
- Application Number
- JP2024141420
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-08-22
- Publication Date
- 2026-03-06
AI Technical Summary
Conventional online games feature non-player characters (NPCs) with monotonous, pre-defined conversations that lack realism and fail to incorporate real-time current events or interactions with other players, limiting dynamic and immersive experiences.
A system utilizing generative artificial intelligence to generate responses based on user input, conversation history, and external information, enabling dynamic and personalized interactions with NPCs.
Enhances the realism and immersion of online gaming experiences by providing natural and responsive NPC interactions that adapt to user input and current events.
Smart Images

Figure 2026038086000001_ABST
Abstract
Description
[Technical Field]
[0001] The technology of the present disclosure relates to a system. [Background technology]
[0002] Patent document 1 discloses a persona chatbot control method performed by at least one processor, the method including the steps of receiving a user utterance, adding the user utterance to a prompt including an instruction sentence related to a description of the chatbot character, encoding the prompt, and inputting the encoded prompt into a language model to generate a chatbot utterance in response to the user utterance. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] Japanese Patent Publication No. 2022-180282 Summary of the Invention [Problem to be solved by the invention]
[0004] In conventional online games, non-player characters (NPCs) could only have pre-defined conversations under set conditions, which resulted in monotonous responses to the user and impaired the realism of the virtual reality. Furthermore, because they could not reflect real-time current events or conversations with other players, it was difficult to realize dynamic conversations linked to the real world. [Means for solving the problem]
[0005] In order to solve the above problems, the present invention provides the following means: a system including means for receiving input information from a user, means for generating a response based on the input information using generative artificial intelligence, means for displaying the generated response to the user, and means for saving the generated response in a conversation history. The system also includes means for changing the next response based on the conversation history and means for including external current information in the generated response. This makes it possible to provide the user with a more realistic virtual reality than conventional monotonous conversations.
[0006] "User" refers to a player who operates an online game.
[0007] "Input information" refers to data such as text and voice that a user inputs to an NPC within an online game.
[0008] "Generative AI" refers to artificial intelligence technology that generates natural language responses based on input information.
[0009] "Response" refers to the reply content, such as text or voice, generated by generative artificial intelligence and presented to the user.
[0010] "Conversation history" refers to data that represents a record of past conversations between the user and an NPC.
[0011] "Display means" refers to an interface for visually or audibly presenting the generated response to the user.
[0012] "Current affairs" refers to information about the latest news, trends, and events at the moment.
[0013] "System" refers to the entire online gaming environment, including the above means. [Brief explanation of the drawings]
[0014] [Figure 1]1 is a conceptual diagram showing an example of the configuration of a data processing system according to a first embodiment. [Figure 2] 1 is a conceptual diagram showing an example of main functions of a data processing device and a smart device according to a first embodiment. [Figure 3] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a second embodiment. [Figure 4] FIG. 10 is a conceptual diagram showing an example of main functions of a data processing device and smart glasses according to a second embodiment. [Figure 5] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a third embodiment. [Figure 6] FIG. 11 is a conceptual diagram showing an example of main functions of a data processing device and a headset-type terminal according to a third embodiment. [Figure 7] FIG. 10 is a conceptual diagram showing an example of the configuration of a data processing system according to a fourth embodiment. [Figure 8] FIG. 10 is a conceptual diagram showing an example of main functions of a data processing device and a robot according to a fourth embodiment. [Figure 9] 1 shows an emotion map onto which multiple emotions are mapped. [Figure 10] 1 shows an emotion map onto which multiple emotions are mapped. [Figure 11] FIG. 3 is a sequence diagram showing a processing flow of the data processing system according to the first embodiment. [Figure 12] FIG. 10 is a sequence diagram showing the flow of processing in the data processing system in Application Example 1. [Figure 13] FIG. 10 is a sequence diagram showing the flow of processing in the data processing system according to the second embodiment when an emotion engine is combined. [Figure 14] FIG. 10 is a sequence diagram showing the flow of processing in the data processing system in Application Example 2 when an emotion engine is combined. DETAILED DESCRIPTION OF THE INVENTION
[0015] An example of an embodiment of a system according to the technology of the present disclosure will be described below with reference to the accompanying drawings.
[0016] First, the terms used in the following description will be explained.
[0017] In the following embodiments, a coded processor (hereinafter simply referred to as a "processor") may be a single arithmetic device or a combination of multiple arithmetic devices. Furthermore, a processor may be a single type of arithmetic device or a combination of multiple types of arithmetic devices. Examples of arithmetic devices include a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), a GPGPU (General-Purpose computing on Graphics Processing Units), and an APU (Accelerated Processing Unit).
[0018] In the following embodiments, a coded RAM (Random Access Memory) is a memory in which information is temporarily stored and is used as a working memory by a processor.
[0019] In the following embodiments, the coded storage is one or more non-volatile storage devices that store various programs, various parameters, etc. Examples of non-volatile storage devices include flash memory (SSD (Solid State Drive)), magnetic disks (e.g., hard disks), and magnetic tapes.
[0020] In the following embodiments, a communication I / F (Interface) with a symbol is an interface including a communication processor, an antenna, etc. The communication I / F controls communication between multiple computers. Examples of communication standards applied to the communication I / F include wireless communication standards including 5G (5th Generation Mobile Communication System), Wi-Fi (registered trademark), Bluetooth (registered trademark), etc.
[0021] In the following embodiments, "A and / or B" is synonymous with "at least one of A and B." In other words, "A and / or B" means that it may be only A, only B, or a combination of A and B. Furthermore, in this specification, the same concept as "A and / or B" is also applied when three or more things are expressed connected by "and / or."
[0022] [First embodiment]
[0023] FIG. 1 shows an example of the configuration of a data processing system 10 according to the first embodiment.
[0024] 1, a data processing system 10 includes a data processing device 12 and a smart device 14. An example of the data processing device 12 is a server.
[0025] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0026] The smart device 14 includes a computer 36, a reception device 38, an output device 40, a camera 42, and a communication I / F 44. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The reception device 38, the output device 40, and the camera 42 are also connected to the bus 52.
[0027] The reception device 38 includes a touch panel 38A, a microphone 38B, and the like, and receives user input. The touch panel 38A detects contact with an indicator (for example, a pen or a finger) to receive user input by the touch of the indicator. The microphone 38B detects the user's voice to receive user input by voice. The control unit 46A transmits data indicating the user input received by the touch panel 38A and the microphone 38B to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the data indicating the user input.
[0028] The output device 40 includes a display 40A and a speaker 40B, and presents data to the user 20 by outputting the data in a form of expression that the user 20 can perceive (for example, audio and / or text). The display 40A displays visible information such as text and images in accordance with instructions from the processor 46. The speaker 40B outputs audio in accordance with instructions from the processor 46. The camera 42 is a compact digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor.
[0029] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 control the exchange of various information between the processor 46 and the processor 28 via the network 54.
[0030] FIG. 2 shows an example of the main functions of the data processing device 12 and the smart device 14.
[0031] 2, in the data processing device 12, a specific process is performed by the processor 28. A specific processing program 56 is stored in the storage 32. The specific processing program 56 is an example of a "program" according to the technology of the present disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific process is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.
[0032] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0033] In the smart device 14, the processor 46 performs the reception output process. The storage 50 stores a reception output program 60. The reception output program 60 is used in conjunction with the specific processing program 56 by the data processing system 10. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.
[0034] Next, a description will be given of the specific processing performed by the specific processing unit 290 of the data processing device 12. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0035] A system for implementing this invention utilizes generative artificial intelligence (AI) to make conversations between users and non-player characters (NPCs) in online games more realistic. The following describes in detail how this system works.
[0036] Server-side processing
[0037] Initialization
[0038] When the game starts, the server initializes the data for each NPC. This includes the NPC's name, role, initial conversation, etc. For example, a merchant NPC will be set to "John" or "merchant."
[0039] Calling generative AI
[0040] When a user speaks to an NPC, the input information is sent to the server. The server receives this input information and passes it to a generative AI to generate the optimal response. The generated response is returned to the user and saved in the conversation history. This means that the next time the same user speaks, a response will be generated taking into account the content of the previous conversation.
[0041] Terminal side processing
[0042] Sending Events
[0043] The terminal receives the user's input and sends it to the server, generating a request that includes the input text and the NPC's ID. For example, if the user types "What are your recent recommended products?", that information is passed to the server.
[0044] Viewing the response
[0045] When the terminal receives the generated response from the server, it displays it to the user. For example, the terminal might display a response such as, "Ore is very popular these days. The price of emeralds in particular is rising."
[0046] User Experience
[0047] Start a conversation
[0048] Users can approach NPCs in the game and start a conversation. For example, a user can ask a merchant NPC, "Hello, what are your recent recommended products?" Through this dialogue, users can have a more realistic and dynamic conversation experience.
[0049] Receiving a response
[0050] The user receives a response from the NPC, which is not simply a canned response generated under predetermined conditions, but is customized by the generative AI, taking into account the user's input.
[0051] Specific examples
[0052] Conversation flow example
[0053] 1. The user asks the merchant NPC, "What are your recommended products these days?"
[0054] 2. The device sends this input information to the server.
[0055] 3. The server sends this input information to the generative AI, which generates an appropriate response.
[0056] 4. Produces the response "Ore is very popular these days. The price of emeralds in particular has been rising."
[0057] 5. The generated response is returned to the terminal and displayed to the user.
[0058] 6. The server adds to the conversation history "What are your recent recommended products?" and "Ore has been very popular recently. The price of emeralds in particular has been rising."
[0059] In this way, NPC systems that utilize generative AI allow users to enjoy more realistic and dynamic conversations in online games. By utilizing conversation history and current events, even deeper interactions become possible.
[0060] The processing flow will be explained below.
[0061] Step 1:
[0062] The user approaches an NPC in the game, enters "What are some of your recent recommended products?" into the dialogue interface, and presses the send button.
[0063] Step 2:
[0064] The terminal receives the user's input, generates a request containing the input text and the NPC's ID, and sends it to the server.
[0065] Step 3:
[0066] The server receives the request and initializes the target NPC data by retrieving it from the database, including the NPC's name, role, and conversation history.
[0067] Step 4:
[0068] The server sends a request to the generative AI based on the acquired NPC data and user input. The request includes the user's input information and the NPC's past conversation history.
[0069] Step 5:
[0070] The generative AI generates the optimal response based on user input and NPC data, and returns that response to the server.
[0071] Step 6:
[0072] The server receives the response from the generative AI, adds the response to the NPC's conversation history, and returns the generated response to the terminal.
[0073] Step 7:
[0074] The terminal receives the response from the server and displays the content to the user. For example, it displays "Ore is very popular these days. The price of emeralds in particular is rising."
[0075] Step 8:
[0076] The user reviews the displayed response and then enters a new question or takes the next action.
[0077] Example 1
[0078] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0079] Conventional online game conversation systems with non-player characters (NPCs) often provide monotonous conversations based on fixed phrases, lacking the quality and realism of user interaction. This creates the problem that users quickly become bored with the conversation content, reducing the sense of immersion in the game. Furthermore, the lack of responses that take into account conversation history or dynamic conversation experiences that include current information limits the user experience.
[0080] The specific processing by the specific processing unit 290 of the data processing device 12 in the first embodiment is realized by the following means.
[0081] In this invention, the server includes means for receiving input information from a user, means for generating a response using a generative artificial intelligence model based on the input information, means for displaying the generated response to the user, means for saving the generated response in a conversation history, and means for adjusting the generated response in consideration of the user's input history and attribute information of non-player characters. This allows the user to enjoy a more natural and dynamic conversation experience. Furthermore, changing the next response based on the conversation history and generating a response that incorporates external current information improves the quality of interaction and increases the sense of immersion in the game.
[0082] A "user" is a player who plays an online game and interacts with non-player characters (NPCs).
[0083] "Input information" refers to interaction data such as text input or voice input that a user makes to an NPC.
[0084] A "generative artificial intelligence model" is an artificial intelligence technology that uses natural language processing technology to generate appropriate responses to user input.
[0085] A "response" is a reply message that a generative artificial intelligence model generates based on information input by a user.
[0086] "Conversation history" refers to data that records the contents of past conversations between the user and NPCs.
[0087] A "non-player character (NPC)" is a computer-controlled character in an online game.
[0088] "Attribute information" refers to specific information about an NPC, such as its role, personality, and location in the story.
[0089] "Current events" refers to information about the latest news and events in the real world outside of the game.
[0090] This invention is a system that utilizes generative artificial intelligence (AI) to make conversations between non-player characters (NPCs) and users in online games more realistic and dynamic. Below, we will explain in detail how this system works.
[0091] Server-side processing
[0092] When the game starts, the server initializes the data of all NPCs. This initialization process includes the name, role, initial dialogue, and attribute information of each NPC. For example, the merchant NPC "John" is set to the role "merchant." This process includes loading the initial data from the database and updating the properties of each NPC.
[0093] When a user speaks to an NPC, the input information is sent from the device to the server. The server receives this input information and prepares it to be passed to a generative artificial intelligence model (e.g., GPT-3 (registered trademark)). A prompt is sent via the generative AI's interface to generate an optimal response. For example, if a user inputs, "What are your recent recommended products?", the prompt "User: 'What are your recent recommended products?', NPC attribute: Merchant John" is sent to the generative AI.
[0094] The generated response is something like, "Ore is very popular these days. The price of emeralds in particular has risen." The server returns this response to the user and also saves it in the database as conversation history. This means that the next time the same user speaks, a response based on the previous conversation will be generated.
[0095] Terminal side processing
[0096] The device receives user input and prepares it to be sent to the server: for example, if the user types "hello", it processes the text together with the NPC's identifier, creates an HTTP request, and sends it to the server's specified endpoint.
[0097] When the device receives the response from the server, it displays the response to the user, for example, displaying the message "Ore is very popular these days" on the game screen. This includes updating the UI components to draw the text message.
[0098] User Experience
[0099] A user approaches an NPC in a game and initiates a conversation by pressing a specific key or clicking a conversation button. For example, a user might ask a merchant NPC, "Hello, what are your recent recommendations?"
[0100] The user receives a response from the NPC. They can read the text message displayed on the screen and decide what to do next. For example, if the user receives the message "Ore is very popular these days," they can either go to a place that sells ore or ask a merchant NPC for more information.
[0101] Examples of concrete examples and prompts
[0102] For example, consider the following conversation flow:
[0103] 1. The user types, "What's your latest recommendation?"
[0104] 2. The server sends the following prompt to the generative AI: "User: 'What are some recommended products these days?', NPC attributes: Merchant John."
[0105] 3. The generative AI model generates the response, "Ore is very popular these days. The price of emeralds in particular has risen."
[0106] 4. This response is displayed to the user, who then considers their next action.
[0107] In this way, by implementing the system of the invention, users can have a more natural and dynamic conversation experience, improving the immersion of the game. By utilizing conversation history, attribute information, and even current events, deeper interactions can be realized.
[0108] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0109] Program processing steps
[0110] Server-side processing
[0111] Step 1:
[0112] The server initializes the data of all NPCs at the start of the game. This is a process that reads the name, role, initial dialogue, and attribute information of each NPC from the database and reflects them in each NPC property. The input is the initial data obtained from the database, and the output is the initialized NPC properties.
[0113] Step 2:
[0114] When a user speaks to an NPC, the input information is sent from the device to the server. The server receives this input information and temporarily stores it. The input is the user's text input and the NPC's identifier, and the output is prompt-format data that is passed to the generative AI. Specifically, it analyzes the received user input information, adds the necessary attribute information, and generates a prompt.
[0115] Step 3:
[0116] The server passes the received user input to the generative AI. Specifically, it sends a prompt to the generative AI model to generate an appropriate response. The input is data in the form of a prompt, and the output is the response obtained from the generative AI model. For example, the prompt "User: 'What are your recent recommended products?' NPC attribute: Merchant" is sent to the generative AI.
[0117] Step 4:
[0118] The server returns the generated response to the user and simultaneously saves it as a conversation history. The input is the response from the generative AI model, and the output is the response sent to the user and the conversation history stored in the database. Specifically, the server sends the response to the terminal and records the response content in the database.
[0119] Terminal side processing
[0120] Step 1:
[0121] The terminal receives user input and prepares it to be sent to the server. The input is the text entered by the user and the NPC identifier, and the output is data in the form of a request to the server. Specifically, it analyzes the user's input information and generates an HTTP request.
[0122] Step 2:
[0123] A request containing user input and the NPC's ID is sent to the server. The input is the data in the request format to the server, and the output is the response from the server. Specifically, the generated HTTP request is sent to the specified endpoint.
[0124] Step 3:
[0125] Receives a response from the server. The input is data in the response format from the server, and the output is text that is displayed to the user. Specifically, it analyzes the received HTTP response and obtains the response message.
[0126] Step 4:
[0127] Display the received response to the user. The input is the parsed response text, and the output is the response that is displayed on the user's screen. Specifically, it updates the UI component to render the text message.
[0128] User processing
[0129] Step 1:
[0130] The user approaches an NPC in the game. The input is the user's movement, and the output is the proximity to the NPC. The specific action is to move the character and capture the NPC within a certain distance.
[0131] Step 2:
[0132] To start a dialogue, the user clicks a dialogue button or presses a specific key. The input is the user's operation, and the output is the dialogue start state. The specific operation is when the user performs a specific input operation.
[0133] Step 3:
[0134] The user receives a response from the NPC. The input is the response text displayed on the screen, and the output is the user's understanding and input for the next action. Specifically, the user reads the displayed message and decides the next action based on it.
[0135] (Application example 1)
[0136] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0137] Conventional customer service systems in brick-and-mortar stores face challenges in providing natural, dynamic responses to customer questions. Furthermore, because they rely on dedicated operators, the quality of responses can vary, and responses can be delayed during busy periods. Furthermore, text-based responses alone are unlikely to improve customer satisfaction, and they can lack real-time response and natural conversational quality.
[0138] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.
[0139] In this invention, the server includes means for receiving input information from a user, means for generating a response by a generative artificial intelligence based on the input information, means for displaying the generated response to the user, means for saving the generated response in a conversation history, means for converting voice input into text, and means for converting the response of the generative artificial intelligence into voice and presenting it to the user. This enables customers to experience natural and dynamic dialogue in a physical store, improving customer satisfaction and enabling efficient customer service.
[0140] The "means for receiving input information from the user" is a function for capturing information input by the user through voice or text.
[0141] The "means for generating a response using generative artificial intelligence based on the input information" is a function that analyzes input information received from a user and generates an optimal response using generative artificial intelligence.
[0142] The "means for displaying the generated response to the user" is a function for visually or audibly presenting the generated response to the user.
[0143] The "means for saving the generated response in the conversation history" is a function for saving the generated response and the user's input information in response to the response in a database or the like.
[0144] The "means for converting voice input into text" is a function that analyzes the voice spoken by the user and converts it into corresponding text data.
[0145] "Means for converting the response of the generative artificial intelligence into audio and presenting it to the user" is a function that converts the text response generated by the generative artificial intelligence into audio data and plays it back to the user.
[0146] The system for implementing this invention aims to make customer service in brick-and-mortar stores more natural and effective. Details of the system and how it can be used are described below.
[0147] Server-side processing
[0148] Initialization
[0149] When the system starts up, the server initializes the data for each customer interaction. This includes the customer interaction assistant's name, personality, initial conversation template, etc. For example, the data for a store assistant might be set as "Assistant 001" or "Customer_Assistant."
[0150] Calling generative AI
[0151] When a customer submits input information through a smartphone app in a physical store, the data is sent to a server. The server receives this input information and passes it to a generative artificial intelligence (AI) to generate an optimal response. The generated response is returned to the user and saved in the conversation history. This allows the next time the same customer asks a question, a response can be generated taking into account the content of the previous conversation.
[0152] Terminal side processing
[0153] Voice to text conversion
[0154] The smartphone app receives the user's voice input and converts it to text. To convert speech to text, it uses the SpeechRecognition module.
[0155] Sending Events
[0156] The terminal sends the converted text to the server, generating a request that includes the input text and the customer ID. For example, if a customer asks, "What is the best product in this store right now?", that information is passed to the server.
[0157] Voiced responses
[0158] Upon receiving the generated response from the server, the device converts the response into audio and presents it to the user. The device uses the Google® Text-to-Speech (gTTS) module to generate an audio file and play it back.
[0159] User Experience
[0160] Start a conversation
[0161] Users can launch the smartphone app in a physical store and speak a question into the microphone, for example, "What is the most recommended product in this store right now?"
[0162] Receiving a response
[0163] The user receives a spoken response from the assistant, such as "Our current recommendation is our newly arrived emeralds. They're especially popular."
[0164] Specific examples
[0165] For example, if a customer launches the app and asks, "What is the best product in this store right now?", the app converts the question into text and sends it to the server. The server then uses generative AI to generate and send back a response such as, "Our current recommendation is the newly arrived emerald. It's especially popular." The app then converts the response into audio and plays it back to the customer.
[0166] Prompt Sentence Examples
[0167] "A customer asks on their smartphone, 'What is the best product in this store right now?' Generate a response to this question."
[0168] Such a system will provide advanced support for customer service in physical stores, improving customer satisfaction and enabling more efficient customer service.
[0169] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0170] Step 1:
[0171] The user speaks a question
[0172] The user launches the smartphone app and speaks a question into the microphone. The input is the user's voice, and this voice data is processed in the next step.
[0173] Step 2:
[0174] Convert voice input to text
[0175] The device converts the received user voice input into text data using the SpeechRecognition module. The input is the user's voice data, and the output is text data. Specifically, the audio captured from the microphone is saved in a buffer and then a voice recognition service is called to convert it into text.
[0176] Step 3:
[0177] Send the converted text to the server
[0178] The terminal generates a request including the customer correspondence ID along with the text data and sends it to the server. The input is the text data generated in step 2, and the output is the request data sent to the server. Specifically, the text data and the correspondence ID are sent to the server as an HTTP request.
[0179] Step 4:
[0180] The server calls the generative AI
[0181] The server calls the generative AI model based on the received text data to generate an optimal response. At this time, it uses a prompt sentence to have the AI model generate a response. The input is the text data sent in step 3, and the output is the response text generated by the generative AI model. Specifically, the server inputs the text data along with the prompt sentence to the generative AI model, and receives the generated response.
[0182] Step 5:
[0183] Save the generated response in the conversation history
[0184] The server saves the generated response and the corresponding user input in the conversation history. The input is the response text generated in step 4 and the original user input text, and the output is a record stored in the conversation history database, specifically as a new entry in the conversation history database.
[0185] Step 6:
[0186] The server sends a response back to the device
[0187] The server returns the generated response to the terminal. The input is the response text generated in step 4, and the output is the response data to be sent to the terminal. Specifically, the response data is sent to the terminal as an HTTP response.
[0188] Step 7:
[0189] Convert response text to speech
[0190] The device converts the received response text data into audio data using the Google Text-to-Speech (gTTS) module. The input is the response text data received in step 6, and the output is audio data. Specifically, the response text is input to the gTTS module, and a generated audio file is created.
[0191] Step 8:
[0192] Plays a voice response to the user
[0193] The terminal plays the generated audio data to the user. The input is the audio data generated in step 7, and the output is the audio heard by the user. Specifically, the generated audio file is played back by the playback module.
[0194] This process flow allows users to have a natural and interactive conversation experience in a physical store.
[0195] Furthermore, an emotion engine that estimates the user's emotion may be combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59 and perform identification processing using the user's emotion.
[0196] A system for implementing this invention makes conversations between users and non-player characters (NPCs) in online games more realistic and provides more personalized responses by recognizing the user's emotions. This system works by combining generative artificial intelligence (AI) with an emotion engine.
[0197] Server-side processing
[0198] Initialization
[0199] When the game starts, the server initializes the data for each NPC. This includes the NPC's name, role, initial conversation content, conversation history, etc. For example, a merchant NPC will be set to "John" or "merchant."
[0200] emotion recognition
[0201] When a user speaks to an NPC, the input information is sent to the server. The server receives this input information and uses an emotion engine to analyze the user's emotions. For example, if the user inputs "What are your recent recommended products?", the emotion engine will determine the user's emotion as "interest" based on the context.
[0202] Calling generative AI
[0203] The server sends a request to the generative AI based on the user's emotional information recognized by the emotion engine and the input information. The generative AI takes this information into consideration to generate the optimal response. For example, if the user expresses "interest," the AI generates a response such as, "Ore is very popular these days. The price of emeralds in particular is rising."
[0204] Save your response and adjust it next time
[0205] The generated response is saved in the conversation history by the server. The next time the same user speaks, an appropriate response will be generated based on this conversation history and emotional information.
[0206] Terminal side processing
[0207] Sending Events
[0208] The terminal receives the user's input and sends it to the server, generating a request that includes the input text and the NPC's ID. For example, if the user types "What are your recent recommended products?", that information is passed to the server.
[0209] Viewing the response
[0210] When the device receives the response generated by the server, it displays it to the user. For example, it might say, "Ore is very popular these days. The price of emeralds in particular is rising." Furthermore, by using expressions that correspond to the user's emotions, a more natural and personalized experience is provided.
[0211] User Experience
[0212] Start a conversation
[0213] Users can approach NPCs in the game and start a conversation. For example, a user can ask a merchant NPC, "Hello, what are your recent recommended products?" Through this dialogue, users can have a more realistic and dynamic conversation experience.
[0214] Receiving a response
[0215] The user receives a response from the NPC. This response is not simply a standard phrase generated under predetermined conditions, but is customized by the generative AI, taking into account the user's input and emotions. For example, in addition to the response "Ore is very popular these days. The price of emeralds in particular has risen," the NPC might also add a sentiment-sensitive phrase such as "You look well. That's good news!"
[0216] Specific examples
[0217] Conversation flow example
[0218] 1. The user asks the merchant NPC, "What are your recommended products these days?"
[0219] 2. The device sends this input information to the server.
[0220] 3. The server analyzes the user's input using an emotion engine and recognizes "interests" and emotions.
[0221] 4. The server sends this input information and emotional information to the generative AI, which then generates the optimal response.
[0222] 5. Produces the response "Ore is very popular these days, especially emerald prices. You seem to be doing well, that's good news!"
[0223] 6. The generated response is returned to the terminal and displayed to the user.
[0224] 7. The server adds to the conversation history "What are your recent recommendations?" and "Ore has been very popular recently. The price of emeralds in particular has been rising. You seem to be doing well. That's good news!"
[0225] In this way, an NPC system that utilizes generative AI and an emotion engine allows users to enjoy more realistic and personalized conversations in online games. By utilizing conversation history, current events, and emotional information, even deeper interactions become possible.
[0226] The processing flow will be explained below.
[0227] Step 1:
[0228] The user approaches an NPC in the game, enters "What are some of your recent recommended products?" into the dialogue interface, and presses the send button.
[0229] Step 2:
[0230] The terminal receives the user's input, generates a request containing the input text and the NPC's ID, and sends it to the server.
[0231] Step 3:
[0232] The server receives the request and retrieves the target NPC data from the database, including the NPC's name, role, and conversation history.
[0233] Step 4:
[0234] The server sends the acquired NPC data and user input information to the emotion engine, which analyzes the user's emotions.
[0235] Step 5:
[0236] The emotion engine analyzes emotions from user input and recognizes the emotion "interest," for example.
[0237] Step 6:
[0238] The server sends a request to the generative artificial intelligence based on the emotion information from the emotion engine and the user's input information.
[0239] Step 7:
[0240] The generative artificial intelligence generates the optimal response based on the user's input information and emotional information, and returns that response to the server.
[0241] Step 8:
[0242] The server receives the generated response, adds it to the conversation history, and updates it, and also sends the generated response to the terminal.
[0243] Step 9:
[0244] The device receives the response from the server and displays it to the user, for example, "Ore is very popular these days. Prices for emeralds in particular are rising. You look well, that's good news!"
[0245] Step 10:
[0246] The user reviews the displayed response and then enters a new question or takes the next action.
[0247] Example 2
[0248] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0249] Conversations with non-player characters (NPCs) in conventional online games are based on static scripts, and typically involve repetition of the same conversation content or responses that do not take the user's emotions into consideration. As a result, users often become dissatisfied with the lack of realism and personalization of the conversation. Furthermore, conventional systems make it difficult to adjust the next response based on the conversation history or the user's emotions, leading to boredom due to the repetition of the same patterns. Furthermore, dynamic responses that incorporate external information are lacking, making it impossible to respond in a way that reflects the latest information. The present invention aims to solve these problems.
[0250] The identification process by the identification processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means. In this invention, the server includes means for receiving input information from a user, means for recognizing the user's emotion based on the input information using an emotion engine, means for generating a response based on the recognized emotion information and the input information using a generative artificial intelligence model, means for displaying the generated response to the user, and means for saving the generated response and the user's emotion information in a conversation history. This enables a realistic and personalized conversation based on the user's emotion. Furthermore, the next response can be adjusted based on the conversation history and the user's emotion information, thereby realizing a deeper interaction. Furthermore, by including external information in the generated response, a dynamic response that reflects the latest information is possible.
[0251] "Means for receiving input information from a user" refers to a combination of hardware and software for sending information such as text data or voice data input by a user to a server and receiving it.
[0252] "Emotion engine" refers to an algorithm or processing device that analyzes user input and recognizes emotions. Examples include emotion recognition systems that use natural language processing technology.
[0253] "Generative AI models" refer to machine learning models or algorithms that generate appropriate responses based on user input and emotions. Examples include response generation models based on deep learning.
[0254] "Means for displaying the generated response to the user" refers to a display device or software interface for providing the response generated by the generative artificial intelligence model to the user visually or audibly.
[0255] "Means for saving in conversation history" refers to technical means for recording and saving the generated responses, the user's input information in response to the responses, and the user's emotional information in a database or file system.
[0256] "External information" refers to current events, news, and information related to the user's environment obtained from sources other than the game's database, allowing for dynamic responses to be generated.
[0257] MODE FOR CARRYING OUT THE INVENTION
[0258] A system for implementing this invention makes conversations between users and non-player characters (NPCs) in online games more realistic and provides personalized responses by recognizing the user's emotions. This system works by combining generative artificial intelligence (AI) and an emotion engine.
[0259] Server-side processing
[0260] On the server, first, at the start of the game, the data of each NPC is initialized. This initialization includes the NPC's name, role, initial conversation content, conversation history, etc. Specifically, this information is obtained from a database (e.g., MySQL (registered trademark) or PostgreSQL) and set for each NPC. For example, for a merchant NPC, the name is set to "John" and the role is set to "merchant."
[0261] Next, when the user speaks to the NPC, the input information is sent to the server. The server analyzes this user input information using an emotion engine (e.g., IBM Watson (registered trademark) Tone Analyzer) and recognizes the user's emotion. For example, if the user inputs "What are your recent recommended products?", the emotion engine will recognize "interest."
[0262] The server then sends prompts to a generative artificial intelligence model (e.g., OpenAI® GPT-4®) based on the emotion information and the user's input to generate an optimal response. The prompts here have the following format:
[0263] "The user is asking a merchant NPC, 'What are your recent recommendations?' The user is interested. Generate an appropriate response."
[0264] The generated response is recorded for the next conversation, and the server stores this response and the conversation history in a database. This allows the next time the same user speaks, a more appropriate response will be generated based on the past conversation history and emotional information.
[0265] Terminal side processing
[0266] The terminal receives the user's input and sends it to the server. At this time, it generates a request containing the input text and the NPC's ID and sends it to the server. For example, if the user inputs "What are your recent recommended products?", that information is sent in the form of a request.
[0267] Once the server generates a response, the device displays it to the user. For example, the device might say, "Ore is very popular these days. The price of emeralds in particular is rising." The device also uses emotionally appropriate expressions, providing a more natural and personalized experience.
[0268] User Experience
[0269] Users can approach NPCs in the game and start a conversation. For example, a user can start a conversation by asking a merchant NPC, "Hello, what are your recent recommended products?" Through this dialogue, users can enjoy a more realistic and dynamic conversation experience.
[0270] The generated responses are not simply standard phrases, but are customized by the generative AI, taking into account the user's input and emotions. For example, in addition to the response "Ore is very popular these days. The price of emeralds in particular has risen," a response that takes the user's emotions into consideration might be added, such as "You look well. That's good news!"
[0271] In this way, an NPC system that combines generative AI and an emotion engine allows users to enjoy more realistic and personalized conversations within online games, and by utilizing conversation history, current events, and emotional information, even deeper interactions are possible.
[0272] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0273] Program processing flow and specific explanation
[0274] Server-side processing
[0275] Step 1:
[0276] When the game starts, the server initializes the data of each NPC.
[0277] Specific operation: The server retrieves the NPC's name, role, initial conversation content, and conversation history from the database and sets them as the NPC's attributes.
[0278] Input: Game Start Event
[0279] Output: Initialized NPC data
[0280] Step 2:
[0281] The user talks to an NPC.
[0282] Specific action: The user speaks to the NPC using text input or voice input.
[0283] Input: User text or voice input
[0284] Output: None
[0285] Step 3:
[0286] The terminal sends a request to the server containing the user's input and the NPC's ID.
[0287] What it does: The device captures input, formats it, and sends it as a request to the server.
[0288] Input: User text or voice input, NPC ID
[0289] Output: Request (user input and NPC ID)
[0290] Step 4:
[0291] The server receives the request and analyzes the user's input information using the emotion engine.
[0292] Specific operation: The server analyzes the received request and recognizes the user's emotion using the emotion engine.
[0293] Input: Request (user input and NPC ID)
[0294] Output: User's emotional information
[0295] Step 5:
[0296] The server sends prompts to the generative AI model based on the emotional information and user input.
[0297] Specific operation: The server generates a prompt sentence and sends it to the generative AI.
[0298] Prompt: The user is asking a merchant NPC, "What are your recent recommended items?" The user is interested. Generate an appropriate response.
[0299] Input: User input information, user emotion information
[0300] Output: prompt to generative AI
[0301] Step 6:
[0302] The generative AI model generates optimal responses based on prompts.
[0303] Specific behavior: The generative AI model generates a response based on the given prompt.
[0304] Input: prompt
[0305] Output: The generated response
[0306] Step 7:
[0307] The server stores the generated responses and the user's emotional information in the conversation history.
[0308] Specific operation: The server stores the responses, emotional information, and user input in a database as a conversation history.
[0309] Input: Generated response, user's emotional information
[0310] Output: Saved conversation history
[0311] Terminal side processing
[0312] Step 1:
[0313] The terminal receives the generated response from the server.
[0314] Specific operation: The terminal receives and analyzes the response sent by the server.
[0315] Input: Generated response
[0316] Output: Parsed response data
[0317] Step 2:
[0318] The terminal displays the response to the user.
[0319] Specific operation: The device displays a response to the user visually or audibly.
[0320] Input: Parsed response data
[0321] Output: The response displayed to the user
[0322] User Experience
[0323] Step 1:
[0324] The user approaches an NPC and begins a dialogue.
[0325] Specific actions: The user controls a character in the game and gives input to talk to NPCs.
[0326] Input: User action
[0327] Output: None
[0328] Step 2:
[0329] The user receives the generated response.
[0330] Specific action: The user checks the response displayed on the device and considers how to respond to it.
[0331] Input: Displayed response
[0332] Output: User response
[0333] (Application example 2)
[0334] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart device 14 will be referred to as a "terminal."
[0335] Traditional customer service methods in brick-and-mortar stores are uniform and not personalized, and they have the problem of not being able to properly respond to customer emotions and needs. In particular, if interactions with customers are not personalized based on emotions, the customer experience may be poor and satisfaction may decrease. Therefore, a system is needed to improve customer service in stores and provide more personalized responses that meet individual needs.
[0336] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 2 is realized by the following means.
[0337] In this invention, the server includes means for receiving input information from a user, means for generating a response based on the input information using generative artificial intelligence, means for displaying the generated response to the user, means for saving the generated response in a conversation history, means for analyzing emotions from the user's input information, and means for personalizing the response based on the emotion analysis results. This enables personalized responses based on customer emotions, improving the customer experience.
[0338] The "means for receiving input information from a user" is an interface for transmitting information input by a user to a server.
[0339] The "means for generating a response by a generative artificial intelligence based on the input information" is a process by which the generative artificial intelligence generates an appropriate response using the user's input information.
[0340] The "means for displaying the generated response to the user" is an interface for providing the response generated by the generative artificial intelligence to the user visually or audibly.
[0341] The "means for saving generated responses in a conversation history" is a process for recording generated responses and the history of the dialogue, and saving them so that they can be used in future dialogues.
[0342] "Means for analyzing emotions from user input" refers to algorithms and processes for analyzing user input and identifying their emotional state.
[0343] The "means for personalizing responses based on the results of sentiment analysis" refers to a process for customizing responses that reflect the results of sentiment analysis and are appropriate for the user's emotional state.
[0344] This invention is a system that combines generative artificial intelligence (AI) and a sentiment analysis engine to improve customer service in brick-and-mortar stores. This system is mainly composed of three components: a server, a terminal, and a user.
[0345] Server-side processing
[0346] Initialization
[0347] When the system starts up, the server initializes the data of all virtual characters (VPCs), including the VPC's role, initial response, conversation history, etc. For example, a store assistant VPC would be set to "Assistant" or "shop assistant."
[0348] emotion recognition
[0349] When the information entered by the user is sent to the server via the device, the server receives the input information and analyzes the user's emotions using a sentiment analysis engine. For example, if the user input is "Tell me about this toaster," the sentiment engine will determine the user's emotion as "interested" based on the context. The sentiment analysis engine uses the Hugging Face transformers library.
[0350] Response Generation
[0351] The server sends a request to the generative AI based on the user's emotional information recognized by the emotion engine and the input information. The generative AI takes this information into consideration to generate the optimal response. For example, if the user shows interest, the AI will generate a response such as, "This toaster is the latest model. It can toast four slices of bread at once and maintain even toasting." The generative AI model used is OpenAI's GPT-3.
[0352] Save your response and adjust it next time
[0353] The generated response is saved in the conversation history by the server. The next time the same user speaks, an appropriate response will be generated based on this conversation history and emotional information.
[0354] Terminal side processing
[0355] Sending Events
[0356] The device takes the user's input and sends it to the server, generating a request that includes the entered text and the VPC ID. For example, if the user types "Tell me about this toaster," that information is passed to the server.
[0357] Viewing the response
[0358] Once the device receives the generated response from the server, it displays it to the user. For example, it might say, "This toaster is the latest model. It can toast four slices of bread at once and toast them evenly." The device also uses expressions that reflect the user's emotions, providing a more natural and personalized experience.
[0359] User Experience
[0360] Start a conversation
[0361] A user initiates an interaction with the VPC through a smartphone application in a physical store, for example by asking, "Tell me about this toaster."
[0362] Receiving a response
[0363] The user receives a response from the VPC, which is customized by the generative AI taking into account the user's input and emotions. For example, a response might be provided that reads, "This toaster is the latest model. It can toast four slices of bread at once and maintains even toasting."
[0364] Prompt Sentence Examples
[0365] "User's feeling is interest. Generate a response to the user's question: 'Tell me about this toaster.'"
[0366] "User's feeling is excitement. Generate a response to the user's question: 'What's new this month?'"
[0367] "User's feeling is anxiety. Generate a response to the user's question: 'Is this vacuum cleaner easy to use?'"
[0368] This prompt enables the generative AI to generate optimal responses based on the user's emotions, significantly improving the customer experience in physical stores.
[0369] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[0370] Step 1:
[0371] The server receives information entered by the user through the terminal. For example, if the user enters "Tell me about this toaster," the text is sent from the terminal to the server. Through this process, the server obtains the input information (the user's question).
[0372] Step 2:
[0373] The server passes the received input information to a sentiment analysis engine to analyze the user's emotions. Specifically, it processes the text data using Hugging Face's transformers library and outputs emotion labels such as "interested," "excited," and "anxious." Through this processing, the server obtains data that identifies the user's emotional state.
[0374] Step 3:
[0375] The server generates a prompt based on the results of the sentiment analysis. For example, if the user's input is "Tell me about this toaster," and the sentiment is identified as "interest," the prompt will be "User's feeling is interest. Generate a response for the user's question: 'Tell me about this toaster.'" This process creates text data to be sent to the generative AI model.
[0376] Step 4:
[0377] The server sends a prompt to a generative AI model (OpenAI's GPT-3) to generate the optimal response. The generative AI model performs data calculations based on the prompt and outputs a response. For example, a response might be generated such as, "This toaster is the latest model. It can toast four slices of bread at once and maintain even toasting."
[0378] Step 5:
[0379] The server stores the generated response in the conversation history, so that if the same user asks the question again in the future, the server can tailor the response based on that history. This process accumulates historical data of responses.
[0380] Step 6:
[0381] The server sends the generated response to the terminal. The terminal receives this response and presents it to the user. Specifically, the response is displayed on the terminal's display. This process allows the user to check the response from the server.
[0382] Step 7:
[0383] The user checks the response displayed on the device and decides on the next action. For example, if the user takes a further action, such as "I'll buy this toaster," the input information is sent back to the server, and a new series of processes begins. This process allows the user to carry out the next dialogue or action based on the response.
[0384] The specific processing unit 290 transmits the result of the specific processing to the smart device 14. In the smart device 14, the control unit 46A causes the output device 40 to output the result of the specific processing. The microphone 38B acquires audio indicating a user input regarding the result of the specific processing. The control unit 46A transmits audio data indicating the user input acquired by the microphone 38B to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the audio data.
[0385] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (registered trademark) (Internet search engine).<URL: https: / / openai.com / blog / chatgpt> ), Gemini (registered trademark) (Internet search <url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[0386] In the above embodiment, an example in which the specific process is performed by the data processing device 12 has been given, but the technology of the present disclosure is not limited to this, and the specific process may be performed by the smart device 14.
[0387] [Second embodiment]
[0388] FIG. 3 shows an example of the configuration of a data processing system 210 according to the second embodiment.
[0389] 3, the data processing system 210 includes the data processing device 12 and smart glasses 214. An example of the data processing device 12 is a server.
[0390] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0391] The smart glasses 214 include a computer 36, a microphone 238, a speaker 240, a camera 42, and a communication I / F 44. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The microphone 238, the speaker 240, and the camera 42 are also connected to the bus 52.
[0392] The microphone 238 receives instructions and the like from the user 20 by receiving voice uttered by the user 20. The microphone 238 captures the voice uttered by the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio in accordance with instructions from the processor 46.
[0393] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the surroundings of user 20 (for example, an imaging range defined by an angle of view equivalent to the field of vision of a typical healthy person).
[0394] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 are responsible for the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.
[0395] Fig. 4 shows an example of the main functions of the data processing device 12 and the smart glasses 214. As shown in Fig. 4, in the data processing device 12, a specific process is performed by the processor 28. A specific process program 56 is stored in the storage 32.
[0396] The specific processing program 56 is an example of a "program" according to the technology of the present disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.
[0397] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0398] In the smart glasses 214, the reception output process is performed by the processor 46. A reception output program 60 is stored in the storage 50. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.
[0399] Next, a description will be given of the identification process performed by the identification processing unit 290 of the data processing device 12. In the following description, the data processing device 12 will be referred to as the "server" and the smart glasses 214 will be referred to as the "terminal."
[0400] A system for implementing this invention utilizes generative artificial intelligence (AI) to make conversations between users and non-player characters (NPCs) in online games more realistic. The following describes in detail how this system works.
[0401] Server-side processing
[0402] Initialization
[0403] When the game starts, the server initializes the data for each NPC. This includes the NPC's name, role, initial conversation, etc. For example, a merchant NPC will be set to "John" or "merchant."
[0404] Calling generative AI
[0405] When a user speaks to an NPC, the input information is sent to the server. The server receives this input information and passes it to a generative AI to generate the optimal response. The generated response is returned to the user and saved in the conversation history. This means that the next time the same user speaks, a response will be generated taking into account the content of the previous conversation.
[0406] Terminal side processing
[0407] Sending Events
[0408] The terminal receives the user's input and sends it to the server, generating a request that includes the input text and the NPC's ID. For example, if the user types "What are your recent recommended products?", that information is passed to the server.
[0409] Viewing the response
[0410] When the terminal receives the generated response from the server, it displays it to the user. For example, the terminal might display a response such as, "Ore is very popular these days. The price of emeralds in particular is rising."
[0411] User Experience
[0412] Start a conversation
[0413] Users can approach NPCs in the game and start a conversation. For example, a user can ask a merchant NPC, "Hello, what are your recent recommended products?" Through this dialogue, users can have a more realistic and dynamic conversation experience.
[0414] Receiving a response
[0415] The user receives a response from the NPC, which is not simply a canned response generated under predetermined conditions, but is customized by the generative AI, taking into account the user's input.
[0416] Specific examples
[0417] Conversation flow example
[0418] 1. The user asks the merchant NPC, "What are your recommended products these days?"
[0419] 2. The device sends this input information to the server.
[0420] 3. The server sends this input information to the generative AI, which generates an appropriate response.
[0421] 4. Produces the response "Ore is very popular these days. The price of emeralds in particular has been rising."
[0422] 5. The generated response is returned to the terminal and displayed to the user.
[0423] 6. The server adds to the conversation history "What are your recent recommended products?" and "Ore has been very popular recently. The price of emeralds in particular has been rising."
[0424] In this way, NPC systems that utilize generative AI allow users to enjoy more realistic and dynamic conversations in online games. By utilizing conversation history and current events, even deeper interactions become possible.
[0425] The processing flow will be explained below.
[0426] Step 1:
[0427] The user approaches an NPC in the game, enters "What are some of your recent recommended products?" into the dialogue interface, and presses the send button.
[0428] Step 2:
[0429] The terminal receives the user's input, generates a request containing the input text and the NPC's ID, and sends it to the server.
[0430] Step 3:
[0431] The server receives the request and initializes the target NPC data by retrieving it from the database, including the NPC's name, role, and conversation history.
[0432] Step 4:
[0433] The server sends a request to the generative AI based on the acquired NPC data and user input. The request includes the user's input information and the NPC's past conversation history.
[0434] Step 5:
[0435] The generative AI generates the optimal response based on user input and NPC data, and returns that response to the server.
[0436] Step 6:
[0437] The server receives the response from the generative AI, adds the response to the NPC's conversation history, and returns the generated response to the terminal.
[0438] Step 7:
[0439] The terminal receives the response from the server and displays the content to the user. For example, it displays "Ore is very popular these days. The price of emeralds in particular is rising."
[0440] Step 8:
[0441] The user reviews the displayed response and then enters a new question or takes the next action.
[0442] Example 1
[0443] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."
[0444] Conventional online game conversation systems with non-player characters (NPCs) often provide monotonous conversations based on fixed phrases, lacking the quality and realism of user interaction. This creates the problem that users quickly become bored with the conversation content, reducing the sense of immersion in the game. Furthermore, the lack of responses that take into account conversation history or dynamic conversation experiences that include current information limits the user experience.
[0445] The specific processing by the specific processing unit 290 of the data processing device 12 in the first embodiment is realized by the following means.
[0446] In this invention, the server includes means for receiving input information from a user, means for generating a response using a generative artificial intelligence model based on the input information, means for displaying the generated response to the user, means for saving the generated response in a conversation history, and means for adjusting the generated response in consideration of the user's input history and attribute information of non-player characters. This allows the user to enjoy a more natural and dynamic conversation experience. Furthermore, changing the next response based on the conversation history and generating a response that incorporates external current information improves the quality of interaction and increases the sense of immersion in the game.
[0447] A "user" is a player who plays an online game and interacts with non-player characters (NPCs).
[0448] "Input information" refers to interaction data such as text input or voice input that a user makes to an NPC.
[0449] A "generative artificial intelligence model" is an artificial intelligence technology that uses natural language processing technology to generate appropriate responses to user input.
[0450] A "response" is a reply message that a generative artificial intelligence model generates based on information input by a user.
[0451] "Conversation history" refers to data that records the contents of past conversations between the user and NPCs.
[0452] A "non-player character (NPC)" is a computer-controlled character in an online game.
[0453] "Attribute information" refers to specific information about an NPC, such as its role, personality, and location in the story.
[0454] "Current events" refers to information about the latest news and events in the real world outside of the game.
[0455] This invention is a system that utilizes generative artificial intelligence (AI) to make conversations between non-player characters (NPCs) and users in online games more realistic and dynamic. Below, we will explain in detail how this system works.
[0456] Server-side processing
[0457] When the game starts, the server initializes the data of all NPCs. This initialization process includes the name, role, initial dialogue, and attribute information of each NPC. For example, the merchant NPC "John" is set to the role "merchant." This process includes loading the initial data from the database and updating the properties of each NPC.
[0458] When a user speaks to an NPC, the input information is sent from the device to the server. The server receives this input information and prepares it to be passed to a generative artificial intelligence model (e.g., GPT-3). A prompt is sent via the generative AI interface to generate an optimal response. For example, if a user types, "What are your recent recommended products?", the prompt "User: 'What are your recent recommended products?', NPC attribute: Merchant John" is sent to the generative AI.
[0459] The generated response is something like, "Ore is very popular these days. The price of emeralds in particular has risen." The server returns this response to the user and also saves it in the database as conversation history. This means that the next time the same user speaks, a response based on the previous conversation will be generated.
[0460] Terminal side processing
[0461] The device receives user input and prepares it to be sent to the server: for example, if the user types "hello", it processes the text together with the NPC's identifier, creates an HTTP request, and sends it to the server's specified endpoint.
[0462] When the device receives the response from the server, it displays the response to the user, for example, displaying the message "Ore is very popular these days" on the game screen. This includes updating the UI components to draw the text message.
[0463] User Experience
[0464] A user approaches an NPC in a game and initiates a conversation by pressing a specific key or clicking a conversation button. For example, a user might ask a merchant NPC, "Hello, what are your recent recommendations?"
[0465] The user receives a response from the NPC. They can read the text message displayed on the screen and decide what to do next. For example, if the user receives the message "Ore is very popular these days," they can either go to a place that sells ore or ask a merchant NPC for more information.
[0466] Examples of concrete examples and prompts
[0467] For example, consider the following conversation flow:
[0468] 1. The user types, "What's your latest recommendation?"
[0469] 2. The server sends the following prompt to the generative AI: "User: 'What are some recommended products these days?', NPC attributes: Merchant John."
[0470] 3. The generative AI model generates the response, "Ore is very popular these days. The price of emeralds in particular has risen."
[0471] 4. This response is displayed to the user, who then considers their next action.
[0472] In this way, by implementing the system of the invention, users can have a more natural and dynamic conversation experience, improving the immersion of the game. By utilizing conversation history, attribute information, and even current events, deeper interactions can be realized.
[0473] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0474] Program processing steps
[0475] Server-side processing
[0476] Step 1:
[0477] The server initializes the data of all NPCs at the start of the game. This is a process that reads the name, role, initial dialogue, and attribute information of each NPC from the database and reflects them in each NPC property. The input is the initial data obtained from the database, and the output is the initialized NPC properties.
[0478] Step 2:
[0479] When a user speaks to an NPC, the input information is sent from the device to the server. The server receives this input information and temporarily stores it. The input is the user's text input and the NPC's identifier, and the output is prompt-format data that is passed to the generative AI. Specifically, it analyzes the received user input information, adds the necessary attribute information, and generates a prompt.
[0480] Step 3:
[0481] The server passes the received user input to the generative AI. Specifically, it sends a prompt to the generative AI model to generate an appropriate response. The input is data in the form of a prompt, and the output is the response obtained from the generative AI model. For example, the prompt "User: 'What are your recent recommended products?' NPC attribute: Merchant" is sent to the generative AI.
[0482] Step 4:
[0483] The server returns the generated response to the user and simultaneously saves it as a conversation history. The input is the response from the generative AI model, and the output is the response sent to the user and the conversation history stored in the database. Specifically, the server sends the response to the terminal and records the response content in the database.
[0484] Terminal side processing
[0485] Step 1:
[0486] The terminal receives user input and prepares it to be sent to the server. The input is the text entered by the user and the NPC identifier, and the output is data in the form of a request to the server. Specifically, it analyzes the user's input information and generates an HTTP request.
[0487] Step 2:
[0488] A request containing user input and the NPC's ID is sent to the server. The input is the data in the request format to the server, and the output is the response from the server. Specifically, the generated HTTP request is sent to the specified endpoint.
[0489] Step 3:
[0490] Receives a response from the server. The input is data in the response format from the server, and the output is text that is displayed to the user. Specifically, it analyzes the received HTTP response and obtains the response message.
[0491] Step 4:
[0492] Display the received response to the user. The input is the parsed response text, and the output is the response that is displayed on the user's screen. Specifically, it updates the UI component to render the text message.
[0493] User processing
[0494] Step 1:
[0495] The user approaches an NPC in the game. The input is the user's movement, and the output is the proximity to the NPC. The specific action is to move the character and capture the NPC within a certain distance.
[0496] Step 2:
[0497] To start a dialogue, the user clicks a dialogue button or presses a specific key. The input is the user's operation, and the output is the dialogue start state. The specific operation is when the user performs a specific input operation.
[0498] Step 3:
[0499] The user receives a response from the NPC. The input is the response text displayed on the screen, and the output is the user's understanding and input for the next action. Specifically, the user reads the displayed message and decides the next action based on it.
[0500] (Application example 1)
[0501] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."
[0502] Conventional customer service systems in brick-and-mortar stores face challenges in providing natural, dynamic responses to customer questions. Furthermore, because they rely on dedicated operators, the quality of responses can vary, and responses can be delayed during busy periods. Furthermore, text-based responses alone are unlikely to improve customer satisfaction, and they can lack real-time response and natural conversational quality.
[0503] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.
[0504] In this invention, the server includes means for receiving input information from a user, means for generating a response by a generative artificial intelligence based on the input information, means for displaying the generated response to the user, means for saving the generated response in a conversation history, means for converting voice input into text, and means for converting the response of the generative artificial intelligence into voice and presenting it to the user. This enables customers to experience natural and dynamic dialogue in a physical store, improving customer satisfaction and enabling efficient customer service.
[0505] The "means for receiving input information from the user" is a function for capturing information input by the user through voice or text.
[0506] The "means for generating a response using generative artificial intelligence based on the input information" is a function that analyzes input information received from a user and generates an optimal response using generative artificial intelligence.
[0507] The "means for displaying the generated response to the user" is a function for visually or audibly presenting the generated response to the user.
[0508] The "means for saving the generated response in the conversation history" is a function for saving the generated response and the user's input information in response to the response in a database or the like.
[0509] The "means for converting voice input into text" is a function that analyzes the voice spoken by the user and converts it into corresponding text data.
[0510] "Means for converting the response of the generative artificial intelligence into audio and presenting it to the user" is a function that converts the text response generated by the generative artificial intelligence into audio data and plays it back to the user.
[0511] The system for implementing this invention aims to make customer service in brick-and-mortar stores more natural and effective. Details of the system and how it can be used are described below.
[0512] Server-side processing
[0513] Initialization
[0514] When the system starts up, the server initializes the data for each customer interaction. This includes the customer interaction assistant's name, personality, initial conversation template, etc. For example, the data for a store assistant might be set as "Assistant 001" or "Customer_Assistant."
[0515] Calling generative AI
[0516] When a customer submits input information through a smartphone app in a physical store, the data is sent to a server. The server receives this input information and passes it to a generative artificial intelligence (AI) to generate an optimal response. The generated response is returned to the user and saved in the conversation history. This allows the next time the same customer asks a question, a response can be generated taking into account the content of the previous conversation.
[0517] Terminal side processing
[0518] Voice to text conversion
[0519] The smartphone app receives the user's voice input and converts it to text. To convert speech to text, it uses the SpeechRecognition module.
[0520] Sending Events
[0521] The terminal sends the converted text to the server, generating a request that includes the input text and the customer ID. For example, if a customer asks, "What is the best product in this store right now?", that information is passed to the server.
[0522] Voiced responses
[0523] Upon receiving the generated response from the server, the device converts the response into speech and presents it to the user. It uses the Google Text-to-Speech (gTTS) module to generate an audio file and play it back.
[0524] User Experience
[0525] Start a conversation
[0526] Users can launch the smartphone app in a physical store and speak a question into the microphone, for example, "What is the most recommended product in this store right now?"
[0527] Receiving a response
[0528] The user receives a spoken response from the assistant, such as "Our current recommendation is our newly arrived emeralds. They're especially popular."
[0529] Specific examples
[0530] For example, if a customer launches the app and asks, "What is the best product in this store right now?", the app converts the question into text and sends it to the server. The server then uses generative AI to generate and send back a response such as, "Our current recommendation is the newly arrived emerald. It's especially popular." The app then converts the response into audio and plays it back to the customer.
[0531] Prompt Sentence Examples
[0532] "A customer asks on their smartphone, 'What is the best product in this store right now?' Generate a response to this question."
[0533] Such a system will provide advanced support for customer service in physical stores, improving customer satisfaction and enabling more efficient customer service.
[0534] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0535] Step 1:
[0536] The user speaks a question
[0537] The user launches the smartphone app and speaks a question into the microphone. The input is the user's voice, and this voice data is processed in the next step.
[0538] Step 2:
[0539] Convert voice input to text
[0540] The device converts the received user voice input into text data using the SpeechRecognition module. The input is the user's voice data, and the output is text data. Specifically, the audio captured from the microphone is saved in a buffer and then a voice recognition service is called to convert it into text.
[0541] Step 3:
[0542] Send the converted text to the server
[0543] The terminal generates a request including the customer correspondence ID along with the text data and sends it to the server. The input is the text data generated in step 2, and the output is the request data sent to the server. Specifically, the text data and the correspondence ID are sent to the server as an HTTP request.
[0544] Step 4:
[0545] The server calls the generative AI
[0546] The server calls the generative AI model based on the received text data to generate an optimal response. At this time, it uses a prompt sentence to have the AI model generate a response. The input is the text data sent in step 3, and the output is the response text generated by the generative AI model. Specifically, the server inputs the text data along with the prompt sentence to the generative AI model, and receives the generated response.
[0547] Step 5:
[0548] Save the generated response in the conversation history
[0549] The server saves the generated response and the corresponding user input in the conversation history. The input is the response text generated in step 4 and the original user input text, and the output is a record stored in the conversation history database, specifically as a new entry in the conversation history database.
[0550] Step 6:
[0551] The server sends a response back to the device
[0552] The server returns the generated response to the terminal. The input is the response text generated in step 4, and the output is the response data to be sent to the terminal. Specifically, the response data is sent to the terminal as an HTTP response.
[0553] Step 7:
[0554] Convert response text to speech
[0555] The device converts the received response text data into audio data using the Google Text-to-Speech (gTTS) module. The input is the response text data received in step 6, and the output is audio data. Specifically, the response text is input to the gTTS module, and a generated audio file is created.
[0556] Step 8:
[0557] Plays a voice response to the user
[0558] The terminal plays the generated audio data to the user. The input is the audio data generated in step 7, and the output is the audio heard by the user. Specifically, the generated audio file is played back by the playback module.
[0559] This process flow allows users to have a natural and interactive conversation experience in a physical store.
[0560] Furthermore, an emotion engine that estimates the user's emotion may be further combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59, and perform identification processing using the user's emotion.
[0561] A system for implementing this invention makes conversations between users and non-player characters (NPCs) in online games more realistic and provides more personalized responses by recognizing the user's emotions. This system works by combining generative artificial intelligence (AI) with an emotion engine.
[0562] Server-side processing
[0563] Initialization
[0564] When the game starts, the server initializes the data for each NPC. This includes the NPC's name, role, initial conversation content, conversation history, etc. For example, a merchant NPC will be set to "John" or "merchant."
[0565] emotion recognition
[0566] When a user speaks to an NPC, the input information is sent to the server. The server receives this input information and uses an emotion engine to analyze the user's emotions. For example, if the user inputs "What are your recent recommended products?", the emotion engine will determine the user's emotion as "interest" based on the context.
[0567] Calling generative AI
[0568] The server sends a request to the generative AI based on the user's emotional information recognized by the emotion engine and the input information. The generative AI takes this information into consideration to generate the optimal response. For example, if the user expresses "interest," the AI generates a response such as, "Ore is very popular these days. The price of emeralds in particular is rising."
[0569] Save your response and adjust it next time
[0570] The generated response is saved in the conversation history by the server. The next time the same user speaks, an appropriate response will be generated based on this conversation history and emotional information.
[0571] Terminal side processing
[0572] Sending Events
[0573] The terminal receives the user's input and sends it to the server, generating a request that includes the input text and the NPC's ID. For example, if the user types "What are your recent recommended products?", that information is passed to the server.
[0574] Viewing the response
[0575] When the device receives the response generated by the server, it displays it to the user. For example, it might say, "Ore is very popular these days. The price of emeralds in particular is rising." Furthermore, by using expressions that correspond to the user's emotions, a more natural and personalized experience is provided.
[0576] User Experience
[0577] Start a conversation
[0578] Users can approach NPCs in the game and start a conversation. For example, a user can ask a merchant NPC, "Hello, what are your recent recommended products?" Through this dialogue, users can have a more realistic and dynamic conversation experience.
[0579] Receiving a response
[0580] The user receives a response from the NPC. This response is not simply a standard phrase generated under predetermined conditions, but is customized by the generative AI, taking into account the user's input and emotions. For example, in addition to the response "Ore is very popular these days. The price of emeralds in particular has risen," the NPC might also add a sentiment-sensitive phrase such as "You look well. That's good news!"
[0581] Specific examples
[0582] Conversation flow example
[0583] 1. The user asks the merchant NPC, "What are your recommended products these days?"
[0584] 2. The device sends this input information to the server.
[0585] 3. The server analyzes the user's input using an emotion engine and recognizes "interests" and emotions.
[0586] 4. The server sends this input information and emotional information to the generative AI, which then generates the optimal response.
[0587] 5. Produces the response "Ore is very popular these days, especially emerald prices. You seem to be doing well, that's good news!"
[0588] 6. The generated response is returned to the terminal and displayed to the user.
[0589] 7. The server adds to the conversation history "What are your recent recommendations?" and "Ore has been very popular recently. The price of emeralds in particular has been rising. You seem to be doing well. That's good news!"
[0590] In this way, an NPC system that utilizes generative AI and an emotion engine allows users to enjoy more realistic and personalized conversations in online games. By utilizing conversation history, current events, and emotional information, even deeper interactions become possible.
[0591] The processing flow will be explained below.
[0592] Step 1:
[0593] The user approaches an NPC in the game, enters "What are some of your recent recommended products?" into the dialogue interface, and presses the send button.
[0594] Step 2:
[0595] The terminal receives the user's input, generates a request containing the input text and the NPC's ID, and sends it to the server.
[0596] Step 3:
[0597] The server receives the request and retrieves the target NPC data from the database, including the NPC's name, role, and conversation history.
[0598] Step 4:
[0599] The server sends the acquired NPC data and user input information to the emotion engine, which analyzes the user's emotions.
[0600] Step 5:
[0601] The emotion engine analyzes emotions from user input and recognizes the emotion "interest," for example.
[0602] Step 6:
[0603] The server sends a request to the generative artificial intelligence based on the emotion information from the emotion engine and the user's input information.
[0604] Step 7:
[0605] The generative artificial intelligence generates the optimal response based on the user's input information and emotional information, and returns that response to the server.
[0606] Step 8:
[0607] The server receives the generated response, adds it to the conversation history, and updates it, and also sends the generated response to the terminal.
[0608] Step 9:
[0609] The device receives the response from the server and displays it to the user, for example, "Ore is very popular these days. Prices for emeralds in particular are rising. You look well, that's good news!"
[0610] Step 10:
[0611] The user reviews the displayed response and then enters a new question or takes the next action.
[0612] Example 2
[0613] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."
[0614] Conversations with non-player characters (NPCs) in conventional online games are based on static scripts, and typically involve repetition of the same conversation content or responses that do not take the user's emotions into consideration. As a result, users often become dissatisfied with the lack of realism and personalization of the conversation. Furthermore, conventional systems make it difficult to adjust the next response based on the conversation history or the user's emotions, leading to boredom due to the repetition of the same patterns. Furthermore, dynamic responses that incorporate external information are lacking, making it impossible to respond in a way that reflects the latest information. The present invention aims to solve these problems.
[0615] The identification process by the identification processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means. In this invention, the server includes means for receiving input information from a user, means for recognizing the user's emotion based on the input information using an emotion engine, means for generating a response based on the recognized emotion information and the input information using a generative artificial intelligence model, means for displaying the generated response to the user, and means for saving the generated response and the user's emotion information in a conversation history. This enables a realistic and personalized conversation based on the user's emotion. Furthermore, the next response can be adjusted based on the conversation history and the user's emotion information, thereby realizing a deeper interaction. Furthermore, by including external information in the generated response, a dynamic response that reflects the latest information is possible.
[0616] "Means for receiving input information from a user" refers to a combination of hardware and software for sending information such as text data or voice data input by a user to a server and receiving it.
[0617] "Emotion engine" refers to an algorithm or processing device that analyzes user input and recognizes emotions. Examples include emotion recognition systems that use natural language processing technology.
[0618] "Generative AI models" refer to machine learning models or algorithms that generate appropriate responses based on user input and emotions. Examples include response generation models based on deep learning.
[0619] "Means for displaying the generated response to the user" refers to a display device or software interface for providing the response generated by the generative artificial intelligence model to the user visually or audibly.
[0620] "Means for saving in conversation history" refers to technical means for recording and saving the generated responses, the user's input information in response to the responses, and the user's emotional information in a database or file system.
[0621] "External information" refers to current events, news, and information related to the user's environment obtained from sources other than the game's database, allowing for dynamic responses to be generated.
[0622] MODE FOR CARRYING OUT THE INVENTION
[0623] A system for implementing this invention makes conversations between users and non-player characters (NPCs) in online games more realistic and provides personalized responses by recognizing the user's emotions. This system works by combining generative artificial intelligence (AI) and an emotion engine.
[0624] Server-side processing
[0625] On the server, first, when the game starts, the data for each NPC is initialized. This initialization includes the NPC's name, role, initial conversation content, conversation history, etc. Specifically, this information is retrieved from a database (e.g., MySQL or PostgreSQL) and set for each NPC. For example, for a merchant NPC, the name is set to "John" and the role to "merchant."
[0626] Next, when the user speaks to the NPC, the input information is sent to the server. The server analyzes this user input information using an emotion engine (e.g., IBM Watson Tone Analyzer) and recognizes the user's emotion. For example, if the user inputs "What are your recent recommended products?", the emotion engine will recognize "interest."
[0627] The server then sends prompts to a generative AI model (e.g., OpenAI GPT-4) based on the emotion information and the user's input to generate an optimal response. The prompts here have the following format:
[0628] "The user is asking a merchant NPC, 'What are your recent recommendations?' The user is interested. Generate an appropriate response."
[0629] The generated response is recorded for the next conversation, and the server stores this response and the conversation history in a database. This allows the next time the same user speaks, a more appropriate response will be generated based on the past conversation history and emotional information.
[0630] Terminal side processing
[0631] The terminal receives the user's input and sends it to the server. At this time, it generates a request containing the input text and the NPC's ID and sends it to the server. For example, if the user inputs "What are your recent recommended products?", that information is sent in the form of a request.
[0632] Once the server generates a response, the device displays it to the user. For example, the device might say, "Ore is very popular these days. The price of emeralds in particular is rising." The device also uses emotionally appropriate expressions, providing a more natural and personalized experience.
[0633] User Experience
[0634] Users can approach NPCs in the game and start a conversation. For example, a user can start a conversation by asking a merchant NPC, "Hello, what are your recent recommended products?" Through this dialogue, users can enjoy a more realistic and dynamic conversation experience.
[0635] The generated responses are not simply standard phrases, but are customized by the generative AI, taking into account the user's input and emotions. For example, in addition to the response "Ore is very popular these days. The price of emeralds in particular has risen," a response that takes the user's emotions into consideration might be added, such as "You look well. That's good news!"
[0636] In this way, an NPC system that combines generative AI and an emotion engine allows users to enjoy more realistic and personalized conversations within online games, and by utilizing conversation history, current events, and emotional information, even deeper interactions are possible.
[0637] The flow of the identification process in the second embodiment will be described with reference to FIG.
[0638] Program processing flow and specific explanation
[0639] Server-side processing
[0640] Step 1:
[0641] When the game starts, the server initializes the data of each NPC.
[0642] Specific operation: The server retrieves the NPC's name, role, initial conversation content, and conversation history from the database and sets them as the NPC's attributes.
[0643] Input: Game Start Event
[0644] Output: Initialized NPC data
[0645] Step 2:
[0646] The user talks to an NPC.
[0647] Specific action: The user speaks to the NPC using text input or voice input.
[0648] Input: User text or voice input
[0649] Output: None
[0650] Step 3:
[0651] The terminal sends a request to the server containing the user's input and the NPC's ID.
[0652] What it does: The device captures input, formats it, and sends it as a request to the server.
[0653] Input: User text or voice input, NPC ID
[0654] Output: Request (user input and NPC ID)
[0655] Step 4:
[0656] The server receives the request and analyzes the user's input information using the emotion engine.
[0657] Specific operation: The server analyzes the received request and recognizes the user's emotion using the emotion engine.
[0658] Input: Request (user input and NPC ID)
[0659] Output: User's emotional information
[0660] Step 5:
[0661] The server sends prompts to the generative AI model based on the emotional information and user input.
[0662] Specific operation: The server generates a prompt sentence and sends it to the generative AI.
[0663] Prompt: The user is asking a merchant NPC, "What are your recent recommended items?" The user is interested. Generate an appropriate response.
[0664] Input: User input information, user emotion information
[0665] Output: prompt to generative AI
[0666] Step 6:
[0667] The generative AI model generates optimal responses based on prompts.
[0668] Specific behavior: The generative AI model generates a response based on the given prompt.
[0669] Input: prompt
[0670] Output: The generated response
[0671] Step 7:
[0672] The server stores the generated responses and the user's emotional information in the conversation history.
[0673] Specific operation: The server stores the responses, emotional information, and user input in a database as a conversation history.
[0674] Input: Generated response, user's emotional information
[0675] Output: Saved conversation history
[0676] Terminal side processing
[0677] Step 1:
[0678] The terminal receives the generated response from the server.
[0679] Specific operation: The terminal receives and analyzes the response sent by the server.
[0680] Input: Generated response
[0681] Output: Parsed response data
[0682] Step 2:
[0683] The terminal displays the response to the user.
[0684] Specific operation: The device displays a response to the user visually or audibly.
[0685] Input: Parsed response data
[0686] Output: The response displayed to the user
[0687] User Experience
[0688] Step 1:
[0689] The user approaches an NPC and begins a dialogue.
[0690] Specific actions: The user controls a character in the game and gives input to talk to NPCs.
[0691] Input: User action
[0692] Output: None
[0693] Step 2:
[0694] The user receives the generated response.
[0695] Specific action: The user checks the response displayed on the device and considers how to respond to it.
[0696] Input: Displayed response
[0697] Output: User response
[0698] (Application example 2)
[0699] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the smart glasses 214 will be referred to as a "terminal."
[0700] Traditional customer service methods in brick-and-mortar stores are uniform and not personalized, and they have the problem of not being able to properly respond to customer emotions and needs. In particular, if interactions with customers are not personalized based on emotions, the customer experience may be poor and satisfaction may decrease. Therefore, a system is needed to improve customer service in stores and provide more personalized responses that meet individual needs.
[0701] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 2 is realized by the following means.
[0702] In this invention, the server includes means for receiving input information from a user, means for generating a response based on the input information using generative artificial intelligence, means for displaying the generated response to the user, means for saving the generated response in a conversation history, means for analyzing emotions from the user's input information, and means for personalizing the response based on the emotion analysis results. This enables personalized responses based on customer emotions, improving the customer experience.
[0703] The "means for receiving input information from a user" is an interface for transmitting information input by a user to a server.
[0704] The "means for generating a response by a generative artificial intelligence based on the input information" is a process by which the generative artificial intelligence generates an appropriate response using the user's input information.
[0705] The "means for displaying the generated response to the user" is an interface for providing the response generated by the generative artificial intelligence to the user visually or audibly.
[0706] The "means for saving generated responses in a conversation history" is a process for recording generated responses and the history of the dialogue, and saving them so that they can be used in future dialogues.
[0707] "Means for analyzing emotions from user input" refers to algorithms and processes for analyzing user input and identifying their emotional state.
[0708] The "means for personalizing responses based on the results of sentiment analysis" refers to a process for customizing responses that reflect the results of sentiment analysis and are appropriate for the user's emotional state.
[0709] This invention is a system that combines generative artificial intelligence (AI) and a sentiment analysis engine to improve customer service in brick-and-mortar stores. This system is mainly composed of three components: a server, a terminal, and a user.
[0710] Server-side processing
[0711] Initialization
[0712] When the system starts up, the server initializes the data of all virtual characters (VPCs), including the VPC's role, initial response, conversation history, etc. For example, a store assistant VPC would be set to "Assistant" or "shop assistant."
[0713] emotion recognition
[0714] When the information entered by the user is sent to the server via the device, the server receives the input information and analyzes the user's emotions using a sentiment analysis engine. For example, if the user input is "Tell me about this toaster," the sentiment engine will determine the user's emotion as "interested" based on the context. The sentiment analysis engine uses the Hugging Face transformers library.
[0715] Response Generation
[0716] The server sends a request to the generative AI based on the user's emotional information recognized by the emotion engine and the input information. The generative AI takes this information into consideration to generate the optimal response. For example, if the user shows interest, the AI will generate a response such as, "This toaster is the latest model. It can toast four slices of bread at once and maintain even toasting." The generative AI model used is OpenAI's GPT-3.
[0717] Save your response and adjust it next time
[0718] The generated response is saved in the conversation history by the server. The next time the same user speaks, an appropriate response will be generated based on this conversation history and emotional information.
[0719] Terminal side processing
[0720] Sending Events
[0721] The device takes the user's input and sends it to the server, generating a request that includes the entered text and the VPC ID. For example, if the user types "Tell me about this toaster," that information is passed to the server.
[0722] Viewing the response
[0723] Once the device receives the generated response from the server, it displays it to the user. For example, it might say, "This toaster is the latest model. It can toast four slices of bread at once and toast them evenly." The device also uses expressions that reflect the user's emotions, providing a more natural and personalized experience.
[0724] User Experience
[0725] Start a conversation
[0726] A user initiates an interaction with the VPC through a smartphone application in a physical store, for example by asking, "Tell me about this toaster."
[0727] Receiving a response
[0728] The user receives a response from the VPC, which is customized by the generative AI taking into account the user's input and emotions. For example, a response might be provided that reads, "This toaster is the latest model. It can toast four slices of bread at once and maintains even toasting."
[0729] Prompt Sentence Examples
[0730] "User's feeling is interest. Generate a response to the user's question: 'Tell me about this toaster.'"
[0731] "User's feeling is excitement. Generate a response to the user's question: 'What's new this month?'"
[0732] "User's feeling is anxiety. Generate a response to the user's question: 'Is this vacuum cleaner easy to use?'"
[0733] This prompt enables the generative AI to generate optimal responses based on the user's emotions, significantly improving the customer experience in physical stores.
[0734] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[0735] Step 1:
[0736] The server receives information entered by the user through the terminal. For example, if the user enters "Tell me about this toaster," the text is sent from the terminal to the server. Through this process, the server obtains the input information (the user's question).
[0737] Step 2:
[0738] The server passes the received input information to a sentiment analysis engine to analyze the user's emotions. Specifically, it processes the text data using Hugging Face's transformers library and outputs emotion labels such as "interested," "excited," and "anxious." Through this processing, the server obtains data that identifies the user's emotional state.
[0739] Step 3:
[0740] The server generates a prompt based on the results of the sentiment analysis. For example, if the user's input is "Tell me about this toaster," and the sentiment is identified as "interest," the prompt will be "User's feeling is interest. Generate a response for the user's question: 'Tell me about this toaster.'" This process creates text data to be sent to the generative AI model.
[0741] Step 4:
[0742] The server sends a prompt to a generative AI model (OpenAI's GPT-3) to generate the optimal response. The generative AI model performs data calculations based on the prompt and outputs a response. For example, a response might be generated such as, "This toaster is the latest model. It can toast four slices of bread at once and maintain even toasting."
[0743] Step 5:
[0744] The server stores the generated response in the conversation history, so that if the same user asks the question again in the future, the server can tailor the response based on that history. This process accumulates historical data of responses.
[0745] Step 6:
[0746] The server sends the generated response to the terminal. The terminal receives this response and presents it to the user. Specifically, the response is displayed on the terminal's display. This process allows the user to check the response from the server.
[0747] Step 7:
[0748] The user checks the response displayed on the device and decides on the next action. For example, if the user takes a further action, such as "I'll buy this toaster," the input information is sent back to the server, and a new series of processes begins. This process allows the user to carry out the next dialogue or action based on the response.
[0749] The specific processing unit 290 transmits the result of the specific processing to the smart glasses 214. In the smart glasses 214, the control unit 46A causes the speaker 240 to output the result of the specific processing. The microphone 238 acquires audio indicating a user input regarding the result of the specific processing. The control unit 46A transmits audio data indicating the user input acquired by the microphone 238 to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the audio data.
[0750] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (Internet Search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search <url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[0751] In the above embodiment, an example in which the specific processing is performed by the data processing device 12 has been given, but the technology of the present disclosure is not limited to this, and the specific processing may be performed by the smart glasses 214.
[0752] [Third embodiment]
[0753] FIG. 5 shows an example of the configuration of a data processing system 310 according to the third embodiment.
[0754] 5, the data processing system 310 includes the data processing device 12 and a headset terminal 314. An example of the data processing device 12 is a server.
[0755] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[0756] The headset type terminal 314 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication I / F 44, and a display 343. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The microphone 238, the speaker 240, the camera 42, and the display 343 are also connected to the bus 52.
[0757] The microphone 238 receives instructions and the like from the user 20 by receiving voice uttered by the user 20. The microphone 238 captures the voice uttered by the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio in accordance with instructions from the processor 46.
[0758] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the surroundings of user 20 (for example, an imaging range defined by an angle of view equivalent to the field of vision of a typical healthy person).
[0759] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 are responsible for the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.
[0760] Fig. 6 shows an example of the main functions of the data processing device 12 and the headset type terminal 314. As shown in Fig. 6, in the data processing device 12, a specific process is performed by the processor 28. A specific process program 56 is stored in the storage 32.
[0761] The specific processing program 56 is an example of a "program" according to the technology of the present disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.
[0762] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[0763] In the headset type terminal 314, a reception output process is performed by the processor 46. A reception output program 60 is stored in the storage 50. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.
[0764] Next, a description will be given of the identification process performed by the identification processing unit 290 of the data processing device 12. In the following description, the data processing device 12 will be referred to as the "server" and the headset type terminal 314 will be referred to as the "terminal."
[0765] A system for implementing this invention utilizes generative artificial intelligence (AI) to make conversations between users and non-player characters (NPCs) in online games more realistic. The following describes in detail how this system works.
[0766] Server-side processing
[0767] Initialization
[0768] When the game starts, the server initializes the data for each NPC. This includes the NPC's name, role, initial conversation, etc. For example, a merchant NPC will be set to "John" or "merchant."
[0769] Calling generative AI
[0770] When a user speaks to an NPC, the input information is sent to the server. The server receives this input information and passes it to a generative AI to generate the optimal response. The generated response is returned to the user and saved in the conversation history. This means that the next time the same user speaks, a response will be generated taking into account the content of the previous conversation.
[0771] Terminal side processing
[0772] Sending Events
[0773] The terminal receives the user's input and sends it to the server, generating a request that includes the input text and the NPC's ID. For example, if the user types "What are your recent recommended products?", that information is passed to the server.
[0774] Viewing the response
[0775] When the terminal receives the generated response from the server, it displays it to the user. For example, the terminal might display a response such as, "Ore is very popular these days. The price of emeralds in particular is rising."
[0776] User Experience
[0777] Start a conversation
[0778] Users can approach NPCs in the game and start a conversation. For example, a user can ask a merchant NPC, "Hello, what are your recent recommended products?" Through this dialogue, users can have a more realistic and dynamic conversation experience.
[0779] Receiving a response
[0780] The user receives a response from the NPC, which is not simply a canned response generated under predetermined conditions, but is customized by the generative AI, taking into account the user's input.
[0781] Specific examples
[0782] Conversation flow example
[0783] 1. The user asks the merchant NPC, "What are your recommended products these days?"
[0784] 2. The device sends this input information to the server.
[0785] 3. The server sends this input information to the generative AI, which generates an appropriate response.
[0786] 4. Produces the response "Ore is very popular these days. The price of emeralds in particular has been rising."
[0787] 5. The generated response is returned to the terminal and displayed to the user.
[0788] 6. The server adds to the conversation history "What are your recent recommended products?" and "Ore has been very popular recently. The price of emeralds in particular has been rising."
[0789] In this way, NPC systems that utilize generative AI allow users to enjoy more realistic and dynamic conversations in online games. By utilizing conversation history and current events, even deeper interactions become possible.
[0790] The processing flow will be explained below.
[0791] Step 1:
[0792] The user approaches an NPC in the game, enters "What are some of your recent recommended products?" into the dialogue interface, and presses the send button.
[0793] Step 2:
[0794] The terminal receives the user's input, generates a request containing the input text and the NPC's ID, and sends it to the server.
[0795] Step 3:
[0796] The server receives the request and initializes the target NPC data by retrieving it from the database, including the NPC's name, role, and conversation history.
[0797] Step 4:
[0798] The server sends a request to the generative AI based on the acquired NPC data and user input. The request includes the user's input information and the NPC's past conversation history.
[0799] Step 5:
[0800] The generative AI generates the optimal response based on user input and NPC data, and returns that response to the server.
[0801] Step 6:
[0802] The server receives the response from the generative AI, adds the response to the NPC's conversation history, and returns the generated response to the terminal.
[0803] Step 7:
[0804] The terminal receives the response from the server and displays the content to the user. For example, it displays "Ore is very popular these days. The price of emeralds in particular is rising."
[0805] Step 8:
[0806] The user reviews the displayed response and then enters a new question or takes the next action.
[0807] Example 1
[0808] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."
[0809] Conventional online game conversation systems with non-player characters (NPCs) often provide monotonous conversations based on fixed phrases, lacking the quality and realism of user interaction. This creates the problem that users quickly become bored with the conversation content, reducing the sense of immersion in the game. Furthermore, the lack of responses that take into account conversation history or dynamic conversation experiences that include current information limits the user experience.
[0810] The specific processing by the specific processing unit 290 of the data processing device 12 in the first embodiment is realized by the following means.
[0811] In this invention, the server includes means for receiving input information from a user, means for generating a response using a generative artificial intelligence model based on the input information, means for displaying the generated response to the user, means for saving the generated response in a conversation history, and means for adjusting the generated response in consideration of the user's input history and attribute information of non-player characters. This allows the user to enjoy a more natural and dynamic conversation experience. Furthermore, changing the next response based on the conversation history and generating a response that incorporates external current information improves the quality of interaction and increases the sense of immersion in the game.
[0812] A "user" is a player who plays an online game and interacts with non-player characters (NPCs).
[0813] "Input information" refers to interaction data such as text input or voice input that a user makes to an NPC.
[0814] A "generative artificial intelligence model" is an artificial intelligence technology that uses natural language processing technology to generate appropriate responses to user input.
[0815] A "response" is a reply message that a generative artificial intelligence model generates based on information input by a user.
[0816] "Conversation history" refers to data that records the contents of past conversations between the user and NPCs.
[0817] A "non-player character (NPC)" is a computer-controlled character in an online game.
[0818] "Attribute information" refers to specific information about an NPC, such as its role, personality, and location in the story.
[0819] "Current events" refers to information about the latest news and events in the real world outside of the game.
[0820] This invention is a system that utilizes generative artificial intelligence (AI) to make conversations between non-player characters (NPCs) and users in online games more realistic and dynamic. Below, we will explain in detail how this system works.
[0821] Server-side processing
[0822] When the game starts, the server initializes the data of all NPCs. This initialization process includes the name, role, initial dialogue, and attribute information of each NPC. For example, the merchant NPC "John" is set to the role "merchant." This process includes loading the initial data from the database and updating the properties of each NPC.
[0823] When a user speaks to an NPC, the input information is sent from the device to the server. The server receives this input information and prepares it to be passed to a generative artificial intelligence model (e.g., GPT-3). A prompt is sent via the generative AI interface to generate an optimal response. For example, if a user types, "What are your recent recommended products?", the prompt "User: 'What are your recent recommended products?', NPC attribute: Merchant John" is sent to the generative AI.
[0824] The generated response is something like, "Ore is very popular these days. The price of emeralds in particular has risen." The server returns this response to the user and also saves it in the database as conversation history. This means that the next time the same user speaks, a response based on the previous conversation will be generated.
[0825] Terminal side processing
[0826] The device receives user input and prepares it to be sent to the server: for example, if the user types "hello", it processes the text together with the NPC's identifier, creates an HTTP request, and sends it to the server's specified endpoint.
[0827] When the device receives the response from the server, it displays the response to the user, for example, displaying the message "Ore is very popular these days" on the game screen. This includes updating the UI components to draw the text message.
[0828] User Experience
[0829] A user approaches an NPC in a game and initiates a conversation by pressing a specific key or clicking a conversation button. For example, a user might ask a merchant NPC, "Hello, what are your recent recommendations?"
[0830] The user receives a response from the NPC. They can read the text message displayed on the screen and decide what to do next. For example, if the user receives the message "Ore is very popular these days," they can either go to a place that sells ore or ask a merchant NPC for more information.
[0831] Examples of concrete examples and prompts
[0832] For example, consider the following conversation flow:
[0833] 1. The user types, "What's your latest recommendation?"
[0834] 2. The server sends the following prompt to the generative AI: "User: 'What are some recommended products these days?', NPC attributes: Merchant John."
[0835] 3. The generative AI model generates the response, "Ore is very popular these days. The price of emeralds in particular has risen."
[0836] 4. This response is displayed to the user, who then considers their next action.
[0837] In this way, by implementing the system of the invention, users can have a more natural and dynamic conversation experience, improving the immersion of the game. By utilizing conversation history, attribute information, and even current events, deeper interactions can be realized.
[0838] The flow of the identification process in the first embodiment will be described with reference to FIG.
[0839] Program processing steps
[0840] Server-side processing
[0841] Step 1:
[0842] The server initializes the data of all NPCs at the start of the game. This is a process that reads the name, role, initial dialogue, and attribute information of each NPC from the database and reflects them in each NPC property. The input is the initial data obtained from the database, and the output is the initialized NPC properties.
[0843] Step 2:
[0844] When a user speaks to an NPC, the input information is sent from the device to the server. The server receives this input information and temporarily stores it. The input is the user's text input and the NPC's identifier, and the output is prompt-format data that is passed to the generative AI. Specifically, it analyzes the received user input information, adds the necessary attribute information, and generates a prompt.
[0845] Step 3:
[0846] The server passes the received user input to the generative AI. Specifically, it sends a prompt to the generative AI model to generate an appropriate response. The input is data in the form of a prompt, and the output is the response obtained from the generative AI model. For example, the prompt "User: 'What are your recent recommended products?' NPC attribute: Merchant" is sent to the generative AI.
[0847] Step 4:
[0848] The server returns the generated response to the user and simultaneously saves it as a conversation history. The input is the response from the generative AI model, and the output is the response sent to the user and the conversation history stored in the database. Specifically, the server sends the response to the terminal and records the response content in the database.
[0849] Terminal side processing
[0850] Step 1:
[0851] The terminal receives user input and prepares it to be sent to the server. The input is the text entered by the user and the NPC identifier, and the output is data in the form of a request to the server. Specifically, it analyzes the user's input information and generates an HTTP request.
[0852] Step 2:
[0853] A request containing user input and the NPC's ID is sent to the server. The input is the data in the request format to the server, and the output is the response from the server. Specifically, the generated HTTP request is sent to the specified endpoint.
[0854] Step 3:
[0855] Receives a response from the server. The input is data in the response format from the server, and the output is text that is displayed to the user. Specifically, it analyzes the received HTTP response and obtains the response message.
[0856] Step 4:
[0857] Display the received response to the user. The input is the parsed response text, and the output is the response that is displayed on the user's screen. Specifically, it updates the UI component to render the text message.
[0858] User processing
[0859] Step 1:
[0860] The user approaches an NPC in the game. The input is the user's movement, and the output is the proximity to the NPC. The specific action is to move the character and capture the NPC within a certain distance.
[0861] Step 2:
[0862] To start a dialogue, the user clicks a dialogue button or presses a specific key. The input is the user's operation, and the output is the dialogue start state. The specific operation is when the user performs a specific input operation.
[0863] Step 3:
[0864] The user receives a response from the NPC. The input is the response text displayed on the screen, and the output is the user's understanding and input for the next action. Specifically, the user reads the displayed message and decides the next action based on it.
[0865] (Application example 1)
[0866] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."
[0867] Conventional customer service systems in brick-and-mortar stores face challenges in providing natural, dynamic responses to customer questions. Furthermore, because they rely on dedicated operators, the quality of responses can vary, and responses can be delayed during busy periods. Furthermore, text-based responses alone are unlikely to improve customer satisfaction, and they can lack real-time response and natural conversational quality.
[0868] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.
[0869] In this invention, the server includes means for receiving input information from a user, means for generating a response by a generative artificial intelligence based on the input information, means for displaying the generated response to the user, means for saving the generated response in a conversation history, means for converting voice input into text, and means for converting the response of the generative artificial intelligence into voice and presenting it to the user. This enables customers to experience natural and dynamic dialogue in a physical store, improving customer satisfaction and enabling efficient customer service.
[0870] The "means for receiving input information from the user" is a function for capturing information input by the user through voice or text.
[0871] The "means for generating a response using generative artificial intelligence based on the input information" is a function that analyzes input information received from a user and generates an optimal response using generative artificial intelligence.
[0872] The "means for displaying the generated response to the user" is a function for visually or audibly presenting the generated response to the user.
[0873] The "means for saving the generated response in the conversation history" is a function for saving the generated response and the user's input information in response to the response in a database or the like.
[0874] The "means for converting voice input into text" is a function that analyzes the voice spoken by the user and converts it into corresponding text data.
[0875] "Means for converting the response of the generative artificial intelligence into audio and presenting it to the user" is a function that converts the text response generated by the generative artificial intelligence into audio data and plays it back to the user.
[0876] The system for implementing this invention aims to make customer service in brick-and-mortar stores more natural and effective. Details of the system and how it can be used are described below.
[0877] Server-side processing
[0878] Initialization
[0879] When the system starts up, the server initializes the data for each customer interaction. This includes the customer interaction assistant's name, personality, initial conversation template, etc. For example, the data for a store assistant might be set as "Assistant 001" or "Customer_Assistant."
[0880] Calling generative AI
[0881] When a customer submits input information through a smartphone app in a physical store, the data is sent to a server. The server receives this input information and passes it to a generative artificial intelligence (AI) to generate an optimal response. The generated response is returned to the user and saved in the conversation history. This allows the next time the same customer asks a question, a response can be generated taking into account the content of the previous conversation.
[0882] Terminal side processing
[0883] Voice to text conversion
[0884] The smartphone app receives the user's voice input and converts it to text. To convert speech to text, it uses the SpeechRecognition module.
[0885] Sending Events
[0886] The terminal sends the converted text to the server, generating a request that includes the input text and the customer ID. For example, if a customer asks, "What is the best product in this store right now?", that information is passed to the server.
[0887] Voiced responses
[0888] Upon receiving the generated response from the server, the device converts the response into speech and presents it to the user. It uses the Google Text-to-Speech (gTTS) module to generate an audio file and play it back.
[0889] User Experience
[0890] Start a conversation
[0891] Users can launch the smartphone app in a physical store and speak a question into the microphone, for example, "What is the most recommended product in this store right now?"
[0892] Receiving a response
[0893] The user receives a spoken response from the assistant, such as "Our current recommendation is our newly arrived emeralds. They're especially popular."
[0894] Specific examples
[0895] For example, if a customer launches the app and asks, "What is the best product in this store right now?", the app converts the question into text and sends it to the server. The server then uses generative AI to generate and send back a response such as, "Our current recommendation is the newly arrived emerald. It's especially popular." The app then converts the response into audio and plays it back to the customer.
[0896] Prompt Sentence Examples
[0897] "A customer asks on their smartphone, 'What is the best product in this store right now?' Generate a response to this question."
[0898] Such a system will provide advanced support for customer service in physical stores, improving customer satisfaction and enabling more efficient customer service.
[0899] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[0900] Step 1:
[0901] The user speaks a question
[0902] The user launches the smartphone app and speaks a question into the microphone. The input is the user's voice, and this voice data is processed in the next step.
[0903] Step 2:
[0904] Convert voice input to text
[0905] The device converts the received user voice input into text data using the SpeechRecognition module. The input is the user's voice data, and the output is text data. Specifically, the audio captured from the microphone is saved in a buffer and then a voice recognition service is called to convert it into text.
[0906] Step 3:
[0907] Send the converted text to the server
[0908] The terminal generates a request including the customer correspondence ID along with the text data and sends it to the server. The input is the text data generated in step 2, and the output is the request data sent to the server. Specifically, the text data and the correspondence ID are sent to the server as an HTTP request.
[0909] Step 4:
[0910] The server calls the generative AI
[0911] The server calls the generative AI model based on the received text data to generate an optimal response. At this time, it uses a prompt sentence to have the AI model generate a response. The input is the text data sent in step 3, and the output is the response text generated by the generative AI model. Specifically, the server inputs the text data along with the prompt sentence to the generative AI model, and receives the generated response.
[0912] Step 5:
[0913] Save the generated response in the conversation history
[0914] The server saves the generated response and the corresponding user input in the conversation history. The input is the response text generated in step 4 and the original user input text, and the output is a record stored in the conversation history database, specifically as a new entry in the conversation history database.
[0915] Step 6:
[0916] The server sends a response back to the device
[0917] The server returns the generated response to the terminal. The input is the response text generated in step 4, and the output is the response data to be sent to the terminal. Specifically, the response data is sent to the terminal as an HTTP response.
[0918] Step 7:
[0919] Convert response text to speech
[0920] The device converts the received response text data into audio data using the Google Text-to-Speech (gTTS) module. The input is the response text data received in step 6, and the output is audio data. Specifically, the response text is input to the gTTS module, and a generated audio file is created.
[0921] Step 8:
[0922] Plays a voice response to the user
[0923] The terminal plays the generated audio data to the user. The input is the audio data generated in step 7, and the output is the audio heard by the user. Specifically, the generated audio file is played back by the playback module.
[0924] This process flow allows users to have a natural and interactive conversation experience in a physical store.
[0925] Furthermore, an emotion engine that estimates the user's emotion may be further combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59, and perform identification processing using the user's emotion.
[0926] A system for implementing this invention makes conversations between users and non-player characters (NPCs) in online games more realistic and provides more personalized responses by recognizing the user's emotions. This system works by combining generative artificial intelligence (AI) with an emotion engine.
[0927] Server-side processing
[0928] Initialization
[0929] When the game starts, the server initializes the data for each NPC. This includes the NPC's name, role, initial conversation content, conversation history, etc. For example, a merchant NPC will be set to "John" or "merchant."
[0930] emotion recognition
[0931] When a user speaks to an NPC, the input information is sent to the server. The server receives this input information and uses an emotion engine to analyze the user's emotions. For example, if the user inputs "What are your recent recommended products?", the emotion engine will determine the user's emotion as "interest" based on the context.
[0932] Calling generative AI
[0933] The server sends a request to the generative AI based on the user's emotional information recognized by the emotion engine and the input information. The generative AI takes this information into consideration to generate the optimal response. For example, if the user expresses "interest," the AI generates a response such as, "Ore is very popular these days. The price of emeralds in particular is rising."
[0934] Save your response and adjust it next time
[0935] The generated response is saved in the conversation history by the server. The next time the same user speaks, an appropriate response will be generated based on this conversation history and emotional information.
[0936] Terminal side processing
[0937] Sending Events
[0938] The terminal receives the user's input and sends it to the server, generating a request that includes the input text and the NPC's ID. For example, if the user types "What are your recent recommended products?", that information is passed to the server.
[0939] Viewing the response
[0940] When the device receives the response generated by the server, it displays it to the user. For example, it might say, "Ore is very popular these days. The price of emeralds in particular is rising." Furthermore, by using expressions that correspond to the user's emotions, a more natural and personalized experience is provided.
[0941] User Experience
[0942] Start a conversation
[0943] Users can approach NPCs in the game and start a conversation. For example, a user can ask a merchant NPC, "Hello, what are your recent recommended products?" Through this dialogue, users can have a more realistic and dynamic conversation experience.
[0944] Receiving a response
[0945] The user receives a response from the NPC. This response is not simply a standard phrase generated under predetermined conditions, but is customized by the generative AI, taking into account the user's input and emotions. For example, in addition to the response "Ore is very popular these days. The price of emeralds in particular has risen," the NPC might also add a sentiment-sensitive phrase such as "You look well. That's good news!"
[0946] Specific examples
[0947] Conversation flow example
[0948] 1. The user asks the merchant NPC, "What are your recommended products these days?"
[0949] 2. The device sends this input information to the server.
[0950] 3. The server analyzes the user's input using an emotion engine and recognizes "interests" and emotions.
[0951] 4. The server sends this input information and emotional information to the generative AI, which then generates the optimal response.
[0952] 5. Produces the response "Ore is very popular these days, especially emerald prices. You seem to be doing well, that's good news!"
[0953] 6. The generated response is returned to the terminal and displayed to the user.
[0954] 7. The server adds to the conversation history "What are your recent recommendations?" and "Ore has been very popular recently. The price of emeralds in particular has been rising. You seem to be doing well. That's good news!"
[0955] In this way, an NPC system that utilizes generative AI and an emotion engine allows users to enjoy more realistic and personalized conversations in online games. By utilizing conversation history, current events, and emotional information, even deeper interactions become possible.
[0956] The processing flow will be explained below.
[0957] Step 1:
[0958] The user approaches an NPC in the game, enters "What are some of your recent recommended products?" into the dialogue interface, and presses the send button.
[0959] Step 2:
[0960] The terminal receives the user's input, generates a request containing the input text and the NPC's ID, and sends it to the server.
[0961] Step 3:
[0962] The server receives the request and retrieves the target NPC data from the database, including the NPC's name, role, and conversation history.
[0963] Step 4:
[0964] The server sends the acquired NPC data and user input information to the emotion engine, which analyzes the user's emotions.
[0965] Step 5:
[0966] The emotion engine analyzes emotions from user input and recognizes the emotion "interest," for example.
[0967] Step 6:
[0968] The server sends a request to the generative artificial intelligence based on the emotion information from the emotion engine and the user's input information.
[0969] Step 7:
[0970] The generative artificial intelligence generates the optimal response based on the user's input information and emotional information, and returns that response to the server.
[0971] Step 8:
[0972] The server receives the generated response, adds it to the conversation history, and updates it, and also sends the generated response to the terminal.
[0973] Step 9:
[0974] The device receives the response from the server and displays it to the user, for example, "Ore is very popular these days. Prices for emeralds in particular are rising. You look well, that's good news!"
[0975] Step 10:
[0976] The user reviews the displayed response and then enters a new question or takes the next action.
[0977] Example 2
[0978] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."
[0979] Conversations with non-player characters (NPCs) in conventional online games are based on static scripts, and typically involve repetition of the same conversation content or responses that do not take the user's emotions into consideration. As a result, users often become dissatisfied with the lack of realism and personalization of the conversation. Furthermore, conventional systems make it difficult to adjust the next response based on the conversation history or the user's emotions, leading to boredom due to the repetition of the same patterns. Furthermore, dynamic responses that incorporate external information are lacking, making it impossible to respond in a way that reflects the latest information. The present invention aims to solve these problems.
[0980] The identification process by the identification processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means. In this invention, the server includes means for receiving input information from a user, means for recognizing the user's emotion based on the input information using an emotion engine, means for generating a response based on the recognized emotion information and the input information using a generative artificial intelligence model, means for displaying the generated response to the user, and means for saving the generated response and the user's emotion information in a conversation history. This enables a realistic and personalized conversation based on the user's emotion. Furthermore, the next response can be adjusted based on the conversation history and the user's emotion information, thereby realizing a deeper interaction. Furthermore, by including external information in the generated response, a dynamic response that reflects the latest information is possible.
[0981] "Means for receiving input information from a user" refers to a combination of hardware and software for sending information such as text data or voice data input by a user to a server and receiving it.
[0982] "Emotion engine" refers to an algorithm or processing device that analyzes user input and recognizes emotions. Examples include emotion recognition systems that use natural language processing technology.
[0983] "Generative AI models" refer to machine learning models or algorithms that generate appropriate responses based on user input and emotions. Examples include response generation models based on deep learning.
[0984] "Means for displaying the generated response to the user" refers to a display device or software interface for providing the response generated by the generative artificial intelligence model to the user visually or audibly.
[0985] "Means for saving in conversation history" refers to technical means for recording and saving the generated responses, the user's input information in response to the responses, and the user's emotional information in a database or file system.
[0986] "External information" refers to current events, news, and information related to the user's environment obtained from sources other than the game's database, allowing for dynamic responses to be generated.
[0987] MODE FOR CARRYING OUT THE INVENTION
[0988] A system for implementing this invention makes conversations between users and non-player characters (NPCs) in online games more realistic and provides personalized responses by recognizing the user's emotions. This system works by combining generative artificial intelligence (AI) and an emotion engine.
[0989] Server-side processing
[0990] On the server, first, when the game starts, the data for each NPC is initialized. This initialization includes the NPC's name, role, initial conversation content, conversation history, etc. Specifically, this information is retrieved from a database (e.g., MySQL or PostgreSQL) and set for each NPC. For example, for a merchant NPC, the name is set to "John" and the role to "merchant."
[0991] Next, when the user speaks to the NPC, the input information is sent to the server. The server analyzes this user input information using an emotion engine (e.g., IBM Watson Tone Analyzer) and recognizes the user's emotion. For example, if the user inputs "What are your recent recommended products?", the emotion engine will recognize "interest."
[0992] The server then sends prompts to a generative AI model (e.g., OpenAI GPT-4) based on the emotion information and the user's input to generate an optimal response. The prompts here have the following format:
[0993] "The user is asking a merchant NPC, 'What are your recent recommendations?' The user is interested. Generate an appropriate response."
[0994] The generated response is recorded for the next conversation, and the server stores this response and the conversation history in a database. This allows the next time the same user speaks, a more appropriate response will be generated based on the past conversation history and emotional information.
[0995] Terminal side processing
[0996] The terminal receives the user's input and sends it to the server. At this time, it generates a request containing the input text and the NPC's ID and sends it to the server. For example, if the user inputs "What are your recent recommended products?", that information is sent in the form of a request.
[0997] Once the server generates a response, the device displays it to the user. For example, the device might say, "Ore is very popular these days. The price of emeralds in particular is rising." The device also uses emotionally appropriate expressions, providing a more natural and personalized experience.
[0998] User Experience
[0999] Users can approach NPCs in the game and start a conversation. For example, a user can start a conversation by asking a merchant NPC, "Hello, what are your recent recommended products?" Through this dialogue, users can enjoy a more realistic and dynamic conversation experience.
[1000] The generated responses are not simply standard phrases, but are customized by the generative AI, taking into account the user's input and emotions. For example, in addition to the response "Ore is very popular these days. The price of emeralds in particular has risen," a response that takes the user's emotions into consideration might be added, such as "You look well. That's good news!"
[1001] In this way, an NPC system that combines generative AI and an emotion engine allows users to enjoy more realistic and personalized conversations within online games, and by utilizing conversation history, current events, and emotional information, even deeper interactions are possible.
[1002] The flow of the identification process in the second embodiment will be described with reference to FIG.
[1003] Program processing flow and specific explanation
[1004] Server-side processing
[1005] Step 1:
[1006] When the game starts, the server initializes the data of each NPC.
[1007] Specific operation: The server retrieves the NPC's name, role, initial conversation content, and conversation history from the database and sets them as the NPC's attributes.
[1008] Input: Game Start Event
[1009] Output: Initialized NPC data
[1010] Step 2:
[1011] The user talks to an NPC.
[1012] Specific action: The user speaks to the NPC using text input or voice input.
[1013] Input: User text or voice input
[1014] Output: None
[1015] Step 3:
[1016] The terminal sends a request to the server containing the user's input and the NPC's ID.
[1017] What it does: The device captures input, formats it, and sends it as a request to the server.
[1018] Input: User text or voice input, NPC ID
[1019] Output: Request (user input and NPC ID)
[1020] Step 4:
[1021] The server receives the request and analyzes the user's input information using the emotion engine.
[1022] Specific operation: The server analyzes the received request and recognizes the user's emotion using the emotion engine.
[1023] Input: Request (user input and NPC ID)
[1024] Output: User's emotional information
[1025] Step 5:
[1026] The server sends prompts to the generative AI model based on the emotional information and user input.
[1027] Specific operation: The server generates a prompt sentence and sends it to the generative AI.
[1028] Prompt: The user is asking a merchant NPC, "What are your recent recommended items?" The user is interested. Generate an appropriate response.
[1029] Input: User input information, user emotion information
[1030] Output: prompt to generative AI
[1031] Step 6:
[1032] The generative AI model generates optimal responses based on prompts.
[1033] Specific behavior: The generative AI model generates a response based on the given prompt.
[1034] Input: prompt
[1035] Output: The generated response
[1036] Step 7:
[1037] The server stores the generated responses and the user's emotional information in the conversation history.
[1038] Specific operation: The server stores the responses, emotional information, and user input in a database as a conversation history.
[1039] Input: Generated response, user's emotional information
[1040] Output: Saved conversation history
[1041] Terminal side processing
[1042] Step 1:
[1043] The terminal receives the generated response from the server.
[1044] Specific operation: The terminal receives and analyzes the response sent by the server.
[1045] Input: Generated response
[1046] Output: Parsed response data
[1047] Step 2:
[1048] The terminal displays the response to the user.
[1049] Specific operation: The device displays a response to the user visually or audibly.
[1050] Input: Parsed response data
[1051] Output: The response displayed to the user
[1052] User Experience
[1053] Step 1:
[1054] The user approaches an NPC and begins a dialogue.
[1055] Specific actions: The user controls a character in the game and gives input to talk to NPCs.
[1056] Input: User action
[1057] Output: None
[1058] Step 2:
[1059] The user receives the generated response.
[1060] Specific action: The user checks the response displayed on the device and considers how to respond to it.
[1061] Input: Displayed response
[1062] Output: User response
[1063] (Application example 2)
[1064] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the headset type terminal 314 will be referred to as a "terminal."
[1065] Traditional customer service methods in brick-and-mortar stores are uniform and not personalized, and they have the problem of not being able to properly respond to customer emotions and needs. In particular, if interactions with customers are not personalized based on emotions, the customer experience may be poor and satisfaction may decrease. Therefore, a system is needed to improve customer service in stores and provide more personalized responses that meet individual needs.
[1066] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 2 is realized by the following means.
[1067] In this invention, the server includes means for receiving input information from a user, means for generating a response based on the input information using generative artificial intelligence, means for displaying the generated response to the user, means for saving the generated response in a conversation history, means for analyzing emotions from the user's input information, and means for personalizing the response based on the emotion analysis results. This enables personalized responses based on customer emotions, improving the customer experience.
[1068] The "means for receiving input information from a user" is an interface for transmitting information input by a user to a server.
[1069] The "means for generating a response by a generative artificial intelligence based on the input information" is a process by which the generative artificial intelligence generates an appropriate response using the user's input information.
[1070] The "means for displaying the generated response to the user" is an interface for providing the response generated by the generative artificial intelligence to the user visually or audibly.
[1071] The "means for saving generated responses in a conversation history" is a process for recording generated responses and the history of the dialogue, and saving them so that they can be used in future dialogues.
[1072] "Means for analyzing emotions from user input" refers to algorithms and processes for analyzing user input and identifying their emotional state.
[1073] The "means for personalizing responses based on the results of sentiment analysis" refers to a process for customizing responses that reflect the results of sentiment analysis and are appropriate for the user's emotional state.
[1074] This invention is a system that combines generative artificial intelligence (AI) and a sentiment analysis engine to improve customer service in brick-and-mortar stores. This system is mainly composed of three components: a server, a terminal, and a user.
[1075] Server-side processing
[1076] Initialization
[1077] When the system starts up, the server initializes the data of all virtual characters (VPCs), including the VPC's role, initial response, conversation history, etc. For example, a store assistant VPC would be set to "Assistant" or "shop assistant."
[1078] emotion recognition
[1079] When the information entered by the user is sent to the server via the device, the server receives the input information and analyzes the user's emotions using a sentiment analysis engine. For example, if the user input is "Tell me about this toaster," the sentiment engine will determine the user's emotion as "interested" based on the context. The sentiment analysis engine uses the Hugging Face transformers library.
[1080] Response Generation
[1081] The server sends a request to the generative AI based on the user's emotional information recognized by the emotion engine and the input information. The generative AI takes this information into consideration to generate the optimal response. For example, if the user shows interest, the AI will generate a response such as, "This toaster is the latest model. It can toast four slices of bread at once and maintain even toasting." The generative AI model used is OpenAI's GPT-3.
[1082] Save your response and adjust it next time
[1083] The generated response is saved in the conversation history by the server. The next time the same user speaks, an appropriate response will be generated based on this conversation history and emotional information.
[1084] Terminal side processing
[1085] Sending Events
[1086] The device takes the user's input and sends it to the server, generating a request that includes the entered text and the VPC ID. For example, if the user types "Tell me about this toaster," that information is passed to the server.
[1087] Viewing the response
[1088] Once the device receives the generated response from the server, it displays it to the user. For example, it might say, "This toaster is the latest model. It can toast four slices of bread at once and toast them evenly." The device also uses expressions that reflect the user's emotions, providing a more natural and personalized experience.
[1089] User Experience
[1090] Start a conversation
[1091] A user initiates an interaction with the VPC through a smartphone application in a physical store, for example by asking, "Tell me about this toaster."
[1092] Receiving a response
[1093] The user receives a response from the VPC, which is customized by the generative AI taking into account the user's input and emotions. For example, a response might be provided that reads, "This toaster is the latest model. It can toast four slices of bread at once and maintains even toasting."
[1094] Prompt Sentence Examples
[1095] "User's feeling is interest. Generate a response to the user's question: 'Tell me about this toaster.'"
[1096] "User's feeling is excitement. Generate a response to the user's question: 'What's new this month?'"
[1097] "User's feeling is anxiety. Generate a response to the user's question: 'Is this vacuum cleaner easy to use?'"
[1098] This prompt enables the generative AI to generate optimal responses based on the user's emotions, significantly improving the customer experience in physical stores.
[1099] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[1100] Step 1:
[1101] The server receives information entered by the user through the terminal. For example, if the user enters "Tell me about this toaster," the text is sent from the terminal to the server. Through this process, the server obtains the input information (the user's question).
[1102] Step 2:
[1103] The server passes the received input information to a sentiment analysis engine to analyze the user's emotions. Specifically, it processes the text data using Hugging Face's transformers library and outputs emotion labels such as "interested," "excited," and "anxious." Through this processing, the server obtains data that identifies the user's emotional state.
[1104] Step 3:
[1105] The server generates a prompt based on the results of the sentiment analysis. For example, if the user's input is "Tell me about this toaster," and the sentiment is identified as "interest," the prompt will be "User's feeling is interest. Generate a response for the user's question: 'Tell me about this toaster.'" This process creates text data to be sent to the generative AI model.
[1106] Step 4:
[1107] The server sends a prompt to a generative AI model (OpenAI's GPT-3) to generate the optimal response. The generative AI model performs data calculations based on the prompt and outputs a response. For example, a response might be generated such as, "This toaster is the latest model. It can toast four slices of bread at once and maintain even toasting."
[1108] Step 5:
[1109] The server stores the generated response in the conversation history, so that if the same user asks the question again in the future, the server can tailor the response based on that history. This process accumulates historical data of responses.
[1110] Step 6:
[1111] The server sends the generated response to the terminal. The terminal receives this response and presents it to the user. Specifically, the response is displayed on the terminal's display. This process allows the user to check the response from the server.
[1112] Step 7:
[1113] The user checks the response displayed on the device and decides on the next action. For example, if the user takes a further action, such as "I'll buy this toaster," the input information is sent back to the server, and a new series of processes begins. This process allows the user to carry out the next dialogue or action based on the response.
[1114] The specific processing unit 290 transmits the result of the specific processing to the headset type terminal 314. In the headset type terminal 314, the control unit 46A causes the speaker 240 and the display 343 to output the result of the specific processing. The microphone 238 acquires audio indicating a user input regarding the result of the specific processing. The control unit 46A transmits audio data indicating the user input acquired by the microphone 238 to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the audio data.
[1115] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (Internet Search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search <url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[1116] In the above embodiment, an example was given in which the specific processing is performed by the data processing device 12, but the technology of the present disclosure is not limited to this, and the specific processing may be performed by the headset type terminal 314.
[1117] [Fourth embodiment]
[1118] FIG. 7 shows an example of the configuration of a data processing system 410 according to the fourth embodiment.
[1119] 7, a data processing system 410 includes a data processing device 12 and a robot 414. An example of the data processing device 12 is a server.
[1120] The data processing device 12 includes a computer 22, a database 24, and a communication I / F 26. The computer 22 is an example of a "computer" according to the technology of the present disclosure. The computer 22 includes a processor 28, a RAM 30, and a storage 32. The processor 28, the RAM 30, and the storage 32 are connected to a bus 34. The database 24 and the communication I / F 26 are also connected to the bus 34. The communication I / F 26 is connected to a network 54. Examples of the network 54 include a WAN (Wide Area Network) and / or a LAN (Local Area Network).
[1121] The robot 414 includes a computer 36, a microphone 238, a speaker 240, a camera 42, a communication I / F 44, and a control target 443. The computer 36 includes a processor 46, a RAM 48, and a storage 50. The processor 46, the RAM 48, and the storage 50 are connected to a bus 52. The microphone 238, the speaker 240, the camera 42, and the control target 443 are also connected to the bus 52.
[1122] The microphone 238 receives instructions and the like from the user 20 by receiving voice uttered by the user 20. The microphone 238 captures the voice uttered by the user 20, converts the captured voice into audio data, and outputs it to the processor 46. The speaker 240 outputs audio in accordance with instructions from the processor 46.
[1123] Camera 42 is a small digital camera equipped with an optical system including a lens, aperture, and shutter, and an imaging element such as a CMOS (Complementary Metal-Oxide-Semiconductor) image sensor or a CCD (Charge Coupled Device) image sensor, and captures images of the surroundings of user 20 (for example, an imaging range defined by an angle of view equivalent to the field of vision of a typical healthy person).
[1124] The communication I / F 44 is connected to a network 54. The communication I / Fs 44 and 26 are responsible for the exchange of various information between the processor 46 and the processor 28 via the network 54. The exchange of various information between the processor 46 and the processor 28 using the communication I / Fs 44 and 26 is carried out in a secure state.
[1125] The control object 443 includes a display device, LEDs in the eyes, and motors for driving the arms, hands, and feet. The posture and gestures of the robot 414 are controlled by controlling the motors of the arms, hands, and feet. Some of the emotions of the robot 414 can be expressed by controlling these motors. In addition, the facial expressions of the robot 414 can also be expressed by controlling the light emission state of the LEDs in the eyes of the robot 414.
[1126] Fig. 8 shows an example of the main functions of the data processing device 12 and the robot 414. As shown in Fig. 8, in the data processing device 12, a specific process is performed by the processor 28. A specific process program 56 is stored in the storage 32.
[1127] The specific processing program 56 is an example of a "program" according to the technology of the present disclosure. The processor 28 reads the specific processing program 56 from the storage 32 and executes the read specific processing program 56 on the RAM 30. The specific processing is realized by the processor 28 operating as a specific processing unit 290 in accordance with the specific processing program 56 executed on the RAM 30.
[1128] The storage 32 stores a data generation model 58 and an emotion identification model 59. The data generation model 58 and the emotion identification model 59 are used by the identification processing unit 290.
[1129] In the robot 414, the processor 46 performs the reception output process. A reception output program 60 is stored in the storage 50. The processor 46 reads the reception output program 60 from the storage 50 and executes the read reception output program 60 on the RAM 48. The reception output process is realized by the processor 46 operating as the control unit 46A in accordance with the reception output program 60 executed on the RAM 48.
[1130] Next, a description will be given of the specific processing performed by the specific processing unit 290 of the data processing device 12. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."
[1131] A system for implementing this invention utilizes generative artificial intelligence (AI) to make conversations between users and non-player characters (NPCs) in online games more realistic. The following describes in detail how this system works.
[1132] Server-side processing
[1133] Initialization
[1134] When the game starts, the server initializes the data for each NPC. This includes the NPC's name, role, initial conversation, etc. For example, a merchant NPC will be set to "John" or "merchant."
[1135] Calling generative AI
[1136] When a user speaks to an NPC, the input information is sent to the server. The server receives this input information and passes it to a generative AI to generate the optimal response. The generated response is returned to the user and saved in the conversation history. This means that the next time the same user speaks, a response will be generated taking into account the content of the previous conversation.
[1137] Terminal side processing
[1138] Sending Events
[1139] The terminal receives the user's input and sends it to the server, generating a request that includes the input text and the NPC's ID. For example, if the user types "What are your recent recommended products?", that information is passed to the server.
[1140] Viewing the response
[1141] When the terminal receives the generated response from the server, it displays it to the user. For example, the terminal might display a response such as, "Ore is very popular these days. The price of emeralds in particular is rising."
[1142] User Experience
[1143] Start a conversation
[1144] Users can approach NPCs in the game and start a conversation. For example, a user can ask a merchant NPC, "Hello, what are your recent recommended products?" Through this dialogue, users can have a more realistic and dynamic conversation experience.
[1145] Receiving a response
[1146] The user receives a response from the NPC, which is not simply a canned response generated under predetermined conditions, but is customized by the generative AI, taking into account the user's input.
[1147] Specific examples
[1148] Conversation flow example
[1149] 1. The user asks the merchant NPC, "What are your recommended products these days?"
[1150] 2. The device sends this input information to the server.
[1151] 3. The server sends this input information to the generative AI, which generates an appropriate response.
[1152] 4. Produces the response "Ore is very popular these days. The price of emeralds in particular has been rising."
[1153] 5. The generated response is returned to the terminal and displayed to the user.
[1154] 6. The server adds to the conversation history "What are your recent recommended products?" and "Ore has been very popular recently. The price of emeralds in particular has been rising."
[1155] In this way, NPC systems that utilize generative AI allow users to enjoy more realistic and dynamic conversations in online games. By utilizing conversation history and current events, even deeper interactions become possible.
[1156] The processing flow will be explained below.
[1157] Step 1:
[1158] The user approaches an NPC in the game, enters "What are some of your recent recommended products?" into the dialogue interface, and presses the send button.
[1159] Step 2:
[1160] The terminal receives the user's input, generates a request containing the input text and the NPC's ID, and sends it to the server.
[1161] Step 3:
[1162] The server receives the request and initializes the target NPC data by retrieving it from the database, including the NPC's name, role, and conversation history.
[1163] Step 4:
[1164] The server sends a request to the generative AI based on the acquired NPC data and user input. The request includes the user's input information and the NPC's past conversation history.
[1165] Step 5:
[1166] The generative AI generates the optimal response based on user input and NPC data, and returns that response to the server.
[1167] Step 6:
[1168] The server receives the response from the generative AI, adds the response to the NPC's conversation history, and returns the generated response to the terminal.
[1169] Step 7:
[1170] The terminal receives the response from the server and displays the content to the user. For example, it displays "Ore is very popular these days. The price of emeralds in particular is rising."
[1171] Step 8:
[1172] The user reviews the displayed response and then enters a new question or takes the next action.
[1173] Example 1
[1174] Next, a description will be given of Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."
[1175] Conventional online game conversation systems with non-player characters (NPCs) often provide monotonous conversations based on fixed phrases, lacking the quality and realism of user interaction. This creates the problem that users quickly become bored with the conversation content, reducing the sense of immersion in the game. Furthermore, the lack of responses that take into account conversation history or dynamic conversation experiences that include current information limits the user experience.
[1176] The specific processing by the specific processing unit 290 of the data processing device 12 in the first embodiment is realized by the following means.
[1177] In this invention, the server includes means for receiving input information from a user, means for generating a response using a generative artificial intelligence model based on the input information, means for displaying the generated response to the user, means for saving the generated response in a conversation history, and means for adjusting the generated response in consideration of the user's input history and attribute information of non-player characters. This allows the user to enjoy a more natural and dynamic conversation experience. Furthermore, changing the next response based on the conversation history and generating a response that incorporates external current information improves the quality of interaction and increases the sense of immersion in the game.
[1178] A "user" is a player who plays an online game and interacts with non-player characters (NPCs).
[1179] "Input information" refers to interaction data such as text input or voice input that a user makes to an NPC.
[1180] A "generative artificial intelligence model" is an artificial intelligence technology that uses natural language processing technology to generate appropriate responses to user input.
[1181] A "response" is a reply message that a generative artificial intelligence model generates based on information input by a user.
[1182] "Conversation history" refers to data that records the contents of past conversations between the user and NPCs.
[1183] A "non-player character (NPC)" is a computer-controlled character in an online game.
[1184] "Attribute information" refers to specific information about an NPC, such as its role, personality, and location in the story.
[1185] "Current events" refers to information about the latest news and events in the real world outside of the game.
[1186] This invention is a system that utilizes generative artificial intelligence (AI) to make conversations between non-player characters (NPCs) and users in online games more realistic and dynamic. Below, we will explain in detail how this system works.
[1187] Server-side processing
[1188] When the game starts, the server initializes the data of all NPCs. This initialization process includes the name, role, initial dialogue, and attribute information of each NPC. For example, the merchant NPC "John" is set to the role "merchant." This process includes loading the initial data from the database and updating the properties of each NPC.
[1189] When a user speaks to an NPC, the input information is sent from the device to the server. The server receives this input information and prepares it to be passed to a generative artificial intelligence model (e.g., GPT-3). A prompt is sent via the generative AI interface to generate an optimal response. For example, if a user types, "What are your recent recommended products?", the prompt "User: 'What are your recent recommended products?', NPC attribute: Merchant John" is sent to the generative AI.
[1190] The generated response is something like, "Ore is very popular these days. The price of emeralds in particular has risen." The server returns this response to the user and also saves it in the database as conversation history. This means that the next time the same user speaks, a response based on the previous conversation will be generated.
[1191] Terminal side processing
[1192] The device receives user input and prepares it to be sent to the server: for example, if the user types "hello", it processes the text together with the NPC's identifier, creates an HTTP request, and sends it to the server's specified endpoint.
[1193] When the device receives the response from the server, it displays the response to the user, for example, displaying the message "Ore is very popular these days" on the game screen. This includes updating the UI components to draw the text message.
[1194] User Experience
[1195] A user approaches an NPC in a game and initiates a conversation by pressing a specific key or clicking a conversation button. For example, a user might ask a merchant NPC, "Hello, what are your recent recommendations?"
[1196] The user receives a response from the NPC. They can read the text message displayed on the screen and decide what to do next. For example, if the user receives the message "Ore is very popular these days," they can either go to a place that sells ore or ask a merchant NPC for more information.
[1197] Examples of concrete examples and prompts
[1198] For example, consider the following conversation flow:
[1199] 1. The user types, "What's your latest recommendation?"
[1200] 2. The server sends the following prompt to the generative AI: "User: 'What are some recommended products these days?', NPC attributes: Merchant John."
[1201] 3. The generative AI model generates the response, "Ore is very popular these days. The price of emeralds in particular has risen."
[1202] 4. This response is displayed to the user, who then considers their next action.
[1203] In this way, by implementing the system of the invention, users can have a more natural and dynamic conversation experience, improving the immersion of the game. By utilizing conversation history, attribute information, and even current events, deeper interactions can be realized.
[1204] The flow of the identification process in the first embodiment will be described with reference to FIG.
[1205] Program processing steps
[1206] Server-side processing
[1207] Step 1:
[1208] The server initializes the data of all NPCs at the start of the game. This is a process that reads the name, role, initial dialogue, and attribute information of each NPC from the database and reflects them in each NPC property. The input is the initial data obtained from the database, and the output is the initialized NPC properties.
[1209] Step 2:
[1210] When a user speaks to an NPC, the input information is sent from the device to the server. The server receives this input information and temporarily stores it. The input is the user's text input and the NPC's identifier, and the output is prompt-format data that is passed to the generative AI. Specifically, it analyzes the received user input information, adds the necessary attribute information, and generates a prompt.
[1211] Step 3:
[1212] The server passes the received user input to the generative AI. Specifically, it sends a prompt to the generative AI model to generate an appropriate response. The input is data in the form of a prompt, and the output is the response obtained from the generative AI model. For example, the prompt "User: 'What are your recent recommended products?' NPC attribute: Merchant" is sent to the generative AI.
[1213] Step 4:
[1214] The server returns the generated response to the user and simultaneously saves it as a conversation history. The input is the response from the generative AI model, and the output is the response sent to the user and the conversation history stored in the database. Specifically, the server sends the response to the terminal and records the response content in the database.
[1215] Terminal side processing
[1216] Step 1:
[1217] The terminal receives user input and prepares it to be sent to the server. The input is the text entered by the user and the NPC identifier, and the output is data in the form of a request to the server. Specifically, it analyzes the user's input information and generates an HTTP request.
[1218] Step 2:
[1219] A request containing user input and the NPC's ID is sent to the server. The input is the data in the request format to the server, and the output is the response from the server. Specifically, the generated HTTP request is sent to the specified endpoint.
[1220] Step 3:
[1221] Receives a response from the server. The input is data in the response format from the server, and the output is text that is displayed to the user. Specifically, it analyzes the received HTTP response and obtains the response message.
[1222] Step 4:
[1223] Display the received response to the user. The input is the parsed response text, and the output is the response that is displayed on the user's screen. Specifically, it updates the UI component to render the text message.
[1224] User processing
[1225] Step 1:
[1226] The user approaches an NPC in the game. The input is the user's movement, and the output is the proximity to the NPC. The specific action is to move the character and capture the NPC within a certain distance.
[1227] Step 2:
[1228] To start a dialogue, the user clicks a dialogue button or presses a specific key. The input is the user's operation, and the output is the dialogue start state. The specific operation is when the user performs a specific input operation.
[1229] Step 3:
[1230] The user receives a response from the NPC. The input is the response text displayed on the screen, and the output is the user's understanding and input for the next action. Specifically, the user reads the displayed message and decides the next action based on it.
[1231] (Application example 1)
[1232] Next, a description will be given of Application Example 1. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."
[1233] Conventional customer service systems in brick-and-mortar stores face challenges in providing natural, dynamic responses to customer questions. Furthermore, because they rely on dedicated operators, the quality of responses can vary, and responses can be delayed during busy periods. Furthermore, text-based responses alone are unlikely to improve customer satisfaction, and they can lack real-time response and natural conversational quality.
[1234] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 1 is realized by the following means.
[1235] In this invention, the server includes means for receiving input information from a user, means for generating a response by a generative artificial intelligence based on the input information, means for displaying the generated response to the user, means for saving the generated response in a conversation history, means for converting voice input into text, and means for converting the response of the generative artificial intelligence into voice and presenting it to the user. This enables customers to experience natural and dynamic dialogue in a physical store, improving customer satisfaction and enabling efficient customer service.
[1236] The "means for receiving input information from the user" is a function for capturing information input by the user through voice or text.
[1237] The "means for generating a response using generative artificial intelligence based on the input information" is a function that analyzes input information received from a user and generates an optimal response using generative artificial intelligence.
[1238] The "means for displaying the generated response to the user" is a function for visually or audibly presenting the generated response to the user.
[1239] The "means for saving the generated response in the conversation history" is a function for saving the generated response and the user's input information in response to the response in a database or the like.
[1240] The "means for converting voice input into text" is a function that analyzes the voice spoken by the user and converts it into corresponding text data.
[1241] "Means for converting the response of the generative artificial intelligence into audio and presenting it to the user" is a function that converts the text response generated by the generative artificial intelligence into audio data and plays it back to the user.
[1242] The system for implementing this invention aims to make customer service in brick-and-mortar stores more natural and effective. Details of the system and how it can be used are described below.
[1243] Server-side processing
[1244] Initialization
[1245] When the system starts up, the server initializes the data for each customer interaction. This includes the customer interaction assistant's name, personality, initial conversation template, etc. For example, the data for a store assistant might be set as "Assistant 001" or "Customer_Assistant."
[1246] Calling generative AI
[1247] When a customer submits input information through a smartphone app in a physical store, the data is sent to a server. The server receives this input information and passes it to a generative artificial intelligence (AI) to generate an optimal response. The generated response is returned to the user and saved in the conversation history. This allows the next time the same customer asks a question, a response can be generated taking into account the content of the previous conversation.
[1248] Terminal side processing
[1249] Voice to text conversion
[1250] The smartphone app receives the user's voice input and converts it to text. To convert speech to text, it uses the SpeechRecognition module.
[1251] Sending Events
[1252] The terminal sends the converted text to the server, generating a request that includes the input text and the customer ID. For example, if a customer asks, "What is the best product in this store right now?", that information is passed to the server.
[1253] Voiced responses
[1254] Upon receiving the generated response from the server, the device converts the response into speech and presents it to the user. It uses the Google Text-to-Speech (gTTS) module to generate an audio file and play it back.
[1255] User Experience
[1256] Start a conversation
[1257] Users can launch the smartphone app in a physical store and speak a question into the microphone, for example, "What is the most recommended product in this store right now?"
[1258] Receiving a response
[1259] The user receives a spoken response from the assistant, such as "Our current recommendation is our newly arrived emeralds. They're especially popular."
[1260] Specific examples
[1261] For example, if a customer launches the app and asks, "What is the best product in this store right now?", the app converts the question into text and sends it to the server. The server then uses generative AI to generate and send back a response such as, "Our current recommendation is the newly arrived emerald. It's especially popular." The app then converts the response into audio and plays it back to the customer.
[1262] Prompt Sentence Examples
[1263] "A customer asks on their smartphone, 'What is the best product in this store right now?' Generate a response to this question."
[1264] Such a system will provide advanced support for customer service in physical stores, improving customer satisfaction and enabling more efficient customer service.
[1265] The flow of the specific processing in the application example 1 will be described with reference to FIG.
[1266] Step 1:
[1267] The user speaks a question
[1268] The user launches the smartphone app and speaks a question into the microphone. The input is the user's voice, and this voice data is processed in the next step.
[1269] Step 2:
[1270] Convert voice input to text
[1271] The device converts the received user voice input into text data using the SpeechRecognition module. The input is the user's voice data, and the output is text data. Specifically, the audio captured from the microphone is saved in a buffer and then a voice recognition service is called to convert it into text.
[1272] Step 3:
[1273] Send the converted text to the server
[1274] The terminal generates a request including the customer correspondence ID along with the text data and sends it to the server. The input is the text data generated in step 2, and the output is the request data sent to the server. Specifically, the text data and the correspondence ID are sent to the server as an HTTP request.
[1275] Step 4:
[1276] The server calls the generative AI
[1277] The server calls the generative AI model based on the received text data to generate an optimal response. At this time, it uses a prompt sentence to have the AI model generate a response. The input is the text data sent in step 3, and the output is the response text generated by the generative AI model. Specifically, the server inputs the text data along with the prompt sentence to the generative AI model, and receives the generated response.
[1278] Step 5:
[1279] Save the generated response in the conversation history
[1280] The server saves the generated response and the corresponding user input in the conversation history. The input is the response text generated in step 4 and the original user input text, and the output is a record stored in the conversation history database, specifically as a new entry in the conversation history database.
[1281] Step 6:
[1282] The server sends a response back to the device
[1283] The server returns the generated response to the terminal. The input is the response text generated in step 4, and the output is the response data to be sent to the terminal. Specifically, the response data is sent to the terminal as an HTTP response.
[1284] Step 7:
[1285] Convert response text to speech
[1286] The device converts the received response text data into audio data using the Google Text-to-Speech (gTTS) module. The input is the response text data received in step 6, and the output is audio data. Specifically, the response text is input to the gTTS module, and a generated audio file is created.
[1287] Step 8:
[1288] Plays a voice response to the user
[1289] The terminal plays the generated audio data to the user. The input is the audio data generated in step 7, and the output is the audio heard by the user. Specifically, the generated audio file is played back by the playback module.
[1290] This process flow allows users to have a natural and interactive conversation experience in a physical store.
[1291] Furthermore, an emotion engine that estimates the user's emotion may be further combined. That is, the identification processing unit 290 may estimate the user's emotion using the emotion identification model 59, and perform identification processing using the user's emotion.
[1292] A system for implementing this invention makes conversations between users and non-player characters (NPCs) in online games more realistic and provides more personalized responses by recognizing the user's emotions. This system works by combining generative artificial intelligence (AI) with an emotion engine.
[1293] Server-side processing
[1294] Initialization
[1295] When the game starts, the server initializes the data for each NPC. This includes the NPC's name, role, initial conversation content, conversation history, etc. For example, a merchant NPC will be set to "John" or "merchant."
[1296] emotion recognition
[1297] When a user speaks to an NPC, the input information is sent to the server. The server receives this input information and uses an emotion engine to analyze the user's emotions. For example, if the user inputs "What are your recent recommended products?", the emotion engine will determine the user's emotion as "interest" based on the context.
[1298] Calling generative AI
[1299] The server sends a request to the generative AI based on the user's emotional information recognized by the emotion engine and the input information. The generative AI takes this information into consideration to generate the optimal response. For example, if the user expresses "interest," the AI generates a response such as, "Ore is very popular these days. The price of emeralds in particular is rising."
[1300] Save your response and adjust it next time
[1301] The generated response is saved in the conversation history by the server. The next time the same user speaks, an appropriate response will be generated based on this conversation history and emotional information.
[1302] Terminal side processing
[1303] Sending Events
[1304] The terminal receives the user's input and sends it to the server, generating a request that includes the input text and the NPC's ID. For example, if the user types "What are your recent recommended products?", that information is passed to the server.
[1305] Viewing the response
[1306] When the device receives the response generated by the server, it displays it to the user. For example, it might say, "Ore is very popular these days. The price of emeralds in particular is rising." Furthermore, by using expressions that correspond to the user's emotions, a more natural and personalized experience is provided.
[1307] User Experience
[1308] Start a conversation
[1309] Users can approach NPCs in the game and start a conversation. For example, a user can ask a merchant NPC, "Hello, what are your recent recommended products?" Through this dialogue, users can have a more realistic and dynamic conversation experience.
[1310] Receiving a response
[1311] The user receives a response from the NPC. This response is not simply a standard phrase generated under predetermined conditions, but is customized by the generative AI, taking into account the user's input and emotions. For example, in addition to the response "Ore is very popular these days. The price of emeralds in particular has risen," the NPC might also add a sentiment-sensitive phrase such as "You look well. That's good news!"
[1312] Specific examples
[1313] Conversation flow example
[1314] 1. The user asks the merchant NPC, "What are your recommended products these days?"
[1315] 2. The device sends this input information to the server.
[1316] 3. The server analyzes the user's input using an emotion engine and recognizes "interests" and emotions.
[1317] 4. The server sends this input information and emotional information to the generative AI, which then generates the optimal response.
[1318] 5. Produces the response "Ore is very popular these days, especially emerald prices. You seem to be doing well, that's good news!"
[1319] 6. The generated response is returned to the terminal and displayed to the user.
[1320] 7. The server adds to the conversation history "What are your recent recommendations?" and "Ore has been very popular recently. The price of emeralds in particular has been rising. You seem to be doing well. That's good news!"
[1321] In this way, an NPC system that utilizes generative AI and an emotion engine allows users to enjoy more realistic and personalized conversations in online games. By utilizing conversation history, current events, and emotional information, even deeper interactions become possible.
[1322] The processing flow will be explained below.
[1323] Step 1:
[1324] The user approaches an NPC in the game, enters "What are some of your recent recommended products?" into the dialogue interface, and presses the send button.
[1325] Step 2:
[1326] The terminal receives the user's input, generates a request containing the input text and the NPC's ID, and sends it to the server.
[1327] Step 3:
[1328] The server receives the request and retrieves the target NPC data from the database, including the NPC's name, role, and conversation history.
[1329] Step 4:
[1330] The server sends the acquired NPC data and user input information to the emotion engine, which analyzes the user's emotions.
[1331] Step 5:
[1332] The emotion engine analyzes emotions from user input and recognizes the emotion "interest," for example.
[1333] Step 6:
[1334] The server sends a request to the generative artificial intelligence based on the emotion information from the emotion engine and the user's input information.
[1335] Step 7:
[1336] The generative artificial intelligence generates the optimal response based on the user's input information and emotional information, and returns that response to the server.
[1337] Step 8:
[1338] The server receives the generated response, adds it to the conversation history, and updates it, and also sends the generated response to the terminal.
[1339] Step 9:
[1340] The device receives the response from the server and displays it to the user, for example, "Ore is very popular these days. Prices for emeralds in particular are rising. You look well, that's good news!"
[1341] Step 10:
[1342] The user reviews the displayed response and then enters a new question or takes the next action.
[1343] Example 2
[1344] Next, a description will be given of Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."
[1345] Conversations with non-player characters (NPCs) in conventional online games are based on static scripts, and typically involve repetition of the same conversation content or responses that do not take the user's emotions into consideration. As a result, users often become dissatisfied with the lack of realism and personalization of the conversation. Furthermore, conventional systems make it difficult to adjust the next response based on the conversation history or the user's emotions, leading to boredom due to the repetition of the same patterns. Furthermore, dynamic responses that incorporate external information are lacking, making it impossible to respond in a way that reflects the latest information. The present invention aims to solve these problems.
[1346] The identification process by the identification processing unit 290 of the data processing device 12 in the second embodiment is realized by the following means. In this invention, the server includes means for receiving input information from a user, means for recognizing the user's emotion based on the input information using an emotion engine, means for generating a response based on the recognized emotion information and the input information using a generative artificial intelligence model, means for displaying the generated response to the user, and means for saving the generated response and the user's emotion information in a conversation history. This enables a realistic and personalized conversation based on the user's emotion. Furthermore, the next response can be adjusted based on the conversation history and the user's emotion information, thereby realizing a deeper interaction. Furthermore, by including external information in the generated response, a dynamic response that reflects the latest information is possible.
[1347] "Means for receiving input information from a user" refers to a combination of hardware and software for sending information such as text data or voice data input by a user to a server and receiving it.
[1348] "Emotion engine" refers to an algorithm or processing device that analyzes user input and recognizes emotions. Examples include emotion recognition systems that use natural language processing technology.
[1349] "Generative AI models" refer to machine learning models or algorithms that generate appropriate responses based on user input and emotions. Examples include response generation models based on deep learning.
[1350] "Means for displaying the generated response to the user" refers to a display device or software interface for providing the response generated by the generative artificial intelligence model to the user visually or audibly.
[1351] "Means for saving in conversation history" refers to technical means for recording and saving the generated responses, the user's input information in response to the responses, and the user's emotional information in a database or file system.
[1352] "External information" refers to current events, news, and information related to the user's environment obtained from sources other than the game's database, allowing for dynamic responses to be generated.
[1353] MODE FOR CARRYING OUT THE INVENTION
[1354] A system for implementing this invention makes conversations between users and non-player characters (NPCs) in online games more realistic and provides personalized responses by recognizing the user's emotions. This system works by combining generative artificial intelligence (AI) and an emotion engine.
[1355] Server-side processing
[1356] On the server, first, when the game starts, the data for each NPC is initialized. This initialization includes the NPC's name, role, initial conversation content, conversation history, etc. Specifically, this information is retrieved from a database (e.g., MySQL or PostgreSQL) and set for each NPC. For example, for a merchant NPC, the name is set to "John" and the role to "merchant."
[1357] Next, when the user speaks to the NPC, the input information is sent to the server. The server analyzes this user input information using an emotion engine (e.g., IBM Watson Tone Analyzer) and recognizes the user's emotion. For example, if the user inputs "What are your recent recommended products?", the emotion engine will recognize "interest."
[1358] The server then sends prompts to a generative AI model (e.g., OpenAI GPT-4) based on the emotion information and the user's input to generate an optimal response. The prompts here have the following format:
[1359] "The user is asking a merchant NPC, 'What are your recent recommendations?' The user is interested. Generate an appropriate response."
[1360] The generated response is recorded for the next conversation, and the server stores this response and the conversation history in a database. This allows the next time the same user speaks, a more appropriate response will be generated based on the past conversation history and emotional information.
[1361] Terminal side processing
[1362] The terminal receives the user's input and sends it to the server. At this time, it generates a request containing the input text and the NPC's ID and sends it to the server. For example, if the user inputs "What are your recent recommended products?", that information is sent in the form of a request.
[1363] Once the server generates a response, the device displays it to the user. For example, the device might say, "Ore is very popular these days. The price of emeralds in particular is rising." The device also uses emotionally appropriate expressions, providing a more natural and personalized experience.
[1364] User Experience
[1365] Users can approach NPCs in the game and start a conversation. For example, a user can start a conversation by asking a merchant NPC, "Hello, what are your recent recommended products?" Through this dialogue, users can enjoy a more realistic and dynamic conversation experience.
[1366] The generated responses are not simply standard phrases, but are customized by the generative AI, taking into account the user's input and emotions. For example, in addition to the response "Ore is very popular these days. The price of emeralds in particular has risen," a response that takes the user's emotions into consideration might be added, such as "You look well. That's good news!"
[1367] In this way, an NPC system that combines generative AI and an emotion engine allows users to enjoy more realistic and personalized conversations within online games, and by utilizing conversation history, current events, and emotional information, even deeper interactions are possible.
[1368] The flow of the identification process in the second embodiment will be described with reference to FIG.
[1369] Program processing flow and specific explanation
[1370] Server-side processing
[1371] Step 1:
[1372] When the game starts, the server initializes the data of each NPC.
[1373] Specific operation: The server retrieves the NPC's name, role, initial conversation content, and conversation history from the database and sets them as the NPC's attributes.
[1374] Input: Game Start Event
[1375] Output: Initialized NPC data
[1376] Step 2:
[1377] The user talks to an NPC.
[1378] Specific action: The user speaks to the NPC using text input or voice input.
[1379] Input: User text or voice input
[1380] Output: None
[1381] Step 3:
[1382] The terminal sends a request to the server containing the user's input and the NPC's ID.
[1383] What it does: The device captures input, formats it, and sends it as a request to the server.
[1384] Input: User text or voice input, NPC ID
[1385] Output: Request (user input and NPC ID)
[1386] Step 4:
[1387] The server receives the request and analyzes the user's input information using the emotion engine.
[1388] Specific operation: The server analyzes the received request and recognizes the user's emotion using the emotion engine.
[1389] Input: Request (user input and NPC ID)
[1390] Output: User's emotional information
[1391] Step 5:
[1392] The server sends prompts to the generative AI model based on the emotional information and user input.
[1393] Specific operation: The server generates a prompt sentence and sends it to the generative AI.
[1394] Prompt: The user is asking a merchant NPC, "What are your recent recommended items?" The user is interested. Generate an appropriate response.
[1395] Input: User input information, user emotion information
[1396] Output: prompt to generative AI
[1397] Step 6:
[1398] The generative AI model generates optimal responses based on prompts.
[1399] Specific behavior: The generative AI model generates a response based on the given prompt.
[1400] Input: prompt
[1401] Output: The generated response
[1402] Step 7:
[1403] The server stores the generated responses and the user's emotional information in the conversation history.
[1404] Specific operation: The server stores the responses, emotional information, and user input in a database as a conversation history.
[1405] Input: Generated response, user's emotional information
[1406] Output: Saved conversation history
[1407] Terminal side processing
[1408] Step 1:
[1409] The terminal receives the generated response from the server.
[1410] Specific operation: The terminal receives and analyzes the response sent by the server.
[1411] Input: Generated response
[1412] Output: Parsed response data
[1413] Step 2:
[1414] The terminal displays the response to the user.
[1415] Specific operation: The device displays a response to the user visually or audibly.
[1416] Input: Parsed response data
[1417] Output: The response displayed to the user
[1418] User Experience
[1419] Step 1:
[1420] The user approaches an NPC and begins a dialogue.
[1421] Specific actions: The user controls a character in the game and gives input to talk to NPCs.
[1422] Input: User action
[1423] Output: None
[1424] Step 2:
[1425] The user receives the generated response.
[1426] Specific action: The user checks the response displayed on the device and considers how to respond to it.
[1427] Input: Displayed response
[1428] Output: User response
[1429] (Application example 2)
[1430] Next, a description will be given of Application Example 2. In the following description, the data processing device 12 will be referred to as a "server" and the robot 414 will be referred to as a "terminal."
[1431] Traditional customer service methods in brick-and-mortar stores are uniform and not personalized, and they have the problem of not being able to properly respond to customer emotions and needs. In particular, if interactions with customers are not personalized based on emotions, the customer experience may be poor and satisfaction may decrease. Therefore, a system is needed to improve customer service in stores and provide more personalized responses that meet individual needs.
[1432] The specific processing by the specific processing unit 290 of the data processing device 12 in the application example 2 is realized by the following means.
[1433] In this invention, the server includes means for receiving input information from a user, means for generating a response based on the input information using generative artificial intelligence, means for displaying the generated response to the user, means for saving the generated response in a conversation history, means for analyzing emotions from the user's input information, and means for personalizing the response based on the emotion analysis results. This enables personalized responses based on customer emotions, improving the customer experience.
[1434] The "means for receiving input information from a user" is an interface for transmitting information input by a user to a server.
[1435] The "means for generating a response by a generative artificial intelligence based on the input information" is a process by which the generative artificial intelligence generates an appropriate response using the user's input information.
[1436] The "means for displaying the generated response to the user" is an interface for providing the response generated by the generative artificial intelligence to the user visually or audibly.
[1437] The "means for saving generated responses in a conversation history" is a process for recording generated responses and the history of the dialogue, and saving them so that they can be used in future dialogues.
[1438] "Means for analyzing emotions from user input" refers to algorithms and processes for analyzing user input and identifying their emotional state.
[1439] The "means for personalizing responses based on the results of sentiment analysis" refers to a process for customizing responses that reflect the results of sentiment analysis and are appropriate for the user's emotional state.
[1440] This invention is a system that combines generative artificial intelligence (AI) and a sentiment analysis engine to improve customer service in brick-and-mortar stores. This system is mainly composed of three components: a server, a terminal, and a user.
[1441] Server-side processing
[1442] Initialization
[1443] When the system starts up, the server initializes the data of all virtual characters (VPCs), including the VPC's role, initial response, conversation history, etc. For example, a store assistant VPC would be set to "Assistant" or "shop assistant."
[1444] emotion recognition
[1445] When the information entered by the user is sent to the server via the device, the server receives the input information and analyzes the user's emotions using a sentiment analysis engine. For example, if the user input is "Tell me about this toaster," the sentiment engine will determine the user's emotion as "interested" based on the context. The sentiment analysis engine uses the Hugging Face transformers library.
[1446] Response Generation
[1447] The server sends a request to the generative AI based on the user's emotional information recognized by the emotion engine and the input information. The generative AI takes this information into consideration to generate the optimal response. For example, if the user shows interest, the AI will generate a response such as, "This toaster is the latest model. It can toast four slices of bread at once and maintain even toasting." The generative AI model used is OpenAI's GPT-3.
[1448] Save your response and adjust it next time
[1449] The generated response is saved in the conversation history by the server. The next time the same user speaks, an appropriate response will be generated based on this conversation history and emotional information.
[1450] Terminal side processing
[1451] Sending Events
[1452] The device takes the user's input and sends it to the server, generating a request that includes the entered text and the VPC ID. For example, if the user types "Tell me about this toaster," that information is passed to the server.
[1453] Viewing the response
[1454] Once the device receives the generated response from the server, it displays it to the user. For example, it might say, "This toaster is the latest model. It can toast four slices of bread at once and toast them evenly." The device also uses expressions that reflect the user's emotions, providing a more natural and personalized experience.
[1455] User Experience
[1456] Start a conversation
[1457] A user initiates an interaction with the VPC through a smartphone application in a physical store, for example by asking, "Tell me about this toaster."
[1458] Receiving a response
[1459] The user receives a response from the VPC, which is customized by the generative AI taking into account the user's input and emotions. For example, a response might be provided that reads, "This toaster is the latest model. It can toast four slices of bread at once and maintains even toasting."
[1460] Prompt Sentence Examples
[1461] "User's feeling is interest. Generate a response to the user's question: 'Tell me about this toaster.'"
[1462] "User's feeling is excitement. Generate a response to the user's question: 'What's new this month?'"
[1463] "User's feeling is anxiety. Generate a response to the user's question: 'Is this vacuum cleaner easy to use?'"
[1464] This prompt enables the generative AI to generate optimal responses based on the user's emotions, significantly improving the customer experience in physical stores.
[1465] The flow of the specific processing in the application example 2 will be described with reference to FIG.
[1466] Step 1:
[1467] The server receives information entered by the user through the terminal. For example, if the user enters "Tell me about this toaster," the text is sent from the terminal to the server. Through this process, the server obtains the input information (the user's question).
[1468] Step 2:
[1469] The server passes the received input information to a sentiment analysis engine to analyze the user's emotions. Specifically, it processes the text data using Hugging Face's transformers library and outputs emotion labels such as "interested," "excited," and "anxious." Through this processing, the server obtains data that identifies the user's emotional state.
[1470] Step 3:
[1471] The server generates a prompt based on the results of the sentiment analysis. For example, if the user's input is "Tell me about this toaster," and the sentiment is identified as "interest," the prompt will be "User's feeling is interest. Generate a response for the user's question: 'Tell me about this toaster.'" This process creates text data to be sent to the generative AI model.
[1472] Step 4:
[1473] The server sends a prompt to a generative AI model (OpenAI's GPT-3) to generate the optimal response. The generative AI model performs data calculations based on the prompt and outputs a response. For example, a response might be generated such as, "This toaster is the latest model. It can toast four slices of bread at once and maintain even toasting."
[1474] Step 5:
[1475] The server stores the generated response in the conversation history, so that if the same user asks the question again in the future, the server can tailor the response based on that history. This process accumulates historical data of responses.
[1476] Step 6:
[1477] The server sends the generated response to the terminal. The terminal receives this response and presents it to the user. Specifically, the response is displayed on the terminal's display. This process allows the user to check the response from the server.
[1478] Step 7:
[1479] The user checks the response displayed on the device and decides on the next action. For example, if the user takes a further action, such as "I'll buy this toaster," the input information is sent back to the server, and a new series of processes begins. This process allows the user to carry out the next dialogue or action based on the response.
[1480] The specific processing unit 290 transmits the result of the specific processing to the robot 414. In the robot 414, the control unit 46A causes the speaker 240 and the control target 443 to output the result of the specific processing. The microphone 238 acquires voice indicating a user input regarding the result of the specific processing. The control unit 46A transmits voice data indicating the user input acquired by the microphone 238 to the data processing device 12. In the data processing device 12, the specific processing unit 290 acquires the voice data.
[1481] The data generation model 58 is a so-called generative AI (Artificial Intelligence). An example of the data generation model 58 is ChatGPT (Internet Search<URL: https: / / openai.com / blog / chatgpt> ), Gemini (Internet search <url: https: gemini.google.com ?hl="ja">) and other generation AIs. The data generation model 58 is obtained by performing deep learning on a neural network. A prompt including an instruction is input to the data generation model 58, and inference data such as voice data indicating voice, text data indicating text, and image data indicating an image is also input. The data generation model 58 performs inference on the input inference data in accordance with the instruction indicated by the prompt, and outputs the inference result in a data format such as voice data and text data. Here, inference refers to, for example, analysis, classification, prediction, and / or summarization.
[1482] In the above embodiment, an example was given in which the specific processing is performed by the data processing device 12, but the technology of the present disclosure is not limited to this, and the specific processing may be performed by the robot 414.
[1483] The emotion identification model 59 as an emotion engine may determine the user's emotion according to a specific mapping. Specifically, the emotion identification model 59 may determine the user's emotion according to an emotion map (see FIG. 9), which is a specific mapping. Similarly, the emotion identification model 59 may determine the robot's emotion, and the identification processing unit 290 may perform identification processing using the robot's emotion.
[1484] FIG. 9 is a diagram illustrating an emotion map 400 on which multiple emotions are mapped. In the emotion map 400, emotions are arranged in concentric circles radiating from the center. Emotions closer to the center of the concentric circles are more primitive. Emotions representing states and actions arising from a state of mind are arranged on the outer edges of the concentric circles. The concept of emotion includes both affect and mental states. Emotions generally generated from reactions occurring in the brain are arranged on the left side of the concentric circles. Emotions generally induced by situational judgment are arranged on the right side of the concentric circles. Emotions generally generated from reactions occurring in the brain and induced by situational judgment are arranged on the upper and lower sides of the concentric circles. Furthermore, the emotion of "pleasure" is arranged on the upper side of the concentric circles, and the emotion of "discomfort" is arranged on the lower side. In this way, in the emotion map 400, multiple emotions are mapped based on the structure by which emotions are generated, and emotions that tend to occur simultaneously are mapped close to each other.
[1485] These emotions are distributed in the 3 o'clock direction on emotion map 400, and typically fluctuate between relief and anxiety. In the right half of emotion map 400, situational awareness dominates over internal sensations, resulting in a sense of calm.
[1486] The inside of emotion map 400 represents what is going on in the mind, and the outside of emotion map 400 represents behavior, so the further you go outside emotion map 400, the more visible the emotions become (the more they are expressed in behavior).
[1487] Human emotions are based on various balances, such as posture and blood sugar levels. When these balances deviate from the ideal, a state of discomfort is indicated, and when they approach the ideal, a state of pleasure is indicated. Emotions can also be created for robots, automobiles, and motorcycles, based on various balances, such as posture and remaining battery life. When these balances deviate from the ideal, a state of discomfort is indicated, and when they approach the ideal, a state of pleasure is indicated. An emotion map can be generated, for example, based on Dr. Mitsuyoshi's emotion map (Research on Voice Emotion Recognition and Emotional Brain Physiological Signal Analysis Systems, Tokushima University, Doctoral Dissertation: https: / / ci.nii.ac.jp / naid / 500000375379). The left half of the emotion map lists emotions belonging to the "reaction" domain, where sensation is dominant. The right half of the emotion map lists emotions belonging to the "situation" domain, where situational awareness is dominant.
[1488] The emotion map defines two emotions that promote learning. One is a negative emotion on the situation side, around the middle of "repentance" or "reflection." In other words, this occurs when the robot experiences negative emotions such as "I never want to feel this way again" or "I don't want to be scolded again." The other is a positive emotion on the response side, around "desire." In other words, this occurs when the robot experiences positive feelings such as "I want more" or "I want to know more."
[1489] The emotion identification model 59 inputs user input into a pre-trained neural network, obtains emotion values indicating each emotion shown in the emotion map 400, and determines the user's emotion. This neural network is pre-trained based on multiple pieces of training data that are combinations of user input and emotion values indicating each emotion shown in the emotion map 400. Furthermore, this neural network is trained so that emotions that are located close to each other have similar values, as in the emotion map 900 shown in FIG. 10. FIG. 10 shows an example in which multiple emotions, "relieved," "calm," and "reassuring," have similar emotion values.
[1490] The system according to the present disclosure has been described above mainly with respect to the functions of the data processing device 12, but the system according to the present disclosure is not necessarily implemented on a server. The system according to the present disclosure may be implemented as a general information processing system. The present disclosure may be implemented, for example, as a software program running on a personal computer or an application running on a smartphone, etc. The method according to the present disclosure may be provided to users in the form of SaaS (Software as a Service).
[1491] In the above embodiment, an example was given in which the specific processing is performed by one computer 22, but the technology of the present disclosure is not limited to this, and the specific processing may be distributed and performed by a plurality of computers including the computer 22. For example, the data generation model 58 may be provided in an external device of the data processing device 12, and data may be generated in the external device in accordance with input data.
[1492] In the above embodiment, an example in which the specific processing program 56 is stored in the storage 32 has been described, but the technology of the present disclosure is not limited to this. For example, the specific processing program 56 may be stored in a portable, computer-readable, non-transitory storage medium such as a USB (Universal Serial Bus) memory. The specific processing program 56 stored in the non-transitory storage medium is installed in the computer 22 of the data processing device 12. The processor 28 executes the specific processing in accordance with the specific processing program 56.
[1493] Alternatively, the specific processing program 56 may be stored in a storage device such as a server connected to the data processing device 12 via the network 54, and the specific processing program 56 may be downloaded and installed on the computer 22 in response to a request from the data processing device 12.
[1494] It is not necessary to store all of the specific processing program 56 in a storage device such as a server connected to the data processing device 12 via the network 54, or to store all of the specific processing program 56 in the storage 32; only a portion of the specific processing program 56 may be stored.
[1495] The hardware resource for executing a specific process can be any of the following processors: An example of a processor is a CPU, which is a general-purpose processor that functions as a hardware resource for executing a specific process by executing software, i.e., a program. Another example of a processor is a dedicated electrical circuit, such as an FPGA (Field-Programmable Gate Array), a PLD (Programmable Logic Device), or an ASIC (Application Specific Integrated Circuit), which is a processor with a circuit configuration designed specifically for executing a specific process. Each processor has built-in or connected memory, and each processor uses the memory to execute the specific process.
[1496] The hardware resource that executes the specific processing may be configured with one of these various processors, or may be configured with a combination of two or more processors of the same or different types (for example, a combination of multiple FPGAs, or a combination of a CPU and an FPGA). Also, the hardware resource that executes the specific processing may be a single processor.
[1497] As an example of a system configured with a single processor, first, one processor is configured by combining one or more CPUs and software, and this processor functions as a hardware resource that executes a specific process. Second, there is a system that uses a processor that realizes the functions of an entire system including multiple hardware resources that execute a specific process on a single IC chip, as typified by SoC (System-on-a-chip). In this way, a specific process is realized using one or more of the above-mentioned various processors as hardware resources.
[1498] Furthermore, the hardware structure of these various processors can be, more specifically, an electric circuit that combines circuit elements such as semiconductor devices. The specific processing described above is merely an example. Therefore, it goes without saying that unnecessary steps may be deleted, new steps may be added, or the processing order may be rearranged, without departing from the spirit of the invention.
[1499] The above-described description and illustrations are a detailed explanation of the parts related to the technology of the present disclosure and are merely an example of the technology of the present disclosure. For example, the above description of the configuration, functions, actions, and effects is an explanation of an example of the configuration, functions, actions, and effects of the parts related to the technology of the present disclosure. Therefore, it goes without saying that unnecessary parts may be deleted, new elements may be added, or replacements may be made to the above-described description and illustrations within the scope of the gist of the technology of the present disclosure. Furthermore, to avoid confusion and facilitate understanding of the parts related to the technology of the present disclosure, the above-described description and illustrations omit explanations of common technical knowledge that do not require particular explanation to enable the implementation of the technology of the present disclosure.
[1500] All publications, patent applications, and technical standards mentioned in this specification are herein incorporated by reference to the same extent as if each individual publication, patent application, or technical standard was specifically and individually indicated to be incorporated by reference.
[1501] The following is further disclosed regarding the above embodiment.
[1502] (Claim 1)
[1503] means for receiving input information from a user;
[1504] means for generating a response based on the input information by generative artificial intelligence;
[1505] means for displaying the generated response to a user;
[1506] a means for storing the generated response in a conversation history;
[1507] A system including:
[1508] (Claim 2)
[1509] 10. The system of claim 1, further comprising means for modifying a next response based on a conversation history.
[1510] (Claim 3)
[1511] 10. The system of claim 1, further comprising means for including external current events information in the generated response.
[1512] "Example 1"
[1513] (Claim 1)
[1514] means for receiving input information from a user;
[1515] means for generating a response using a generative artificial intelligence model based on the input information;
[1516] means for displaying the generated response to a user;
[1517] a means for storing the generated response in a conversation history;
[1518] a means for adjusting the generated response in consideration of the user's input history and attribute information of the non-player character;
[1519] A system including:
[1520] (Claim 2)
[1521] 10. The system of claim 1, further comprising means for modifying a next response based on a conversation history.
[1522] (Claim 3)
[1523] 10. The system of claim 1, further comprising means for including external current events information in the generated response.
[1524] "Application Example 1"
[1525] (Claim 1)
[1526] means for receiving input information from a user;
[1527] means for generating a response based on the input information by generative artificial intelligence;
[1528] means for displaying the generated response to a user;
[1529] a means for storing the generated response in a conversation history;
[1530] a means for converting voice input into text;
[1531] A system including a means for converting the response of the generative artificial intelligence into speech and presenting it to the user.
[1532] (Claim 2)
[1533] 10. The system of claim 1, further comprising means for modifying a next response based on a conversation history.
[1534] (Claim 3)
[1535] 10. The system of claim 1, further comprising means for including external current events information in the generated response.
[1536] "Example 2: Combining Emotion Engines"
[1537] (Claim 1)
[1538] means for receiving input information from a user;
[1539] means for recognizing a user's emotion by an emotion engine based on the input information;
[1540] means for generating a response by a generative artificial intelligence model based on the recognized emotion information and the input information;
[1541] means for displaying the generated response to a user;
[1542] means for storing the generated responses and the user's emotional information in a conversation history;
[1543] A system including:
[1544] (Claim 2)
[1545] 2. The system according to claim 1, further comprising means for adjusting a next response based on the conversation history and the user's emotional information.
[1546] (Claim 3)
[1547] 10. The system of claim 1, further comprising means for including extraneous information in the generated response.
[1548] "Application example 2 when combining emotion engines"
[1549] (Claim 1)
[1550] means for receiving input information from a user;
[1551] means for generating a response based on the input information by generative artificial intelligence;
[1552] means for displaying the generated response to a user;
[1553] a means for storing the generated response in a conversation history;
[1554] A means for analyzing emotions from user input information;
[1555] A means to personalize responses based on sentiment analysis results; and
[1556] A system including:
[1557] (Claim 2)
[1558] 10. The system of claim 1, further comprising means for modifying a next response based on a conversation history.
[1559] (Claim 3)
[1560] 10. The system of claim 1, further comprising means for including external current events information in the generated response. [Explanation of symbols]
[1561] 10, 210, 310, 410 Data Processing Systems 12 Data Processing Device 14 Smart Devices 214 Smart Glasses 314 Headset-type terminal 414 Robot< / url:> < / url:> < / url:> < / url:>
Claims
1. means for receiving input information from a user; means for generating a response based on the input information by generative artificial intelligence; means for displaying the generated response to a user; a means for storing the generated response in a conversation history; A system including:
2. 2. The system of claim 1, further comprising means for modifying a next response based on a conversation history.
3. The system of claim 1 further comprising means for including external current events information in the generated response.
Citation Information
Patent Citations
Persona chatbot control method and system
JP2022180282A