Device and method

The use of a generative AI to decompose prompts and generate behavior trees for NPCs addresses the complexity challenge, improving NPC behaviors and user engagement in virtual environments.

WO2025141730A1PCT designated stage expired Publication Date: 2025-07-03NTT DOCOMO INC
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
PCT/JP2023/046791
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Filing Date
2023-12-26
Publication Date
2025-07-03

AI Technical Summary

Technical Problem

The generation of behavior trees for Non-Player Characters (NPCs) in virtual environments is challenging due to high learning costs, making it difficult for users to create complex and engaging NPC behaviors, which can lead to simplified or sparse virtual spaces.

Method used

A generation device utilizing a generative AI, such as a large language model, decomposes prompts into sub-prompts and outputs parameters for behavior tree nodes, facilitating the easy construction of behavior trees by considering the relationship between parent and child nodes.

Benefits of technology

Enables the easy and appropriate generation of behavior trees, enhancing the complexity and engagement of NPCs in virtual environments, thereby increasing the attractiveness and user activity in metaverse platforms.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure JP2023046791_03072025_PF_FP_ABST
    Figure JP2023046791_03072025_PF_FP_ABST
Patent Text Reader

Abstract

A generation device 10 comprises: an input unit 12 that inputs, to a language model 50 that outputs a parameter of a node related to a prompt and a prompt obtained by decomposing said prompt on the basis of said prompt, a first prompt which is a prompt inputted first, or a second prompt, which is a prompt outputted from the language model 50; and an output unit 13 that outputs, as information related to generation of a behavior tree, the parameter of each node outputted by the language model 50 in response to the input of the prompt.
Need to check novelty before this filing date? Find Prior Art

Description

Apparatus and method

[0001] One aspect of the present invention relates to an apparatus and a method.

[0002] Patent Document 1 discloses a technique for extracting executable tasks based on the objectives (goal information) of an NPC (Non-Player Character) and generating a task plan.

[0003] Japanese Patent Application Laid-Open No. 2023-11071

[0004] In the above-mentioned technology, the behavior of an NPC is sometimes defined by a one-way acyclic graph called a behavior tree. However, generating a behavior tree requires a high learning cost and is not easy for many users.

[0005] One aspect of the present invention has been made in view of the above circumstances, and aims to easily generate a behavior tree.

[0006] In order to achieve the above-mentioned object, an apparatus according to one aspect of the present invention comprises an input unit that inputs a first prompt, which is the prompt input initially, or a second prompt, which is the prompt output from the generation AI, to a generation AI that outputs parameters of nodes related to the prompt and prompts decomposed from the prompt based on the prompt, and an output unit that outputs the parameters of each node output by the generation AI in response to the input of the prompt as information related to the generation of a behavior tree.

[0007] In an apparatus according to one aspect of the present invention, a generation AI is prepared in advance, which outputs, in response to an input of a prompt, parameters of a node associated with the prompt and a prompt resulting from decomposing the prompt. Then, the parameters of each node output by the generation AI in response to the input of a first prompt or a second prompt, which is the first prompt, are output as information related to the generation of a behavior tree. In this way, the generation AI outputs parameters of the node associated with the prompt and also outputs prompts resulting from decomposition of the prompt, thereby outputting parameters of the node associated with each prompt as the prompt is decomposed in stages. By using such parameters as information related to the generation of a behavior tree, it becomes possible to appropriately and easily generate a behavior tree, taking into account the relationship between parent nodes and child nodes (structural characteristics of the behavior tree). As described above, the apparatus according to one aspect of the present invention makes it possible to easily generate a behavior tree.

[0008] According to one aspect of the present invention, it is possible to easily generate a behavior tree.

[0009] FIG. 1 is a diagram illustrating an overview of the generation of a behavior tree related to NPC behavior. FIG. 2 is a functional block diagram illustrating the functional configuration of a generation device. FIG. 3 is a diagram illustrating an overview of a language model. FIG. 4 is a diagram illustrating an example of an output learning prompt that enables child prompt output from a language model. FIG. 5 is a diagram illustrating an example of an output learning prompt that enables parameter (selection type) output from a language model. FIG. 6 is a diagram illustrating an example of an output learning prompt that enables parameter (trigger type) output from a language model. FIG. 7 is a diagram illustrating an example of an output learning prompt that enables parameter (NPC operation type) output from a language model. FIG. 8 is a diagram illustrating an example of an output learning prompt that enables parameter (animation type) output from a language model. FIG. 9 is a flowchart illustrating processing related to the generation of a behavior tree. FIG. 10 is a diagram illustrating the hardware configuration of a generation device.

[0010] DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings. In the description of the drawings, the same or equivalent elements are designated by the same reference numerals, and redundant description will be omitted.

