...
Drag and drop the Text prompt from the palette onto the canvas.
On the properties, change the step name from Prompt to a user-friendly name to identify and define what the step does. This improves the readability of the skill.
You could create a new prompt by:
Toggle to ‘New Prompt’.
Add the ‘Message’ Luma should ask the user.
Provide a name for the 'attribute’ to save the user’s response.
Select the ‘datatype' type of information expected.
Confirm if the prompt is mandatory. This means the users must provide the information to go ahead with the skill.
Add the default value.
Click on Create to create the attribute. This is optional. If not clicked, the attribute will be created automatically when Skill is saved.
To add more details to the attribute, such as NLP extraction method and validations, before saving it, click on the Advanced Configuration under the create button.
Now you can pass global attributes to send in web widget context. This is applicable only for web widget.
You could also use an existing attribute.
This enables you to add an existing global attribute to the skill and use the prompt added to the attribute.
Toggle the switch to Choose existing Prompt.
Select the attribute. This loads the Message field with the message configured in the selected attribute.
You change the details by overriding the attribute.
You could click on the pencil icon to update the message. Once done, click on the green tick to save changes.
Alternatively, click on the attribute name and make the required changes on the attribute override pop-up screen.
For more details on attribute override, refer to Building Conversation Flow | Attribute Override.
The Text prompt is now ready.
...
Drag and drop the Card prompt from the palette onto the canvas.
On the properties, change the step name to a user-friendly name to identify and define what the step does. This improves the readability of the skill.
You could create a new prompt by:
Toggle to ‘New Prompt’.
Add the ‘Message’ Luma should ask the user.
A card is added by default. Click on the card to define the card and option to be displayed to the user.
Add as many cards as required. Click on the tag icon to change the payload of the option, which is the value saved in the attribute when the option is selected. For more information, refer to Build User Prompts.
Provide a name for the 'attribute’ to save the user’s response.
Select the ‘datatype' type of information expected.
Confirm if the prompt is mandatory. This means the users must provide the information to go ahead with the skill.
Add the default value.
Click on Create to create the attribute. This is optional. If not clicked, the attribute will be created automatically when Skill is saved.
To add more details to the attribute, such as NLP extraction method and validations, before saving it, click on the Advanced Configuration under the create button.
You could also use an existing attribute.
This enables you to add an existing global attribute to the skill and use the prompt added to the attribute.
Toggle the switch to Choose existing Prompt.
Select the attribute. This loads the Message field with the message configured in the selected attribute.
You change the details by overriding the attribute.
You could click on the pencil icon to update the message and options. Once done, click on the green tick to save changes.
Alternatively, click on the attribute name and make the required changes on the attribute override pop-up screen.
For more details on attribute override, refer to Building Conversation Flow | Attribute Override.
The Card prompt is now ready.
...
Drag and drop the Text Message from the palette onto the canvas.
On the properties, change the step name from Message to a user-friendly name to identify and define what the step does. This improves the readability of the skill.
Add the ‘Message’ to be displayed.
The Text Message is now ready.
Now you can pass global attributes from text message control to send in web widget context. This is applicable only for web widget.
Message-Quick Replies
Quick Reply Message offers a selection to the end user. Using Quick Reply Messages, skill developers can build personalized conversations. Here you can define the message to be displayed, and the Options to be presented, providing a range of subsequent actions that can be taken.
...
Drag and drop the Quick Reply prompt from the palette onto the canvas.
On the properties, change the step name from Message to a user-friendly name to identify and define what the step does. This improves the readability of the skill.
Add the ‘Message’ to be displayed. This is optional.
Add as many options as required. You could add buttons that trigger another skill or conversation using ‘+Options' or open a URL using '+URL’
Click on the tag icon to change the value. This is the action taken when the option is selected. For more information, refer to Building Conversation Flow | Show Message.
Now you can pass global attributes from message quick reply to send in web widget context. This is applicable only for web widget.
The Quick Reply Message is now ready.
...
Drag and drop the Card prompt from the palette onto the canvas.
On the properties, change the step name from Message to a user-friendly name to identify and define what the step does. This improves the readability of the skill.
Add the ‘Message’ to be displayed. This is optional.
Add as many Cards as required. You could add buttons that trigger another skill or conversation using ‘+Options' or open a URL using '+URL’
Click on the tag icon to change the value. This is the action taken when the option is selected. For more information, refer to Building Conversation Flow | Show Message.
The Card Message is now Now you can pass global attributes from message cards to send in web widget context. This is applicable only for web widget.
The Card Message is now ready.
Image- Message
Image Messages allow skill developers to add simple text messages and images to be displayed to the user.
...
Info |
---|
The count 1,2,3… on the links of each Rule indicates the sequence in which the rules are evaluated. Else determines the fallback path that is taken when none of the rule is true. |
Trigger Skill
Trigger Skill construct is used for dynamic branching in user conversation. With this construct, you can redirect users to another skill based on specific conditions or user actions. The Trigger Skill construct empowers the skill developer to create intricate decision paths, providing personalized pathways for users based on their unique needs. This construct indicates the end of the current skill and branches the conversation to another skill.
Info |
---|
Once the conversation flow is routed to the next skill, the control does not come back to the current skill |
...
Set/Transformation Attributes
Set/Transform Attribute enables the skill developers to manipulate and store information obtained from users or integration calls. These constructs enable developers to convert values and use them in various contexts, such as executing tasks through integrations, branching to other skills using Rulesets, or providing users with informative messages. With Set/Transform Attributes, developers can enhance the functionality and customization of their skills by effectively utilizing and transforming data.
Here you can:
Set Attribute - Set the existing global or custom attributes with the values received from Integration calls. You could also create local attributes and use those tp retain information that can be used later in the skill.
Transform Attribute - Transform Attribute is used to transform the values and assign the transformed/formatted/customized value to a Global, Local, or Custom User Attribute. Luma Virtual Agent provides a range of Transformation functions to allow skill developers to convert the data as required, such as Split, Trim, Substring, Replace, Custom Date-Time, and more.
To add a Set/Transformation attribute, follow the below steps:
Drag and drop the Trigger Skill Set/Transformation attribute construct from the palette onto the canvas.
On the properties panel, select the skill to branch to.
Select from the skill list.
Click on the view button to view the details of the branching skill in a new tab.
Set/Transformation Attributes
Set/Transform Attribute enables the skill developers to manipulate and store information obtained from users or integration calls. These constructs enable developers to convert values and use them in various contexts, such as executing tasks through integrations, branching to other skills using Rulesets, or providing users with informative messages. With Set/Transform Attributes, developers can enhance the functionality and customization of their skills by effectively utilizing and transforming data.
Here you can:
Set Attribute - Set the existing global or custom attributes with the values received from Integration calls. You could also create local attributes and use those tp retain information that can be used later in the skill.
Transform Attribute - Transform Attribute is used to transform the values and assign the transformed/formatted/customized value to a Global, Local, or Custom User Attribute. Luma Virtual Agent provides a range of Transformation functions to allow skill developers to convert the data as required, such as Split, Trim, Substring, Replace, Custom Date-Time, and more.
To add a Set/Transformation attribute, follow the below steps:
Drag and drop the Set/Transformation attribute construct from the palette onto the canvas.
On the properties panel, you can now Set Attributes or Transform Attributes.
To Set Attribute:
Click on ‘+Set attributeyou can now Set Attributes or Transform Attributes.
To Set Attribute:
Click on ‘+Set attribute’.
Now, on the Set Attribute control, configure the details.
Select the attribute to be set.
Select the scope of the attribute, i.e., Global, Local, or User Custom.
Select the Attribute from the dropdown.
Now add the Expression to indicate what type of value is to be assigned to the attribute. You could use a Value, JSON Path, indirect JSON, XPath, Indirect Xpath or Script to the set the value.
Add an expression that holds to assign value.
When using a script, add the script that returns a value to be set to the attribute. Use the following syntax to use existing attributes in the script:
contextAttributes.getAttribute("@{global.global1}"),
contextAttributes.getAttribute("@{local.local1}")
To Transform value:
Click on ‘+Transform’.
Now, on the Set Transform Attribute control, configure the details.
Select the attribute to be set after transforming a value.
Select the scope of the attribute, i.e., Global, Local, or User Custom.
Select the Attribute from the dropdown.
Now add the Expression to indicate what type of value is to be assigned to the attribute.
Add an expression that holds to assign value.
To Transform value:
Click on ‘+Transform’.
Now, on the Transform Attribute control, configure the details.
Select the attribute to be set after transforming a value.
Select the scope of the attribute, i.e., Global, Local, or User Custom.
Select the Attribute from the dropdown.
Now select the Transformation function.
Select the Function Mode.
Based on the Function mode, provide information to the input parameters. select the Transformation function.
Select the Function Mode.
Based on the Function mode, provide information to the input parameters. For more details on how to use the Transformation function, refer to Using Transformation Function.
You can add as many ‘Set and transform’ attributes as required. The functions are executed in the sequence in which these are added.
...
The clear attribute construct is used to clear the value available in an attribute. Skill developers can either clear specific attributes or clear all attributes. This flexibility ensures a clean slate for tailored user interactions and streamlined skill behavior. The controls allows you to clear Global as well as Local attributes used in the skill.
To Clear an attribute, follow the below steps:
Drag and drop the Clear attribute construct from the palette onto the canvas.
On the properties panel, you may clear Global attributes or Local attributes or both:
Select In the ‘Clear Specific Global Attributes’ option.
In the Attribute dropdown,Attribute section, you may:
Select None if you do not wish to clear any Global attributes.
Select the ‘Clear Specific Global Attributes’ option.
In the Attribute dropdown, select the attributes to be cleared.
Select the ‘Clear All Global Attributes’ option.
In the Attribute dropdown, select the attributes that should NOT be cleared and data should be retained.
...
In
...
the Local Attribute section, you may:
Select None if you do not wish to clear any Local attributes.
Select the ‘Clear Specific Local Attributes’ option.
In the Attribute dropdown, type the name of the attributes to be cleared.
Select the ‘Clear All Local Attributes’ option.
In the Attribute dropdown, type the name of the attribute that should NOT be cleared, and data should be retained.
Set KPIs
In Luma VA, you can configure skills to address end-user problems and divert support requests, either through automated services or using existing knowledge resources. The KPIs within Luma serve as measures of the value that skills bring to the organization. When crafting skills, developers use 'Set KPI' conversation construct to compute Luma KPIs as the skill is executed. Here, you can select the KPI metrics and parameters relevant to the skill. Depending on the setup and the conversation, KPIs are computed.
To use Set KPI in your skill follow the below steps:
Drag and drop "Set KPI" on the canvas.
...
On the properties panel, select the KPIs to be updated and the effort (in minutes) saved.
You may update the following KPIs:
Deflected Support Requests: The KPI indicates that the skill can deflect a support request. Specify the number of minutes that the skill can save as the user request is directly resolved and a support request is avoided
Resolved with Knowledge: The KPI is linked to ‘Deflected Support Requests’. Mark 'Resolved with Knowledge' if the ticket is deflected by a Knowledge Articlea Knowledge Article deflects the ticket.
Resolved with External Information: The KPI is linked to ‘Deflected Support Requests.’ Mark 'Resolved with External Information' if the ticket is deflected using the information generated from external sources like the Internet or generative AI.
Actionable Support Requests: Use the KPI to indicate that the skill creates a well-structured, actionable ticket. Specify the number of support minutes that can be saved by creating an actionable support request through Skill. The default value is set to 5 minutes.
Automated Resolutions: The KPI indicates that the skill resolves user issues using an automated service. Specify the number of support minutes that can be saved by the execution of the automated service, skill, or job by executing the Skill.
Ineffective Best Response: This is a Luma Knowledge KPI. The KPI indicates that the Knowledge Articles returned in the result set are incorrect or irrelevant to the user’s request.
Knowledge Gap: This is a Luma Knowledge KPI. The KPI indicates that Knowledge articles are unavailable for the user’s request and the phrase should be marked as a Gap in Luma Knowledge.
Knowledge Feedback: The Luma Knowledge KPI is used to record feedback on a Knowledge Article or a FAQ presented to the end-user. Select the type of article , and provide the Artifact ID and Feedback (Helpful/Not Helpful).
Skill Gap: This is a Luma VA Skill kpi. If the users response is negative during the conversation, using this kpi one can identify the cases where skill training or new skills are required.
Info |
---|
|
...
Drag and drop Capture Feedback on the canvas.
On the properties panel, select the type of feedback in the Feedback Prompt
For Text type:
Add the feedback question specific to the skill in the Message field.
For Quick Replies:
Add the response questions.
You may add a follow-up action or skill in Payload to automatically trigger an action based on the feedback response selected by the end user.
Click on the tag icon on the option and add the required action or skill in the ‘Value.’
Add a Post Feedback Message. The message is triggered once the response to the survey is received.
...
Script
The 'End' block signifies the conclusion of a flow within the skill. When the skill execution reaches the End block, it signals the end of the skill's execution, triggering the Global Survey based on the specified configuration. While the End block is not mandatory, reaching a control without a subsequent node also marks the end of the skill execution and automatically accounts for the Survey, following the global configuration. To disable the survey for a specific path in the skill, you can incorporate the End Block accordingly.
To add an End, follow the below steps:
Drag and drop the End block from the palette onto the canvas.
On the properties panel, select ‘Do not trigger Global Survey’ to ignore triggering the Survey to the skill.
Integrations
In Bot Builder, Integrations enable skill to integrate with 3rd party processes and systems. These tools are used to connect the skill to another system to execute a task. The following are the constructs available in Utilities:
Integration
The 'Integration' feature provides a seamless connection between Luma VA and external systems. Using integrations, Luma VA fulfills user requests by performing specific actions on the integrated system. By incorporating this functionality into the conversation flow, you can trigger integration calls that interact with external applications to execute desired actions or retrieve relevant information. It enhances the capabilities of Luma VA, allowing for dynamic and efficient interactions with external systems to deliver a comprehensive and personalized user experience. For more information on configuring the integration, refer to Integrations.
To add an Integration to your skillScript block empowers skill developers to add custom scripts to their skills, enabling handling complex scenarios such as performing calculations, data manipulations, or implementing other custom logic. It provides flexibility and capability of your skills by allowing you to inject JavaScript directly into your conversation flow. Using scripts, you can perform complex processing and set or clear context attributes.
To use a script in the conversation, follow the below steps:
Drag and drop the Script on the canvas.
On the properties panel, add the script to the script block.
Click on the maximize button on the screen to view the script pop-up.
Info |
---|
Use the following syntax to use existing attributes in the script To refer to the value of a context variables:
To set a context attribute:
To clear attributes:
|
End
The 'End' block signifies the conclusion of a flow within the skill. When the skill execution reaches the End block, it signals the end of the skill's execution, triggering the Global Survey based on the specified configuration. While the End block is not mandatory, reaching a control without a subsequent node also marks the end of the skill execution and automatically accounts for the Survey, following the global configuration. To disable the survey for a specific path in the skill, you can incorporate the End Block accordingly.
To add an End, follow the below steps:
Drag and drop the Integration construct End block from the palette onto the canvas.
On the properties panel, select integration to be added.
Select the Connected App in Integrate with Connected App.
Select Operation to execute
Select the Instance or environment where the operation should be executed.
In order to make specific changes to the operation based on the skill and user experience required for the skill, you may override the operation.
Click on the operation name to open the override screen and make the required changes.
Info |
---|
|
Invoke Automation Workflow
Invoke Automation Workflow executes an Automation Workflow Service as part of your Skills. Automation Workflows allow Administrators or Skill developers to automate tasks on remote services, servers, applications, and hardware. Add an Automation Workflow to the Conversation Flow when the Skill needs to execute one of the automated workflow services.
For example, we can enable an AD account using Automation Workflows, which will be triggered when the end-user executes a skill related to it. For more information, refer to Automation in Luma
To add an Automation workflow to your skill, follow the below steps:
Drag and drop the Invoke Automation Workflow construct from the palette onto the canvas.
On the properties panel, select the workflow to be executed as part of the skill.
Provide values to the input parameters required for workflow execution.
Search and Display
'Search and Display' tools empower the skill developers to enhance user interactions within a conversation with custom Knowledge, Catalog, and Skill searches and then seamlessly present the results using Display controls. This flexibility enables skill developers to craft tailored user experiences, dynamically responding to user actions and inputs.
The following are the constructs available under 'Search and Display':
Search Knowledge
Utilize the 'Search Knowledge' to search Knowledge Articles within your linked Luma Knowledge Tenant. You may add 'Search Knowledge' into your skill to find relevant articles at any point during execution using an article's ID or search phrases. Search can be refined by adding additional keyphrases or specifying the search domain."
Search Knowledge construct eliminates configuring integration with the Luma Knowledge tenant. Luma VA and Luma Knowledge tenants are automatically associated with each other. 'Search Knowledge looks for articles directly in the associated Luma Knowledge system. The Knowledge articles in the results can be accessed using the Knowledge Context variables. For more information, refer to Use Variables in Skills.
Follow the below steps to add Search Knowledge to your skill:
Drag and drop the Search Knowledge construct from the palette onto the canvas.
On the properties panel, select the search methods:
Metadata - To search for Knowledge Articles using a phrase. You could also supply additional context for the search by providing metadata,
Article ID - To search for a specific Knowledge article using a Knowledge Article ID.
Now, based on the selected search method, provide the search filters:
For the ‘Metadata’ Method, you may provide the following:
Search Query: Provide the search phrase to search for Knowledge. By default, the user’s initial request (available in context variable @{conv.skillPhrase}) is assigned to the field. You could set the field to a static value or another attribute with a text value.
Domain: Domain is the first level of categorization applicable to the Knowledge Artifact. In Luma Knowledge, all Knowledge Articles are categorized under domains and usually refer to the department or functional division the article is related. For example, HR, IT, Network, etc. These domains must be available in the Knowledge graph of your tenant
Topics: Information on products, services, projects, or sub-teams related to the article. For example, Microsoft, Asset Management, etc.
Info |
---|
|
...
Search Catalog
'Search Catalog' is used to search Service Catalogs within your Luma Knowledge Tenant. Add 'Search Catalog' into your skill to seamlessly search for catalogs during its execution, using a search query or a specific catalog ID. This eliminates the necessity of configuring integrations with the Luma Knowledge tenant, enabling Luma to directly access catalogs within the associated Luma Knowledge system. The Catalogs in results can be accessed using the Catalog Context variables. For more information, refer to Use Variables in Skills.
Follow the below steps to add Search Catalog to your skill:
Drag and drop the Search Knowledge construct from the palette onto the canvas.
On the properties panel, select the search methods:
Search Phrase or Keyword - To search for Service Catalogs using a phrase. You could also supply additional context for the search by providing keywords,
Catalog ID - To search for specific Catalogs using a Catalog ID.
Now, based on the selected search method, provide the search filters:
For the ‘Search Phrase or Keyword’ Method, you may provide the following:
Search Phrases: Provide the search phrase to search for Catalog. By default, the user’s initial request (available in context variable @{conv.skillPhrase}) is assigned to the field. You could set the field to a static value or another attribute with a text value.
Keyword: Any special code or identifier associated with the catalog can help Luma VA search the Service Catalog.
Categories: Categories are used to organize catalogs and usually refer to the type of systems or requests the catalog is related to. These categories must be available in the Category graph of your tenant.
Info |
---|
|
Display Knowledge
Use 'Display Knowledge' to present Knowledge articles to the end-user during your skill's conversation flow. This construct automatically uses the Knowledge Context variables (updated by initial search or Search Knowledge construct) for article display and can even navigate the user through identified Topics and sub topics when ambiguity arises in the results.
With 'Display Knowledge,' you can customize when Knowledge articles, whether retrieved from Luma's initial search or custom queries using 'Search Knowledge,' should be presented. Additionally, you can define the number of articles and the messages displayed to the user along with the Knowledge content.
Follow the below steps to add ‘Display Knowledge’ to your Skill:
Info |
---|
All the necessary configurations and message are defined out-of -the-box. The messages and card definition are defined in Presentation templates. You could use the OOTB configurations or customise as required. |
Add Display Knowledge to the Conversation flow.
On the Properties panel, Select 'Limit number of Artifacts', if you wish to restrict the number of articles to be displayed. Next, add the 'Maximum Artifacts to be displayed'.
You can now customize the messages to be displayed with the Topic Navigation and the list of Knowledge Articles.
The messages and the definition of the card with Knowledge Article details are part of the Presentation Template. For more details refer to Presentation Templates.
You could use the default configuration or click on Customise to edit the messages.
The customized messages are local to the skill; any changes to the presentation template do not update the change.
Click on Discard to cancel any changes made to the presentation messages.
...
Info |
---|
On the canvas, you must define two possible paths for your skill:
|
Display Precise Answer
"Display Precise Answer" is designed to swiftly present users with accurate responses to their queries, eliminating the need to read through entire knowledge articles. A 'Precise Answer' is provided when Luma confidently resolves the user's query, ensuring an efficient and user-friendly experience. The construct automatically uses the Knowledge Context variables (updated by initial search or Search Knowledge construct) for information display.
Follow the below steps to add ‘Display Precise Answer’ to your Skill:
Add Display Precise Answer to the Conversation flow.
On the properties panel, select the checkbox 'Select View Articles…' to provide an option to view the article along with the precise answer.
Provide the label for the article view option.
Display Catalog
Use 'Display Catalog' to present Service Catalogs to the end-user during your skill's conversation flow. This construct automatically uses the Catalog Context variables (updated by initial search or Search Catalog construct) for catalog display and can even navigate the user through identified categories and Subcategories when ambiguity arises in the results.
With 'Display Catalogs,' you can customize when Catalogs, whether retrieved from Luma's initial search or custom queries using 'Search Catalog,' should be presented. Additionally, you can define the number of catalogs and the messages displayed to the user along with the search results.
Follow the below steps to add ‘Display Catalog’ to your Skill:
Info |
---|
All the necessary configurations and message are defined out-of -the-box. The messages and card definition are defined in Presentation templates. You could use the OOTB configurations or customise as required. |
Add Display Catalog to the Conversation flow.
On the Properties panel, Select 'Limit number of Catalogs', if you wish to restrict the number of articles to be displayed. Next, add the 'Maximum Catalogs to be displayed'.
Next, customize the messages to be displayed with the Category Navigation and the list of Catalogs.
The messages and the definition of the card with catalog details are part of the Presentation Template. For more details refer to Presentation Templates.
You could use the default configuration or click on Customise to edit the messages.
The customized messages are local to the skill; any changes to the presentation template do not update the change.
Click on Discard to cancel any changes made to the presentation messages.
...
On the canvas, you must define two possible paths for your skill:
...
The Default path indicates the next steps that the skill should take after catalog are presented to the user (with or without guided navigation). Define the default path to indicate what should happen after articles are displayed to the user.
Display Skill
Display Skill is used to display the skills to the end-user. Add the construct to the skill’s conversation flow whenever you want the Skills to be displayed. Display Skill automatically uses the Skill-related Context variables to display the Skills. Using 'Display Skills,' you can specify when the Skills found during the initial search by Luma should be displayed. You can also define the messages displayed to the user when presenting the Skills.
Follow the below steps to add ‘Display Skills’ to your Skill:
Add Display Skill to the Conversation flow.
On the properties panel, you can customize the messages to be displayed with the list of Skills.
The messages and the definition of the card with skill details are part of the Presentation Template. For more details refer to Presentation Templates.
You could use the default configuration or click on Customise to edit the messages.
The customized messages are local to the skill; any changes to the presentation template do not update the change.
Click on Discard to cancel any changes made to the presentation messages.
‘Do not trigger Global Survey’ to ignore triggering the Survey to the skill.
Integrations
In Bot Builder, Integrations enable skill to integrate with 3rd party processes and systems. These tools are used to connect the skill to another system to execute a task. The following are the constructs available in Utilities:
Integration
The 'Integration' feature provides a seamless connection between Luma VA and external systems. Using integrations, Luma VA fulfills user requests by performing specific actions on the integrated system. By incorporating this functionality into the conversation flow, you can trigger integration calls that interact with external applications to execute desired actions or retrieve relevant information. It enhances the capabilities of Luma VA, allowing for dynamic and efficient interactions with external systems to deliver a comprehensive and personalized user experience. For more information on configuring the integration, refer to Integrations.
To add an Integration to your skill, follow the below steps:
Drag and drop the Integration construct from the palette onto the canvas.
On the properties panel, select integration to be added.
Select the Connected App in Integrate with Connected App.
Select Operation to execute
Select the Instance or environment where the operation should be executed.
In order to make specific changes to the operation based on the skill and user experience required for the skill, you may override the operation.
Click on the operation name to open the override screen and make the required changes.
Info |
---|
|
Invoke Automation Workflow
Invoke Automation Workflow executes an Automation Workflow Service as part of your Skills. Automation Workflows allow Administrators or Skill developers to automate tasks on remote services, servers, applications, and hardware. Add an Automation Workflow to the Conversation Flow when the Skill needs to execute one of the automated workflow services.
For example, we can enable an AD account using Automation Workflows, which will be triggered when the end-user executes a skill related to it. For more information, refer to Automation in Luma
To add an Automation workflow to your skill, follow the below steps:
Drag and drop the Invoke Automation Workflow construct from the palette onto the canvas.
On the properties panel, select the workflow to be executed as part of the skill.
Provide values to the input parameters required for workflow execution.
Skills
Skills tools empower the skill developers to enhance user interactions within a conversation with custom skill searches and then seamlessly present the results using Display controls. This flexibility enables skill developers to craft tailored user experiences, dynamically responding to user actions and inputs.
The following are the constructs available under 'Skill':
Search Skill
Utilize the ‘Search Skill' to find relevant services at any point during a conversation using search phrases. ‘Search Skill’ looks for the skills that match the provided phrase. The identified results can be accessed using the 'matchedSkill’ Context variables. For more information, refer to Use Variables in Skills.
Follow the below steps to add Search Skills to your skill:
Drag and drop the Search Skills construct from the palette onto the canvas.
On the properties panel, add the search phrase.
By default, the initial user request is added as the user phrase.
Select ‘Exclude Previously Presented Skills’ to exclude skills already presented in the conversation to avoid duplicates and streamline the result presentation. This ensures duplicate skills are not suggested when the system tries to search for matching skills within the same conversation.
Info |
---|
|
...
Display Skill
Display Skill is used to display the skills to the end-user. Add the construct to the skill’s conversation flow whenever you want the Skills to be displayed. Display Skill automatically uses the Skill-related Context variables to display the Skills. Using 'Display Skills,' you can specify when the Skills found during the initial search by Luma should be displayed. You can also define the messages displayed to the user when presenting the Skills.
Follow the below steps to add ‘Display Skills’ to your Skill:
Add Display Skill to the Conversation flow.
On the properties panel, you can customize the messages to be displayed with the list of Skills.
The messages and the definition of the card with skill details are part of the Presentation Template. For more details refer to Presentation Templates.
You could use the default configuration or click on Customise to edit the messages.
The customized messages are local to the skill; any changes to the presentation template do not update the change.
Click on Discard to cancel any changes made to the presentation messages.
Trigger Skill
Trigger Skill construct is used for dynamic branching in user conversation. With this construct, you can redirect users to another skill based on specific conditions or user actions. The Trigger Skill construct empowers the skill developer to create intricate decision paths, providing personalized pathways for users based on their unique needs. This construct indicates the end of the current skill and branches the conversation to another skill.
Info |
---|
Once the conversation flow is routed to the next skill, the control does not come back to the current skill |
To add Trigger Skill, follow the below steps:
Drag and drop the Trigger Skill construct from the palette onto the canvas.
On the properties panel, select the skill to branch to.
Select from the skill list.
Click on the view button to view the details of the branching skill in a new tab.
Suggest Skills
The Suggest Skills conversation step is used when you want to guide the end-user to relevant skills after completing the current skill. You can configure an exclusive list of Skills that should be recommended to the end-user once the skill is executed or reuse the configuration already configured for a System Skill/suggest Skill category. The display format can be Cards or Quick replies.
To add Suggest Skills to your skill, follow the below steps:
Drag and drop Suggest Skills on the canvas
On the properties panel, select Configuring the skills to be suggested.
To configure a custom list of skills:
Select Custom.
Choose the desired Display Format, Cards, or Quick Replies.
Type in the Message you wish the user to view.
Under Select Skill, type in the skill name you want to display as a suggested skill.
A minimum of one skill is to be selected.
To reuse an existing configuration:
Select Suggest Skills.
Select the Suggest Skill Configuration to be displayed to the user. For more information, refer to Customize System Skills behavior.
Click on the pop-out icon to view the Suggest Skill configuration in a new tab.
Info |
---|
|
Execute Subflow
Execute Subflow construct is used for dynamic execute a subflow as part of a conversation. With this construct, you can execute a subflow based on specific conditions or user actions. The construct empowers the skill developer to execute actions based on user needs and continue with user conversation (skill). This construct branches to a sub-flow, executes the steps, and returns to the source skill to execute the next steps.
Info |
---|
If the conversation flow is routed to the next skill from the subflow, the control does not come back to the original skill. |
To add Execute Subflow, follow the below steps:
Drag and drop the construct from the palette onto the canvas.
On the properties panel, select the subflow to execute.
Select from the subflow list.
Click on the view button to view the details of the sub-flow in a new tab.
Knowledge
Knowledge tools empower the skill developers to enhance user interactions within a conversation with custom Knowledge searches and then seamlessly present the results using Display controls. This flexibility enables skill developers to craft tailored user experiences, dynamically responding to user actions and inputs.
The following are the constructs available under 'Knowledge':
Search Knowledge
Utilize the 'Search Knowledge' to search Knowledge Articles within your linked Luma Knowledge Tenant. You may add 'Search Knowledge' into your skill to find relevant articles during execution using an article's ID or search phrases. Search can be refined by adding keyphrases or specifying the search domain."
Search Knowledge construct eliminates configuring integration with the Luma Knowledge tenant. Luma VA and Luma Knowledge tenants are automatically associated with each other. 'Search Knowledge looks for articles directly in the associated Luma Knowledge system. The Knowledge Context variables can access the Knowledge articles in the results. For more information, refer to Use Variables in Skills.
Follow the below steps to add Search Knowledge to your skill:
Drag and drop the Search Knowledge construct from the palette onto the canvas.
On the properties panel, select the search methods:
Metadata - To search for Knowledge Articles using a phrase. You could also supply additional context for the search by providing metadata,
Article ID - To search for a specific Knowledge article using a Knowledge Article ID.
Now, based on the selected search method, provide the search filters:
For the ‘Metadata’ Method, you may provide the following:
Search Query: Provide the search phrase to search for Knowledge. The user’s initial request (available in context variable @{conv.skillPhrase}) is assigned to the field by default. You could set the field to a static value or another attribute with a text value.
Domain: Domain is the first level of categorization applicable to the Knowledge Artifact. In Luma Knowledge, all Knowledge Articles are categorized under domains and usually refer to the department or functional division the article is related. For example, HR, IT, Network, etc. These domains must be available in the Knowledge graph of your tenant
Topics: Information on products, services, projects, or sub-teams related to the article. For example, Microsoft, Asset Management, etc.
Select ‘Exclude Previously Presented Articles’ to exclude articles already presented in the conversation to avoid duplicates and streamline the result presentation. This ensures duplicate articles are not displayed when the system tries to search for Knowledge within the same conversation.
Include All Matched Articles - select this option to Include matching articles in the search results along with the precise answer.
Info |
---|
|
...
Display Knowledge
Use 'Display Knowledge' to present Knowledge articles to the end-user during your skill's conversation flow. This construct automatically uses the Knowledge Context variables (updated by initial search or Search Knowledge construct) for article display and can even navigate the user through identified Topics and sub topics when ambiguity arises in the results.
With 'Display Knowledge,' you can customize when Knowledge articles, whether retrieved from Luma's initial search or custom queries using 'Search Knowledge,' should be presented. Additionally, you can define the number of articles and the messages displayed to the user along with the Knowledge content.
Follow the below steps to add ‘Display Knowledge’ to your Skill:
Info |
---|
All the necessary configurations and message are defined out-of -the-box. The messages and card definition are defined in Presentation templates. You could use the OOTB configurations or customise as required. |
Add Display Knowledge to the Conversation flow.
On the Properties panel, Select 'Limit number of Artifacts', if you wish to restrict the number of articles to be displayed. Next, add the 'Maximum Artifacts to be displayed'.
You can now customize the messages to be displayed with the Topic Navigation and the list of Knowledge Articles.
The messages and the definition of the card with Knowledge Article details are part of the Presentation Template. For more details refer to Presentation Templates.
You could use the default configuration or click on Customise to edit the messages.
The customized messages are local to the skill; any changes to the presentation template do not update the change.
Click on Discard to cancel any changes made to the presentation messages.
...
Info |
---|
On the canvas, you must define two possible paths for your skill:
Source and Parent Knowledge Article information is displayed with each Knowledge article in the results |
Display Precise Answer
"Display Precise Answer" is designed to swiftly present users with accurate responses to their queries, eliminating the need to read through entire knowledge articles. A 'Precise Answer' is provided when Luma confidently resolves the user's query, ensuring an efficient and user-friendly experience. The construct automatically uses the Knowledge Context variables (updated by initial search or Search Knowledge construct) for information display.
Follow the below steps to add ‘Display Precise Answer’ to your Skill:
Add Display Precise Answer to the Conversation flow.
On the properties panel, select the checkbox 'Select View Articles…' to provide an option to view the article along with the precise answer.
Provide the label for the article view option.
Info |
---|
Source and Parent Knowledge Article information is displayed with each Knowledge article in the results. Source articles will now open in the web browser if the corresponding article is an external document (has external redirection). |
Create Artifact
Use the Create Artifact step to generate a knowledge article based on the information extracted during an earlier conversation step, enhancing the accessibility of relevant information. The Create Artifact conversation step allows the skill developer to create a Knowledge Artifact in the associated Luma Knowledge Tenant. You may add 'Create Artifact' into your skill when you wish to save some knowledge to be available for later access. The conversation step adds an article in Luma Knowledge so that is available to users in later searches.
Create Artifact construct eliminates configuring integration with the Luma Knowledge tenant. Luma VA and Luma Knowledge tenants are automatically associated with each other. Luma can directly connect to the associated tenant and create the artifact.
Follow the below steps to add ‘Create artifact’ to your Skill:
Drag and drop the ‘Create artifact’ construct on the canvas.
On the properties panel, provide an Artifact Name.
Next, add the text that should be used to create the artifact. You can refer to the value saved in an attribute.
Select the Domain under which the artifact should be created.
Catalog
Catalog tools empower the skill developers to enhance user interactions within a conversation with custom Catalog searches and then seamlessly present the results using Display controls. This flexibility enables skill developers to craft tailored user experiences, dynamically responding to user actions and inputs.
The following are the constructs available under 'Catalog':
Search Catalog
'Search Catalog' searches Service Catalogs within your Luma Knowledge Tenant. Add 'Search Catalog' into your skill to seamlessly search for catalogs during its execution, using a search query or a specific catalog ID. This eliminates the necessity of configuring integrations with the Luma Knowledge tenant, enabling Luma to access catalogs within the associated Luma Knowledge system directly. The Catalogs in results can be accessed using the Catalog Context variables. For more information, refer to Use Variables in Skills.
Follow the below steps to add Search Catalog to your skill:
Drag and drop the Search Knowledge construct from the palette onto the canvas.
On the properties panel, select the search methods:
Search Phrase or Keyword - To search for Service Catalogs using a phrase. You could also supply additional context for the search by providing keywords,
Catalog ID - To search for specific Catalogs using a Catalog ID.
Now, based on the selected search method, provide the search filters:
For the ‘Search Phrase or Keyword’ Method, you may provide the following:
Search Phrases: Provide the search phrase to search for Catalog. The user’s initial request (available in context variable @{conv.skillPhrase}) is assigned to the field by default. You could set the field to a static value or another attribute with a text value.
Keyword: Any special code or identifier associated with the catalog can help Luma VA search the Service Catalog.
Categories: Categories are used to organize catalogs and usually refer to the type of systems or requests the catalog is related to. These categories must be available in the Category graph of your tenant.
Select ‘Exclude Previously Presented Catalog’ to exclude catalogs already presented in the conversation to avoid duplicates and streamline the result presentation. This ensures duplicate catalogs are not displayed when the user retries sear
Info |
---|
|
Display Catalog
Use 'Display Catalog' to present Service Catalogs to the end-user during your skill's conversation flow. This construct automatically uses the Catalog Context variables (updated by initial search or Search Catalog construct) for catalog display and can even navigate the user through identified categories and Subcategories when ambiguity arises in the results.
With 'Display Catalogs,' you can customize when Catalogs, whether retrieved from Luma's initial search or custom queries using 'Search Catalog,' should be presented. Additionally, you can define the number of catalogs and the messages displayed to the user along with the search results.
Follow the below steps to add ‘Display Catalog’ to your Skill:
Info |
---|
All the necessary configurations and message are defined out-of -the-box. The messages and card definition are defined in Presentation templates. You could use the OOTB configurations or customise as required. |
Add Display Catalog to the Conversation flow.
On the Properties panel, Select 'Limit number of Catalogs', if you wish to restrict the number of articles to be displayed. Next, add the 'Maximum Catalogs to be displayed'.
Next, customize the messages to be displayed with the Category Navigation and the list of Catalogs.
The messages and the definition of the card with catalog details are part of the Presentation Template. For more details refer to Presentation Templates.
You could use the default configuration or click on Customise to edit the messages.
The customized messages are local to the skill; any changes to the presentation template do not update the change.
Click on Discard to cancel any changes made to the presentation messages.
...
Info |
---|
On the canvas, you must define two possible paths for your skill:
|
Generative AI
Harnessing the power of Generative AI, skill developers can create dynamic user interactions, creating more contextually aware and conversational skills.
AI Task
The conversation step "AI task" can be used to execute a Generative AI task as part of a skill. Using the step, a skill developer can add Generative AI capabilities to their skill. They can select from Existing tasks such as Summarization or create ad hoc tasks as required in the skill. The construct removes the need to create a 3rd party integration to connect to LLM, skill developers can use Luma AI services to execute generative AI tasks and build context-rich skills.
Follow the below steps to add Generative Task to your skill:
Drag and drop the 'AI Task' conversation step on the skill.
On the properties panel, select Existing to execute the OOTB tasks or Adhoc to add a new request for Generative AI.
For an Existing Task:
Select the Task Category.
Select Sub Category.
Select the required Task.
Note: Only the prompt which have Visible in AI Prompt checked will be available here.
Now click on Test Response to verify if the selected task generates the information required in the skill.
The AI Task Response Validation screen is used toverify the AI task and configurations. Here, you can validate the response of the AI task by providing values to the input parameters of the selected task.
Task Category, Subcategory, and Task section to select the task. The section is populated based on the selection in the Properties panel. You may test and change the task as required.
The Task Description section provides information on the task being executed.
Map Task Input Parameters lists all the input parameters required for the task. You can assign a value or use an attribute to refer to the value available in the attribute.
Now click on Test to verify the response of the AI Task.
When an attribute is used while mapping an input parameter, Assign Test values for each attribute. These values are used to test the task. Add the test values and click Test.
The system executes the task using the test values.
For an Adhoc task, select 'Adhoc Task' in the properties panel.
Add the task details to be executed in the Task Description field. This is a free text field where you can describe the task to be executed using Generative AI.
Now, Click on Test Response.
On the AI Task Response Validation screen, validate the response of the AI task.
Task Description indicates the action to be performed in the step.
Click on Test and validate the response in Test Response. Refine the Task description to ensure it generates the information as required.
Info |
---|
The response is automatically available in AI Task context variables during conversation. Refer to the following context variables generated from the task in your skill. In case of Success, the response is available in @{aitask.response}. For failure, refer to the error code using @{aitask.errorcode}. |
Categorize User Intent
Categorize User Intent is an AI step, used to identify the user's intention and execute suitable actions based on recognized domains and categories, ensuring a smooth and efficient conversational experience.
This process includes the following steps:
Recognition and Categorization of Domains:
Whitelisted Domain: A domain permitted for use, predefined within the whitelist.
Blacklisted Domain: A domain prohibited for use, predefined within the blacklist.
Unclassified or Greylisted Domain: When the domain isn't listed as either whitelisted or blacklisted.
Refer to Business Domain Management for more details.
Categorization of Requests within Permitted Domains:
Category: Information Request
Type: Seeking Knowledge when the request is for Knowledge.
Type: Seeking Data when the request is to access ticket data or a data point.
Category: Service Request
Type: Problem when the user reports an issue.
Type: Change when the user requests a change or replacement
Type: General when the user requests a general service request.
Category: Smalltalk -When the requested phrase of not a request but a general phrase.
Category: ToBeDetermined - When the users cannot be categorized.
Taking one of the possible Output Paths based on Categories Identified by Luma:
Data Request: Category is Information Request, and Type is Seeking Data.
Problem: Category is Service Request, and Type is Problem.
Ambiguous: The category is ToBeDetermined or the phrase's meaning is unclear.
Disabled: Triggered when Generative AI is disabled.
Failure: Triggered in case of system failure.
Default: This applies to all other cases not explicitly mentioned in the paths above.
To use the step, follow the below steps:
Drag and drop the 'Categorize User Intent' conversation step on the skill.
On the properties panel, add the phrase to be categorized. By default, the user’s initial search is sent to the step. You can change this to any phrase during the skill.
AI NLQ
AI NLQ (Natural Language Query) is an AI step, that analyzes the user's input to generate a filter query, which can fetch relevant tickets from the underlying ITSM system based on the user's intention. The step uses Natural Language programming to determine if the user's request pertains to tickets rather than general data inquiries and generates the filter criteria to get tickets.
Info |
---|
NLQ step uses Luma AI Services to generate the filter query. As part of this release, the AI prompt is specific to Changegear. |
Based on the phrase, NLQ does the following:
Classifies if the request pertains to tickets. Based on this classification, the system takes one of the following output paths.
Query when a ticket type is identified, and the system can generate a filter query.
No Query when a ticket type is identified, but the system cannot generate a filter query.
Unknown when the system identifies that the request is NOT related to tickets.
Failure if a system failure occurs.
Disabled if Generative AI is disabled for the tenant.
If the requests are based on Tickets (Query Path), the step identifies the following:
Type: The Ticket type the user is talking about. Change gear tickets are classified as Service Request, Incident Request, Problem Request, Change Request, or Unknown.
Implicit Reference Used: Set to True if the system finds an ambiguity in identifying the ticket type. In this case, the default ticket type is used as the ticket Type.
Query: The filter query string for the ITSM ticket GET call, based on the identified Type
Info |
---|
|
To use the step, follow the below steps:
Drag and drop the 'AI NLQ' conversation step on the skill.
On the properties panel,
Select The Target Applications.
Add the search phrase.
Provide the default ticket type to be used to ‘Interpret Term Ticket As’
By default, the user-specific parameters are passed based on the Target Application.