Configuration and deployment of digital avatar assets
Disclosed are systems and techniques for configuring multi-modal digital avatar (DA) resources. The techniques include selecting a plurality of multi-modal DA resources identifying, for a first multi-modal DA resource of the plurality of multi-modal DA resources, at least a first modal input event and a second modal input event, and generating a graph that defines an execution flow for the plurality of multi-modal DA resources. The graph includes nodes comprising a first node associated with a first DA resource, a second node associated with a second multi-modal DA resource, and a third node associated with a third multi-modal DA resource. The graph includes a plurality of directed edges, including a first directional edge associated with a transition of the execution flow from the first node to the second node conditioned on an event handler of the first node responding to an occurrence of the first modal input event.
1 . A method comprising:
selecting a plurality of multi-modal digital avatar (DA) resources, wherein individual multi-modal DA resources of the plurality of multi-modal DA resources program multi-modal DA episodes of an interaction between a user and a computing device;
identifying, for a first multi-modal DA resource of the plurality of multi-modal DA resources, at least a first modal input event of a plurality of modal input events and a second modal input event of the plurality of modal input events;
generating a graph structure that defines an execution flow for the plurality of multi-modal DA resources and comprises:
a plurality of nodes comprising a first node associated with the first multi-modal DA resource, a second node associated with a second multi-modal DA resource of the plurality of multi-modal DA resources, and a third node associated with a third multi-modal DA resource of the plurality of multi-modal DA resources, and
a plurality of directional edges comprising:
a first directional edge associated with a transition of the execution flow from the first node to the second node conditioned on an event handler of the first node responding to an occurrence of the first modal input event, and
a second directional edge associated with a transition of the execution flow from the first node to the third node conditioned on an event handler of the second node responding to an occurrence of the second modal input event;
executing, by a processing device, a compiler to transform the generated graph structure into an executable file comprising instructions that execute the plurality of multi-modal DA resources on a computing device; and
executing, by the computing device, the executable file to cause the computing device to respond to one or more interactions with a user by dynamically transitioning between one or more DA resources of the plurality of multi-modal DA resources responsive to detection of one or more modal input events of the plurality of modal input events.
2 . The method of claim 1 , wherein the second node is a child node of the first node, wherein the second node comprises one or more attributes, and wherein the first node is configured to modify at least one attribute of the one or more attributes of the second node conditioned on an occurrence of a third modal input event of the plurality of modal input events.
3 . The method of claim 2 , wherein the third node is a child of the second node.
4 . The method of claim 1 , wherein the transition of the execution flow from the first node to the second node is further conditioned on an active state of the first node.
5 . The method of claim 1 , wherein the plurality of nodes further comprises a fourth node associated with a fourth multi-modal DA resource of the plurality of multi-modal DA resources;
wherein the second node is a starting node of a first branch, the third node is a starting node of a second branch, and the fourth node is a starting node of a third branch; and
wherein in a first state of the execution flow, the first branch is active, the second branch is sleeping, and the third branch is inactive.
6 . The method of claim 1 , further comprising:
identifying one or more continuous properties; and
configuring the first multi-modal DA resource to modify the one or more continuous properties based on the occurrence of the first modal input event.
7 . The method of claim 1 , wherein the plurality of modal input events comprises at least one of:
an audio-mode event;
a motion-mode event; or
a tactile-mode event.
8 . A method comprising:
detecting, using a graphics user interface (GUI), a first event associated with a multi-modal digital avatar (DA) interaction between a user and a computing device;
accessing, by a processing device, a graph structure stored in a memory device communicatively coupled to a processing device, the graph structure comprising executable, by the processing device, multi-modal DA execution flow instructions defining the multi-modal DA interaction, the graph structure comprising:
a plurality of nodes representing a plurality of multi-modal DA interaction resources, wherein individual multi-modal DA interaction resources program respective multi-modal DA interaction episodes, and
a plurality of directional edges, wherein individual directional edges are associated with conditional transitions of the multi-modal DA execution flow instructions between two nodes of the plurality of nodes;
determining, by the processing device, that a first directional edge of the plurality of directional edges is conditioned on an event handler of a first node of the plurality of nodes responding to an occurrence of the first event, the first directional edge connecting the first node of the plurality of nodes with a second node of the plurality of nodes, and the event handler of the first node monitors at least one of audio-mode events, motion-mode events, or tactile-mode events;
causing the multi-modal DA execution flow instructions to transition from the first node to the second node and execute an action, associated with the second node, as part of the multi-modal DA interaction between the user and the computing device.
9 . The method of claim 8 , further comprising:
detecting a second event associated with the multi-modal DA interaction between the user and the computing device;
determining that the first node comprises a second directional edge of the plurality of directional edges conditioned on the event handler of the first node responding to an occurrence of the second event, wherein the second directional edge connects the first node of the plurality of nodes with a third node of the plurality of nodes; and
causing the multi-modal DA execution flow instructions to transition from the second node to the third node.
10 . The method of claim 8 , wherein the graph further comprises a parent node and a child node, wherein the child node comprises one or more attributes, and wherein the parent node is configured to modify at least one attribute of the one or more attributes of the child node conditioned on an occurrence of a predetermined event.
11 . The method of claim 8 , wherein causing the multi-modal DA execution flow instructions to transition from the first node to the second node is further conditioned on the first node being in an active state.
12 . The method of claim 9 , wherein the plurality of nodes further comprises a fourth node;
wherein the second node is a starting node of a first branch, the third node is a starting node of a second branch, and the fourth node is a starting node of a third branch; and
wherein in a first state of the multi-modal DA execution flow instructions, the first branch is active, the second branch is sleeping, and the third branch is inactive.
13 . The method of claim 8 , further comprising:
identifying one or more continuous properties; and
modifying, by a first multi-modal DA interaction resource associated with the first node, the one or more continuous properties based on the event handler of the first node responding to the occurrence of the first event.
14 . A method, comprising:
receiving a configuration file for a multi-modal digital avatar (DA) resource; and
running a compiler to generate, using the configuration file, an executable file comprising instructions that, when implemented on a computing device, cause the computing device to execute the multi-modal DA resource, wherein generating the executable file comprises:
configuring, using the compiler and according to the configuration file, a plurality of actions associated with the multi-modal DA resource;
configuring, using the compiler and according to the configuration file, one or more exit ports, each of the one or more exit ports associated with a corresponding transition of an execution flow from the multi-modal DA resource to another DA resource, conditional on one or more actions associated with a respective exit port;
configuring, using the compiler and according to the configuration file, one or more event handlers associated with the multi-modal DA resource to receive one or more modal input events, individual modal input events being associated with at least one of:
an audio-mode event associated with a DA-user interaction,
a motion-mode event associated with the DA-user interaction, or
a tactile-mode event associated with the DA-user interaction;
configuring, using the compiler and according to the configuration file, the one or more event handlers to select, responsive to a received modal input event of the one or more modal input events, from at least one of:
the plurality of actions, or
the one or more exit ports.
15 . The method of claim 14 , wherein the plurality of actions comprises at least one of:
an audio-mode output action associated with the DA-user interaction,
an animation-mode output action associated with the DA-user interaction,
a graphic-mode output action associated with the DA-user interaction,
a text-mode output action associated with the DA-user interaction, or
an action comprising transferring control to a multi-modal DA resource different from the multi-modal DA resource.
16 . The method of claim 14 , further comprising:
configuring, by the compiler and according to the configuration file, one or more entry ports associated with the multi-modal DA resource; and
associating an exit port of an additional multi-modal DA resource with a first entry port of the one or more entry ports of the multi-modal DA resource.
17 . The method of claim 16 , wherein the plurality of actions further comprises:
a state modification action, wherein the state modification action modifies a state of the multi-modal DA resource or the additional multi-modal DA resource.
18 . The method of claim 17 , wherein the one or more event handlers are to select from at least one of the plurality of actions or the one or more exit ports further responsive to the state of the multi-modal DA resource satisfying an activation condition.
19 . The method of claim 14 , wherein the method is performed by at least one of:
a control system for an autonomous or semi-autonomous machine;
a perception system for an autonomous or semi-autonomous machine;
a system for performing simulation operations;
a system for performing digital twin operations;
a system for performing light transport simulation;
a system for performing collaborative content creation for 3D assets;
a system for performing deep learning operations;
a system implemented using an edge device;
a system for generating or presenting at least one of augmented reality content, virtual reality content, or mixed reality content;
a system implemented using a robot;
a system for performing conversational AI operations;
a system for generating synthetic data;
a system incorporating one or more virtual machines (VMs);
a system implemented at least partially in a data center; or
a system implemented at least partially using cloud computing resources.