[0011] In recent years, the metaverse, a virtual space on the Internet, has become increasingly popular. In the metaverse, for example, users can move freely through a three-dimensional virtual space via their avatar, interact with other companies, and experience the buying and selling of goods or services. The metaverse platform provides users with the ability to create and publish virtual spaces, allowing anyone to create a metaverse. In particular, the use of NPCs (Non-Player Characters), which are game-specific content, has attracted attention.

[0012] An NPC is a character in a game that is not controlled by the player. The actions (movements) of an NPC are defined, for example, by a one-way acyclic graph called a behavior tree. A behavior tree has a structure with layers stacked on top of each other. Each layer contains one or more nodes, and when an action is decided, one node is activated and executed. The actions of an NPC are determined by node transitions across layers, and instructions for operating the NPC are given based on the information defined in the final terminal node.

[0013] Generating behavior trees is not easy for many users of the metaverse due to the learning costs, etc. As a result, introducing NPCs into the metaverse may be abandoned, leading to the proliferation of simple spaces and even depopulated verses. The generation device according to this embodiment makes it possible to easily generate behavior trees related to NPC behavior, increasing the number of metaverses with attractive NPCs and contributing to an increase in the number of active users of the metaverse platform.

[0014] FIG. 1 is a diagram illustrating an overview of the generation of a behavior tree related to the behavior of an NPC. As shown in FIG. 1, in a generation device according to this embodiment, for example, in response to a prompt (instruction) input from a user, a generation AI (artificial intelligence) outputs parameters related to the generation of a behavior tree, and a behavior tree is generated based on the parameters. In the example shown in FIG. 1, a prompt such as "Walk around randomly, occasionally touching your cell phone. When an avatar (user) approaches nearby, approach the person and output a fixed random dialogue to text chat" is output to the generation AI, and the behavior tree shown in the diagram on the right is generated based on the parameters output from the generation AI.

[0015] The behavior tree shown in FIG. 1 shows 12 nodes 501 to 512. First, a transition to node 501 is made. Node 501 specifies that "if a user approaches, a transition to dialogue node 502 is made; otherwise, a transition to tour node 508 is made." If a user is nearby, a transition to dialogue node 502 is made. Node 502 specifies that "a transition is made to node 503 that approaches the other party and node 504 that outputs the dialogue content, in that order." Node 503 that approaches the other party specifies that "an NPC is moved to a position near the other party," and processing is executed to move the NPC to a position near the other party (user). Next, a transition to node 504 that outputs the dialogue content is made. Node 504 that outputs the dialogue content specifies that "a random transition is made to dialogue nodes 505 to 507." Dialogue node 505 specifies "Text chat with 'Good morning'", dialogue node 506 specifies "Text chat with 'How are you?'", and dialogue node 507 specifies "Text chat with 'This is a virtual spot'". When each transition occurs, the specified process is executed.

[0016] If there is no user nearby at node 501, the node transitions to travel node 508. At travel node 508, it is specified that "a random transition is made to walking around node 510 or touching mobile phone node 509." At touching mobile phone node 509, it is specified that "an animation of touching a mobile phone is applied," and the specified processing is executed when the transition is made. At walking around node 510, it is specified that "a random transition is made to stopping node 511 or moving to random position node 512." At stopping node 511, it is specified that "an NPC is made to stop," and at random position transition node 512, it is specified that "an NPC is moved to a nearby random position." When each transition is made, the specified processing is executed. Below, how such a behavior tree is generated will be described with reference to FIGS. 2 to 8.

[0017] 2 is a functional block diagram showing the functional configuration of the generation device 10. The generation device 10 includes a storage unit 11, an input unit 12, an output unit 13, and a generation unit 14. Note that the functions of the generation device 10 may be provided separately in multiple separate devices. That is, the generation device 10 may be configured to include multiple devices. For example, only the storage unit 11 may be a separate device, or only the generation unit 14 may be a separate device.

[0018] The memory unit 11 stores a generative AI (a language model 50, for example). While the following description assumes that the memory unit 11 stores the language model 50, this is not limiting, and other learning models capable of performing functions similar to those of the language model 50 described below may be used. The language model 50 is modeled using the occurrence probability of sentences and words, receives input text data indicating a prompt, and produces a predetermined output. The language model 50 may be, for example, a large language model (LLM). The LLM is a language model constructed using large amounts of text data and deep learning technology, and is a language model in which the amount of input data, the amount of calculation, and the amount of coefficients in probability calculations are significantly increased compared to conventional language models. For example, "LLMA2" may be used as the LLM.

[0019] FIG. 3 is a diagram illustrating an overview of a language model 50 (an LLM, for example). The language model 50 accepts input of text data indicating a prompt. Based on the prompt, the language model 50 outputs parameters for the node related to the prompt and a prompt obtained by decomposing the prompt (i.e., a prompt based on the prompt input to the language model 50). A prompt obtained by decomposing a prompt may also be referred to as a prompt generated from a prompt or a prompt determined from a prompt. Hereinafter, a prompt obtained by decomposing a prompt (a decomposed prompt output from the language model 50) may be referred to as a child prompt. Nodes are broadly classified into behavior nodes and selection nodes based on their roles. A behavior node is located at the end of a behavior tree and determines operational instructions to an NPC. In the example of FIG. 1, this includes nodes 503, 505, 506, 507, 509, 511, and 512. A selection node is a node located other than the end of the behavior tree that determines the transition to a child node (a node one level lower than the node itself in the tree structure), and in the example of FIG.

[0020] The language model 50 may output a selection type, a trigger type, an NPC operation type, and an animation type as node parameters. The selection type is a transition rule to a child node in a behavior tree. The selection types may be, for example, "random," "sequence," "priority," and "none." "Random" is a rule for randomly selecting one child node and transitioning, and is set in the selection node. "Sequence" is a rule for sequentially transitioning all child nodes, and is set in the selection node. "Priority" is a rule for selecting one child node with a high priority and transitioning, and is set in the selection node. "None" is a rule for no further transition, and is set in the behavior node. In the example of FIG. 1, "priority" is set to node 501, "sequence" is set to node 502, "random" is set to nodes 504, 508, and 510, and "none" is set to nodes 503, 505, 506, 507, 509, 511, and 512, which are behavior nodes.

[0021] The trigger type is the execution trigger for a child node in the behavior tree. Execution triggers may be, for example, "avatar approach" or "none." "Avatar approach" is an execution trigger that occurs when an avatar (user) is within, for example, 4 meters. "none" indicates that there is no execution trigger.

[0022] The NPC operation type is information related to an instruction to operate an NPC. Examples of NPC operation types include "move near nearby avatar," "move to random position," "rotate toward avatar," "random text chat," "fixed text chat," and "none." "Move near nearby avatar" is an instruction to move an NPC to a position near an avatar (user) within a predetermined range. "Move to random position" is an instruction to move an NPC to a randomly set location. "Rotate toward avatar" is an instruction to rotate an NPC so that it faces toward the avatar (user). "Random text chat" is an instruction to chat randomly set text. "Fixed text chat" is an instruction to chat fixed text. "None" indicates that there are no instruction to operate an NPC.

[0023] The animation type is information related to the animation of an NPC's actions. The animation types may be, for example, "default animation," "specific animation," or "none." "Default animation" is an animation that is set by default. "Specific animation" is an animation that is set specifically for a specific scene (action). "None" indicates that no animation exists.

[0024] A child prompt is a prompt obtained by decomposing and reinterpreting a prompt input to the language model 50. The language model 50 decomposes the prompt based on information related to the decomposition of the prompt. For a prompt related to an NPC's behavior, the language model 50 decomposes the prompt using, for example, information related to the NPC's behavior as information related to the decomposition of the prompt. The information related to the NPC's behavior may be information indicating the NPC's behavior itself (e.g., "walk around randomly") or information related to the NPC's behavior (e.g., information related to the NPC's attributes, information related to the NPC's display mode, etc.). As an example, assume that a prompt such as "The NPC walks around randomly and occasionally touches its cell phone" is input to the language model 50. In this case, because information indicating two different behaviors, "walk around" and "touch the cell phone," exists, two child prompts, "The NPC walks around randomly" and "The NPC occasionally touches its cell phone," are generated and output from the language model 50.

[0025] Since it is difficult for the language model 50 to understand the tree structure and output the parameters of all the corresponding nodes in a single input / output, for example, the parameters of only one node are output at a time.

[0026] As an example, suppose a prompt such as "Walk around randomly, occasionally touching a mobile phone. When an avatar (user) approaches nearby, approach the other party and output a fixed random dialogue to text chat" shown in FIG. 1 is input to the language model 50. In this case, the language model 50 first outputs, for example, only parameters related to node 501 shown in FIG. 1. From the content of the prompt, "When an avatar (user) approaches nearby, approach the other party," it is determined that the selection type is "priority" (because if an avatar is nearby, the action of approaching the other party takes priority) and the trigger type is "avatar approach." Furthermore, it is determined that the NPC operation type and animation type are "none." Then, two child prompts based on the prompt are determined: "Approach the other party and engage in a dialogue" and "Walk around randomly, occasionally touching a mobile phone." In this case, the language model 50 outputs the selection type "priority", the trigger type "avatar approach", the NPC operation type "none", the animation type "none", and the child prompts "approach the other person and engage in a conversation" and "walk around randomly, occasionally touch the mobile phone" as parameters related to the node 501. Then, each child prompt output from the language model 50 is input again to the language model 50, and the parameters of one node corresponding to the child prompt and further child prompts are output (details will be described later).

[0027] Returning to FIG. 2 , the input unit 12 inputs to the language model 50 a first prompt, which is a prompt input initially (e.g., a prompt specified by the user), or a second prompt, which is a child prompt output from the language model 50. That is, when a prompt is input by the user, the input unit 12 inputs the prompt sound as a first prompt to the language model 50. Furthermore, if one or more child prompts based on the input of the first prompt are subsequently output from the language model 50, the input unit 12 inputs the child prompts as second prompts to the language model 50. Furthermore, if one or more new child prompts based on the input of the second prompt are output from the language model 50, the input unit 12 inputs the new child prompts as new second prompts to the language model 50.

[0028] The input unit 12 determines whether a child prompt output from the language model 50 is a single prompt that cannot be decomposed any further. If the child prompt is not a single prompt, the input unit 12 inputs the child prompt to the language model 50 as a second prompt, and if it is a single prompt, the input unit 12 terminates processing. The input unit 12 may determine that a child prompt output from the language model 50 is "a single prompt that cannot be decomposed any further" if it includes only one action, and may determine that the child prompt is not a single prompt if it includes two or more actions.

[0029] The input unit 12 may also input prompts (output training prompts) for outputting each parameter and child prompt to the language model 50. The output training prompts allow the language model 50 to learn output rules so that the above-mentioned parameters and child prompts can be output. FIG. 4 is a diagram showing an example of an output training prompt that enables the language model 50 to output a child prompt. FIG. 5 is a diagram showing an example of an output training prompt that enables the language model 50 to output a parameter (selection type) from the language model 50. FIG. 6 is a diagram showing an example of an output training prompt that enables the language model 50 to output a parameter (trigger type). FIG. 7 is a diagram showing an example of an output training prompt that enables the language model 50 to output a parameter (NPC operation type). FIG. 8 is a diagram showing an example of an output training prompt that enables the language model 50 to output a parameter (animation type).

[0030] In the example shown in FIG. <question>Specific output rules for child prompts are defined in the section, and examples of child prompt output are defined in the section Examples. <question>The guide states, "Given an input prompt describing an NPC's actions or behavior, your task is to output a corresponding message. If the input can be broken down into individual action units, rephrase them and separate them with '|' to form a coherent sentence. An action unit is always a single verb or a single compound verb. If it cannot be broken down into individual action units, simply repeat the input prompt." Three examples (Examples 1-3) are provided. For example, Example 1 provides the following: "Input: 'The NPC usually walks around, but occasionally touches his cell phone.' Explanation: There are two distinct action units: 'walks around' and 'touches his cell phone.' Child prompts: 'The NPC walks around. | The NPC occasionally touches his cell phone.'"

[0031] In the example shown in FIG. <question>Specific selection type setting rules are defined in <question>The guide states, "The 'Choice Type' defines how the NPC will perform certain actions, separated by '|'. Based on the description, it outputs the following: 1 (Random): The NPC will randomly select and perform one of several actions. 2 (Priority): The NPC will perform an action based on certain conditions or triggers. If certain criteria are met, one action will take priority. 3 (Sequence): The NPC will perform several actions in the order presented." It also provides specific examples, such as the following: "'When the avatar approaches, the NPC will also approach the avatar. | The NPC will make a random statement.' Description: Approaching the avatar and making statements to the avatar are continuous actions. Therefore, the Choice Type is 3 (Sequence). Choice Rule: 3."

[0032] In the example shown in FIG. <question>Specific trigger type setting rules are defined in <question>The standard specifies that "Based on the NPC's actions, it determines whether the NPC is near the avatar, and outputs the corresponding 'trigger' number from the following: 0: The NPC is alone. The indicator is that the action does not involve interaction with others. 1: The avatar is nearby. The indicator is that the word 'avatar' is present in the sentence." It also specifies the following specific example: "'The NPC performs a thinking action. | The NPC touches the phone.' Explanation: Since the NPC is just performing an action or touching the phone, it implies that the NPC is alone. Therefore, the trigger is 0. Trigger: 0"

[0033] In the example shown in FIG. <question>In this document, specific rules for setting NPC operation types are defined. <question>The standard specifies that "It determines whether the action contains any of the following actions and outputs the corresponding 'NPC operation' number: 1: Moves closer to a nearby avatar 2: Moves to a random location 3: Produces a standard text chat utterance 4: Produces a random sentence in the text chat utterance 5: Looks at the avatar 0: Other." It also specifies the following specific examples: "NPC wanders around: 2 NPC says 'hello': 3 NPC outputs random text: 4 NPC looks at the avatar: 5 NPC dances: 0"

[0034] In the example shown in FIG. <question>Specific rules for setting animation types are specified in the <question>The standard specifies that "Animation" refers to whether an animation needs to be created for the action. It outputs the appropriate number from two options: 1: The NPC is standing. 2: Other." It also specifies the following specific examples: "An NPC touches a mobile phone. Explanation: The NPC is not just standing there. Therefore, the animation is 2. Animation: 2 An NPC approaches an avatar. Explanation: The NPC is not just standing there. Therefore, the animation is 2. Animation: 2 An NPC makes an appropriate statement. Explanation: The NPC is not just standing there. Therefore, the animation is 2. Animation: 2 An NPC is waiting. Explanation: The NPC is standing. Therefore, the animation is 1. Animation: 1."

[0035] 2 , the output unit 13 outputs the parameters and child prompts of each node output by the language model 50 in response to the input of a prompt as information related to the generation of a behavior tree. The output unit 13 outputs the parameters and child prompts to the generation unit 14 and the input unit 12. For example, the output unit 13 outputs this information to the generation unit 14 and the input unit 12 each time a parameter and a child prompt are output from the language model 50. The input unit 12 determines whether the child prompt output from the language model 50 is a single prompt that cannot be further decomposed, and if it is not a single prompt, inputs the child prompt to the language model 50 as a second prompt, and if it is a single prompt, outputs information to the generation unit 14 indicating that the processing is to be terminated.

[0036] The generation unit 14 generates a behavior tree based on information related to the generation of a behavior tree, including parameters for each node, output from the output unit 13. As described above, since the parameters for the nodes related to each prompt are output while the prompt is decomposed in stages, the generation unit 14 can grasp the relationship between parent nodes and child nodes (structural features of the behavior tree) and generate a behavior tree appropriately and easily. The generation unit 14 may generate a behavior tree when information indicating the end of processing related to the decomposition of a child prompt is input by the input unit 12.

[0037] Next, a process for generating a behavior tree will be described with reference to Fig. 9. Fig. 9 is a flowchart showing the process for generating a behavior tree. As shown in Fig. 9, first, in the generation device 10, a prompt is input to the language model 50 (step S101). The initial prompt is, for example, a prompt specified by the user.

[0038] Next, the generation device 10 acquires the child prompts and node parameters output from the language model 50 (step S102). The acquired information is used as information related to the generation of a behavior tree.

[0039] Next, it is determined whether the child prompt output from the language model 50 is a single prompt that cannot be decomposed any further (step S103). If it is not a single prompt, the child prompt is made a new prompt (step S104), and the process returns to step S101. If it is a single prompt, a behavior tree is generated based on the child prompt and node parameters that have been acquired up to that point (step S105).

[0040] Next, the effects of the generating device 10 according to this embodiment will be described.

[0041] The generation device 10 according to this embodiment includes an input unit 12 that inputs a first prompt, which is a prompt input initially, or a second prompt, which is a child prompt output from the language model 50, to a language model 50 that outputs parameters of nodes related to the prompt and child prompts obtained by decomposing the prompt based on the prompt, and an output unit 13 that outputs the parameters of each node output by the language model 50 in response to the input of the prompt as information related to the generation of a behavior tree.

[0042] In the generation device 10 according to this embodiment, a language model 50 is prepared in advance, which outputs, in response to an input of a prompt, parameters of a node related to the prompt and child prompts obtained by decomposing the prompt. Then, the parameters of each node output by the language model 50 in response to the input of a first prompt input initially or a second prompt, which is a child prompt, are output as information related to the generation of a behavior tree. In this way, the language model 50 outputs parameters of the node related to the prompt and outputs child prompts obtained by decomposing the prompt, thereby outputting parameters of the node related to each prompt while decomposing the prompt step by step. Using these parameters as information related to the generation of a behavior tree makes it possible to appropriately and easily generate a behavior tree, taking into account the relationship between parent nodes and child nodes (structural characteristics of the behavior tree). As described above, the generation device 10 according to this embodiment can easily generate a behavior tree.

[0043] The input unit 12 determines whether the child prompt output from the language model 50 is a single prompt that cannot be decomposed any further, and if it is not a single prompt, inputs the child prompt to the language model 50 as a second prompt, and if it is a single prompt, terminates the processing. With this configuration, the prompt is repeatedly decomposed until it becomes a single prompt, making it possible to generate a behavior tree more appropriately.

[0044] The generation AI may be a language model 50. With this configuration, it becomes possible to appropriately and easily generate a behavior tree based on a prompt that is text data.

[0045] The language model 50 may output, as a parameter, a transition rule to a child node in the behavior tree. With this configuration, it becomes possible to generate a behavior tree appropriately and easily, taking the transition rule into consideration.

[0046] The language model 50 may output, as a parameter, an execution trigger of a child node in the behavior tree. With this configuration, it becomes possible to generate a behavior tree appropriately and easily, taking the execution trigger into consideration.

[0047] The language model 50 may output information related to operation instructions as parameters. With this configuration, it becomes possible to generate a behavior tree appropriately and easily, taking into account the operation instruction content of each node.

[0048] The language model 50 may output information related to animation as a parameter. With this configuration, it becomes possible to generate a behavior tree appropriately and easily, taking into account the animation information of each node.

[0049] The language model 50 may decompose the prompt based on information related to the decomposition of the prompt. With this configuration, the prompt can be appropriately decomposed in accordance with predetermined decomposition rules.

[0050] For prompts related to the actions of NPCs, the language model 50 may decompose the prompts by using information related to the actions of the NPCs as the information related to the decomposition of the prompts. With this configuration, the prompts can be appropriately decomposed into action units based on, for example, information specifically indicating the actions of the NPCs.

[0051] Next, the hardware configuration of the above-mentioned generation device 10 will be described with reference to Fig. 10. The generation device 10 may be physically configured as a computer device including a processor 1001, a memory 1002, a storage 1003, a communication device 1004, an input device 1005, an output device 1006, a bus 1007, etc.

[0052] In the following description, the term "apparatus" can be interpreted as a circuit, a device, a unit, etc. The hardware configuration of the generation apparatus 10 may be configured to include one or more of the apparatuses shown in the drawings, or may be configured to exclude some of the apparatuses.

[0053] Each function in the generating device 10 is realized by loading specified software (programs) onto hardware such as a processor 1001 and a memory 1002, causing the processor 1001 to perform calculations and control communication via a communication device 1004 and the reading and / or writing of data in the memory 1002 and storage 1003.

[0054] The processor 1001 controls the entire computer by running, for example, an operating system. The processor 1001 may be configured as a central processing unit (CPU) including an interface with peripheral devices, a control device, an arithmetic unit, a register, etc. For example, the control function of the input unit 12, etc. may be realized by the processor 1001.

[0055] The processor 1001 also reads programs (program codes), software modules, and data from the storage 1003 and / or the communication device 1004 into the memory 1002, and executes various processes in accordance with these. The programs used are those that cause a computer to execute at least some of the operations described in the above embodiments.

[0056] For example, the control functions of the generation unit 14 and the like may be realized by a control program stored in the memory 1002 and running on the processor 1001, and similar functions may be realized for other functional blocks. Although the above-described various processes have been described as being executed by one processor 1001, they may be executed simultaneously or sequentially by two or more processors 1001. The processor 1001 may be implemented on one or more chips. The program may be transmitted from a network via a telecommunications line.

[0057] The memory 1002 is a computer-readable recording medium and may be composed of at least one of, for example, a read-only memory (ROM), an erasable programmable ROM (EPROM), an electrically erasable programmable ROM (EEPROM), a random access memory (RAM), etc. The memory 1002 may also be called a register, a cache, a main memory (primary storage device), etc. The memory 1002 can store executable programs (program codes), software modules, etc. for implementing a wireless communication method according to one embodiment of the present invention.

[0058] Storage 1003 is a computer-readable recording medium, and may be, for example, at least one of an optical disk such as a CD-ROM (Compact Disc ROM), a hard disk drive, a flexible disk, a magneto-optical disk (e.g., a compact disk, a digital versatile disk, a Blu-ray disc), a smart card, a flash memory (e.g., a card, a stick, a key drive), a floppy disk, a magnetic strip, etc. Storage 1003 may also be referred to as an auxiliary storage device. The above-mentioned storage medium may be, for example, a database, a server, or other appropriate medium including memory 1002 and / or storage 1003.

[0059] The communication device 1004 is hardware (transmission / reception device) for communicating between computers via a wired and / or wireless network, and is also called, for example, a network device, a network controller, a network card, or a communication module.

[0060] The input device 1005 is an input device (e.g., a keyboard, a mouse, a microphone, a switch, a button, a sensor, etc.) that receives input from the outside. The output device 1006 is an output device (e.g., a display, a speaker, an LED lamp, etc.) that outputs to the outside. The input device 1005 and the output device 1006 may be integrated into one device (e.g., a touch panel).

[0061] Furthermore, each device such as the processor 1001 and the memory 1002 is connected to a bus 1007 for communicating information. The bus 1007 may be configured as a single bus, or may be configured as different buses between the devices.

[0062] The generating device 10 may also be configured to include hardware such as a microprocessor, a digital signal processor (DSP), an application specific integrated circuit (ASIC), a programmable logic device (PLD), or a field programmable gate array (FPGA), and some or all of the functional blocks may be realized by the hardware. For example, the processor 1001 may be implemented by at least one of these pieces of hardware.

[0063] Although the present embodiment has been described in detail above, it is clear to those skilled in the art that the present embodiment is not limited to the embodiment described in this specification. The present embodiment can be implemented in modified and altered forms without departing from the spirit and scope of the present invention as defined by the claims. Therefore, the description in this specification is intended to be illustrative and does not have any limiting meaning on the present embodiment.

[0064] For example, in the above embodiment, the generation device 10 is described as generating a behavior tree, but this is not limited thereto, and the generation device may only output information related to the generation of the behavior tree, and another device may generate the behavior tree. Also, in the above embodiment, the generation device 10 is described as storing the language model 50, but this is not limited thereto, and the generation device may perform the above-mentioned processing using a language model stored in another device.

[0065] Furthermore, although the description has been given of generating a behavior tree relating to the behavior of an NPC, this is not limited to this, and the generation device may output information relating to the generation of a behavior tree relating to the processing of other components (e.g., a robot), and generate a behavior tree based on the output information.

[0066] Each aspect / embodiment described herein may be applied to systems utilizing LTE (Long Term Evolution), LTE-Advanced (LTE-A), SUPER 3G, IMT-Advanced, 4G, 5G, FRA (Future Radio Access), W-CDMA, GSM, CDMA2000, UMB (Ultra Mobile Broadband), IEEE 802.11 (Wi-Fi), IEEE 802.16 (WiMAX), IEEE 802.20, UWB (Ultra-Wide Band), Bluetooth, or other suitable systems and / or next generation systems enhanced thereon.

[0067] The order of the procedures, sequences, flowcharts, etc. of each aspect / embodiment described herein may be rearranged unless it is consistent. For example, the methods described herein present elements of various steps in an example order and are not limited to the particular order presented.

[0068] Input and output information may be stored in a specific location (for example, memory) or managed in a management table. Input and output information may be overwritten, updated, or added to. Output information may be deleted. Input information may be sent to another device.

[0069] The determination may be made based on a value represented by one bit (0 or 1), a Boolean value (true or false), or a numerical comparison (e.g., comparison with a predetermined value).

[0070] The aspects / embodiments described herein may be used alone or in combination, or may be switched depending on the implementation. Notification of predetermined information (e.g., notification that "X is true") is not limited to explicit notification, but may be implicit (e.g., not notifying the predetermined information).

[0071] Software shall be construed broadly to mean instructions, instruction sets, code, code segments, program code, programs, subprograms, software modules, applications, software applications, software packages, routines, subroutines, objects, executable files, threads of execution, procedures, functions, etc., whether referred to as software, firmware, middleware, microcode, hardware description language, or otherwise.

[0072] Software, instructions, etc. may also be transmitted or received over a transmission medium. For example, if the software is transmitted from a website, server, or other remote source using wired technologies such as coaxial cable, fiber optic cable, twisted pair, and Digital Subscriber Line (DSL), and / or wireless technologies such as infrared, radio, and microwave, these wired and / or wireless technologies are included within the definition of transmission media.

[0073] The information, signals, etc. described herein may be represented using any one of a variety of different technologies. For example, data, instructions, commands, information, signals, bits, symbols, chips, etc. that may be referred to throughout the above description may be represented by voltages, currents, electromagnetic waves, magnetic fields or magnetic particles, optical fields or photons, or any combination thereof.

[0074] It should be noted that terms explained in this specification and / or terms necessary for understanding this specification may be replaced with terms having the same or similar meanings.

[0075] Furthermore, the information, parameters, etc. described in this specification may be expressed as absolute values, as relative values ​​from a predetermined value, or as corresponding other information.

[0076] A communications terminal may also be referred to by those skilled in the art as a mobile communications terminal, subscriber station, mobile unit, subscriber unit, wireless unit, remote unit, mobile device, wireless device, wireless communications device, remote device, mobile subscriber station, access terminal, mobile terminal, wireless terminal, remote terminal, handset, user agent, mobile client, client, or some other suitable terminology.

[0077] As used herein, the phrase "based on" does not mean "based only on," unless expressly specified otherwise. In other words, the phrase "based on" means both "based only on" and "based at least on."

[0078] When designations such as "first," "second," etc. are used herein, any reference to such elements does not generally limit the quantity or order of those elements. These designations may be used herein as a convenient method of distinguishing between two or more elements. Thus, a reference to a first and a second element does not imply that only two elements may be employed therein or that the first element must precede the second element in some way.

[0079] To the extent that the terms "include," "including," and variations thereof are used herein or in the claims, these terms are intended to be inclusive, similar to the term "comprising." Furthermore, the term "or," as used herein or in the claims, is not intended to be an exclusive or.

[0080] In this specification, a plurality of devices is also included unless the context or the technology clearly indicates that only one device exists.

[0081] Throughout this disclosure, the plural is intended to be included unless the singular is clearly indicated by the context.

[0082] Finally, various exemplary embodiments included in the present disclosure are described below in [E1] to [E7].

[0083] [E1] An apparatus comprising: an input unit that inputs a first prompt, which is the prompt input initially, or a second prompt, which is the prompt output from the generation AI, to a generation AI that outputs parameters of nodes related to the prompt and prompts decomposed from the prompt based on the prompt; and an output unit that outputs the parameters of each node output by the generation AI in response to the input of the prompt as information related to the generation of a behavior tree.

[0084] [E2] The device described in [E1], wherein the input unit determines whether the prompt output from the generation AI is a single prompt that cannot be further decomposed, and if it is not a single prompt, inputs the prompt to the generation AI as the second prompt.

[0085] [E3] The device according to [E1] or [E2], wherein the generative AI is a language model.

[0086] [E4] The device according to [E3], wherein the language model outputs, as the parameter, information relating to a transition rule to a child node in a behavior tree.

[0087] [E5] The device according to [E3] or [E4], wherein the language model outputs, as the parameter, information relating to an execution trigger of a child node in a behavior tree.

[0088] [E6] The device according to any one of [E3] to [E5], wherein the language model outputs information related to an operation instruction as the parameter.

[0089] [E7] The device according to any one of [E3] to [E6], wherein the language model outputs information related to animation as the parameter.

[0090] [E8] The device according to any one of [E3] to [E7], wherein the language model decomposes the prompt based on information relating to the decomposition of the prompt.

[0091] [E9] The device according to [E8], wherein the language model decomposes a prompt relating to an action of an NPC (Non Player Character) using information relating to the action of the NPC as information relating to the decomposition of the prompt.

[0092] [E10] A method executed by an apparatus, comprising: inputting a first prompt, which is the prompt input initially, or a second prompt, which is the prompt output from the generation AI, to a generation AI that outputs parameters of nodes related to the prompt and prompts decomposed from the prompt based on the prompt; and outputting the parameters of each node output by the generation AI in response to the input of the prompt as information related to the generation of a behavior tree.

[0093] 10...generation device, 12...input unit, 13...output unit, 50...language model< / question> < / question> < / question> < / question> < / question> < / question> < / question> < / question> < / question> < / question>

Claims

1. An apparatus comprising: an input unit that inputs a first prompt which is the prompt first input to a generative AI that outputs parameters of nodes related to the prompt and a prompt obtained by decomposing the prompt based on the prompt, or a second prompt which is the prompt output from the generative AI; and an output unit that outputs, as information related to generation of a behavior tree, parameters of each node output by the generative AI in response to the input of the prompt.

2. The apparatus according to claim 1, wherein the input unit determines whether the prompt output from the generative AI is a single prompt that cannot be further decomposed, and if it is not a single prompt, inputs the prompt to the generative AI as the second prompt.

3. The apparatus according to claim 1, wherein the generative AI is a language model.

4. The apparatus according to claim 3, wherein the language model outputs, as the parameters, information related to a transition rule to child nodes in the behavior tree.

5. The apparatus according to claim 3, wherein the language model outputs, as the parameters, information related to an execution trigger of child nodes in the behavior tree.

6. The apparatus according to claim 3, wherein the language model outputs, as the parameters, information related to an operation instruction.

7. The apparatus according to claim 3, wherein the language model outputs, as the parameters, information related to an animation.

8. The apparatus according to claim 3, wherein the language model decomposes the prompt based on information related to decomposition of the prompt.

9. The apparatus according to claim 8, wherein for a prompt related to the behavior of an NPC (Non Player Character), the language model decomposes the prompt using the information related to the behavior of the NPC as the information related to decomposition of the prompt.

10. A method executed by an apparatus, the method including: inputting a first prompt which is the prompt first input to a generative AI that outputs parameters of nodes related to the prompt and a prompt obtained by decomposing the prompt based on the prompt, or a second prompt which is the prompt output from the generative AI; and outputting, as information related to generation of a behavior tree, parameters of each node output by the generative AI in response to the input of the prompt.

Citation Information

Patent Citations

  • Knowledge question and answer method, device and equipment and storage medium

    CN117171306A