Difference between revisions of "Template:AI"

From SmartWiki
Jump to: navigation, search
(Created page with "=Overview= The =Configuration - Essentials= ==SubSection== ==SubSection== =Configuration - Advanced= ==SubSection== ==SubSection== =Settings Explained= ==General Tab==...")
 
m (Azure AI)
 
(103 intermediate revisions by 3 users not shown)
Line 1: Line 1:
 +
The SmartSimple Cloud '''+AI''' integration gives you the ability to utilize large language models (LLM) from within our business process automation platform. LLMs may be utilized to improve productivity, processes, and outcomes. This article will walk-through currently available AI features and the configuration essentials of interfacing with the AI through the Variable Processor.
 +
 
=Overview=
 
=Overview=
The
+
There are a number of AI features that can be implemented within SmartSimple including:
  
=Configuration - Essentials=
+
* '''[[+AI Directive]]:''' A multi-faceted feature that be used in conjunction with natural language, scripts and the variable processor to perform many time saving tasks such as analyzing text and automatically populating custom fields, summarizing and translating text, populating custom fields with internet-extracted data, converting text into other formats, comparing application requests with program objectives and providing a score, and much more.
==SubSection==
+
* '''[[+AI Insights]]:''' Create your own custom AI model for data analysis and reporting across multiple records within a UTA. Trained '''+AI Insight''' models can quickly provide answers that involve aggregation, summarization, and prediction without the need to spend time constructing list view filters and reports. Alternatively create a custom model at the organization level, available in your system header. '''+AI Insight''' models at the Organization level contain uploaded training data.
 +
* '''[[+AI Assistant]]:''' Execute actions at the record level such as updating statuses, modifying field values, or creating new fields, activities, and associations. Instead of finding a field and changing a value, use the hands-free voice interface to update the desired field.
 +
* '''+AI Workflow''': Streamline your workflow process by creating workflow tasks from natural language instructions with AI assistance, eliminating the need for manual task creation and connection.
 +
* '''[[+AI Vision]]:''' Upload an image and have the AI answer specific questions regarding the image contents without having to open and examine the image yourself.
 +
* '''[[Work with +AI]]:''' Interact with the AI at the record level in a conversational manner. Users have the option to use pre-made templates and prompt libraries to expedite common processes.
 +
* '''[[+AI Transcription]]:''' Generate text transcriptions of audio and visual media.
  
 +
To learn more, read our article on [[Enabling +AI Within Your System|enabling +AI within your system]].
  
==SubSection==
+
=Configuration - Essentials=
 +
==Setting up +AI Integration==
 +
To get started setting up +AI integration, be sure to [[Enabling +AI Within Your System|read our page on enabling +AI within the system]].
  
 +
==Using +AI with the Variable Processor==
 +
Once '''+AI''' integration has been set up, the automation mode can be used in various areas of the system. The existing SmartSimple variable processor has been modified in order to allow you to interface with the third-party AI vendor. To familiarize yourself with the syntax and possible statements, you can test the syntax using the '''Variable Syntax Helper''' by opening a object record and going to '''Tools''' > '''Configuration Mode''' > '''Variable Syntax Helper'''.
  
=Configuration - Advanced=
 
==SubSection==
 
  
==SubSection==
+
'''Note''': In the @ai() function call, there must be no spaces between parameters and commas.
  
=Settings Explained=
+
===OpenAI===
==General Tab==
+
====Syntax====
The following settings are available on the '''General''' tab:
+
The syntax used for prompts in web page views and workflows is:
  
{| class="wikitable"
+
[[File:AI-Syntax-Format-New.png|none|800px]]
|-
 
!|Setting
 
!|Description
 
|-
 
||'''Language'''
 
||Each login page must have a single language which you can select from the dropdown.
 
|-
 
||'''Is Default Login Page'''
 
||By default, when a user goes to your system's URL without the Language ID, they will be directed to the '''English US''' language login page. If you want users to go to a different language login page by default, toggle this setting on for the login page with your desired language. Note: only one login page can be set as the default.
 
|-
 
||'''Page Layout'''
 
||Leave this setting on '''Default''' unless you specifically need to customize the HTML to your login page as it will ensure you will always have the latest and greatest looking login page. If you choose '''Custom''' you will get a '''Template''' tab where you can modify the underlying HTML of the login page. Note if you opt to go custom, you may need to manually update your login pages to take advantage of improvements or changes in functionality.
 
|-
 
||'''Page Title'''
 
||This is the title your browser displays on it’s title bar or page tab. This text is used to populate the title tag in the HTML of the login page. Typically your organization's name is entered into this field.
 
|-
 
||'''Login Title'''
 
||Text entered here appears above the area where you authenticate. Typically the word "Login" is entered into this field.
 
|-
 
||'''Content Title'''
 
||Text entered here appears above the custom message on the right area of the screen. Typically this is replaced with something like "Welcome to XYZ".
 
|-
 
||'''Content Text'''
 
||Text entered here appears below the content title. Typically this area is used to describe who you are, what you do and what the system is used for. Example: "XYZ group provides grants to non-profits in the USA. Register to gain access to the system and apply for funding."
 
|-
 
||'''Logout Redirect URL'''
 
||This is the page the user gets redirected to once they logout. Enter a URL such as ''https://www.smartsimple.com/'' or leave it blank to have the user redirected back to your system’s login page by default.
 
|}
 
  
===Privacy Policies===
+
These parameters are explained as follows:
This section is only visible if you chose a '''Page Layout''' of '''Default'''.
 
 
 
{| class="wikitable"
 
|-
 
||'''Section'''
 
||Choose to show or hide the '''Privacy Policies''' for your system on the login page only.
 
|-
 
||'''Section Title'''
 
||This input only appears if you are using the '''Default''' page layout with privacy policies on. Typically people enter "Learn more about our".
 
|-
 
||'''Button Label'''
 
||This input only appears if you are using the '''Default''' page layout with '''Privacy Policies''' on. Enter the name you want to give the button that will open your systems policies that you define. Typically people enter "Privacy and Security Policies" for the button text.
 
|}
 
 
 
===Links===
 
This section is typically used for giving people the ability to self-register and gain access to your system.
 
 
 
{| class="wikitable"
 
|-
 
||'''Link Section'''
 
||The '''None''' option provides no links to a signup page and hides this section. Users cannot self-register and must be created and activated in your system via a different methodology, such as an autoloader, importing or manual creation by internal staff.
 
 
 
The '''Use Routing page''' option is best if you have multiple signup pages often for different types of users and organizations. The routing page will display a list of signup pages so the user can be directed to the signup page that is right for them. Learn more about [[Signup_Page#Creating_a_routing_page|routing pages]]
 
 
 
The '''Custom URL''' option is best if you only have one signup page. If you choose this option you will be able to enter a label for the button such as "Register here" as well as the URL to the desired signup page. For the URL use the relative path to your signup page. This way the register button will work on production and backup and any staging servers you may have. Example:
 
 
 
''/s_signup.jsp?token=XVtQC1oGYFFaRhNaXxJaQVBRZEl8GnA%3D''
 
 
 
|-
 
||'''Section Title'''
 
||Text entered here appears above the register buttons. Typically the text entered is "New to the System?".
 
|}
 
 
 
===Page Formatting===
 
The following settings are available on the '''General tab''', '''Page Formatting''' section:
 
 
 
{| class="wikitable"
 
|-
 
!|Setting
 
!|Description
 
|-
 
||'''Background Image'''
 
||The image uploaded will appear behind the content of your login page (in the background). Upload an image in JPG or PNG format with a resolution of 1920 x 1080 or higher but try to optimize the image to keep the file size low.
 
Click the '''Browse''' button which looks like a folder icon to select a file from your computer and click the '''Upload''' button which has an '''upwards arrow '''to upload the image file.
 
|-
 
||'''Background Position'''
 
||Select how the image will render at different resolutions by choosing where to anchor the image vertically and horizontally. For example if you choose '''Top''' and '''Left''' as the position, then the top left area of the background image will always be visible on screen. Anything on the right/bottom of the image may be clipped and not display depending on screen size and aspect ratio of the image and the user's device.
 
|-
 
||'''Background Color'''
 
||Adjust this setting to change the color that will appear over the background image. Enter the desired hexadecimal value here without the # or use the color picker. Example, enter FFFFFF to have a white background. You must enter either 3 or 6 characters if you are manually entering the hexadecimal value.
 
|-
 
||'''Background Opacity'''
 
||Adjust this setting to change the opacity of the background color. For example '''High''' will make the color completely opaque and you will not see the background image. '''Low''' will make the background color completely transparent revealing the background image as uploaded. Something in between '''Low''' and '''High''' will create a translucent layer of color over the background image.
 
|-
 
||'''Panel Color'''
 
||Select the color of the login panel that appears behind the content such as the username and password but in front of the background color and image. 
 
|-
 
||'''Panel Opacity'''
 
||Select the level of opacity for the panel that appears behind the login content such as the username and password. '''Low''' will make the panel transparent, '''High''' will make the panel opaque.
 
|-
 
||'''Font Color'''
 
||Select the color used for all text that appears on the panel. Example '''Content Title, Content Text, Section Title, '' etc. Note you must make sure there is enough contrast between the foreground text and the panel or background image. Typically text is black on a white panel or white on a black panel.
 
|}
 
  
==Routing Page Tab==
+
* '''AI model''': (Optional) The name of the AI model being used by the service. If the service is OpenAI and the model is left unspecified, ChatGPT-4 will be used by default.
The following settings are available on the '''Routing Page''' tab:
+
* '''temperature''': Sets the desired level of randomness of the generated text, where a value of "0" is the most conservative while a value of "9" is the most random.
 +
* '''instruction''': The natural language prompt for the AI. For example, "fix the spelling: how are yu tday?" or "Translate the following into Japanese: hello, world!".
  
 
{| class="wikitable"
 
{| class="wikitable"
 
|-
 
|-
!|Setting
+
!|Example Scenario
!|Description
+
!|Syntax
|-
 
||'''Page URL'''
 
||This area displays the direct link to the routing page and gives you a preview button so you can see how the routing page looks without logging out.
 
 
|-
 
|-
||'''Button Label'''
+
||Ask AI to write an email for a specific user
||The text entered here will be used as the label for the button that will open the '''Routing Page'''. This button is displayed on the login page. Typically you will enter the text "Register".
+
||[[File:AI-Syntax-Prompt-Example-1-New.png|none|800px]]
 
|-
 
|-
||'''Header Title'''
+
||Ask AI to write an email for a specific user using model gpt-4-0163
||The text entered here will appear at the top of the routing page. Typically you will enter something like "Registration Options".
+
||[[File:AI-Syntax-Prompt-Example-New.png|none|800px]]
 
|-
 
|-
||'''Introduction Text'''
+
||Ask AI to fix the spelling of a message
||The text entered here will appear under the title but before the list of signup pages. Typically you will enter something like "I am applying as:".
+
||[[File:AI-Syntax-Prompt-Example-2-New.png|none|800px]]
 
|-
 
|-
||'''Trailing Text'''
+
||Ask the AI to write a grant application summary
||The text entered here will appear under the list of signup pages. Typically you will leave this blank however you may want to add contact information here in case the user needs assistance.
+
||[[File:AI-Syntax-Prompt-Example-3-New.png|none|800px]]
|-
 
||'''Routing Links'''
 
||This dynamic section enables the administrator to add links to their desired signup pages onto the Routing Page.
 
To create a new link, click the '''Add''' button which has a '''+''' icon.
 
 
|}
 
|}
  
Each routing link has the following settings
+
===Azure AI===
 +
Azure AI can be used with the variable processor, custom field creation, and '''[[+AI Directive]]'''. Some '''+AI''' features such as '''[[+AI Assistant]]''' and '''[[+AI Insights]]''' are not supported with Azure AI.
  
{| class="wikitable"
+
====Syntax====
|-
+
When using Azure AI, the syntax used within the variable processor is:
!|Setting
 
!|Description
 
|-
 
||'''Title'''
 
||Text entered here will appear in bold for each link. Typically you would enter a few words like Individual, International Organizations, Domestic Organizations.
 
|-
 
||'''Description'''
 
||Text entered here will appear below the title and is used to clarify what kind of user should click this link. Example "For applicants who are not associated with an organization".
 
|-
 
||'''URL'''
 
||The relative URL to the desired signup page.
 
|}
 
  
==Template Tab==
+
[[File:AI-Syntax-Prompt-Example-6-New.png|none|800px]]
The following settings are available on the '''Template''' tab:
 
  
{| class="wikitable"
+
These parameters are explained as follows:
|-
 
!|Setting
 
!|Description
 
|-
 
||'''Sample Template'''
 
||Clicking this link inserts the HTML, CSS and other code which is used to render the login page. Typically you would only use a custom template if you wanted to add some functionality that is not typically used or you wanted to radically customize the look and structure of the login page.
 
|-
 
||'''Login Page Template'''
 
||You can enter your custom code into this text area or modify the existing content added by clicking the sample template link. Although you can enter your own code here we generally don’t recommend it. If you do add your own code here make sure your code meets accessibility guidelines and make sure it is responsive (works on all devices including mobile).
 
|}
 
 
 
=Alternate Login Page Settings=
 
Settings from Alternate login pages which are typically only used in special circumstances
 
 
 
{| class="wikitable"
 
|-
 
||'''Login Page Name'''
 
||Name of the virtual alias login page
 
|-
 
||'''Description'''
 
||Description of the virtual alias login page that is not exposed to end users.
 
|-
 
||'''Scope Organization'''
 
||Lookup that allows the virtual alias login page to be restricted to users in the selected organization.
 
|-
 
||'''Virtual Folder Name'''
 
||Enter a name which will appear in the login URL and be used to differentiate logins.
 
|-
 
||'''Web Alias'''
 
||Enter the desired alias you want instead of using the instance-defined alias.
 
|-
 
||'''Persistent Cookies'''
 
||Enable or disable persistent cookies. Rather than having to log into your system each time you open your web browser, a "cookie" can be installed on your computer that will automatically authenticate you, allowing you to bypass the login screen and having to re-enter your credentials.
 
|-
 
||'''Attach User Identifier'''
 
||
 
|-
 
||'''Encrypt URL'''
 
||Enable or disable the encryption of the URL
 
|-
 
||'''Logout Redirect URL'''
 
||Enter URL for users to be redirected to upon logout. If left blank users go to the login page on logout.
 
|-
 
||'''Primary Role'''
 
||Select from the available system roles to choose the primary default role that a user will have when they log in through this alternate login page. This function is used to force the user to see a specific Role based portal.
 
|-
 
||'''Login Type'''
 
||Select from the desired options: All Users, Activated Users Only, No Access 
 
|-
 
||'''User Field'''
 
||This is the field that will be used on the login page to uniquely identify the specific user when they log in. This is typically set to '''Email Address'''.
 
|-
 
||'''Password Field'''
 
||This is the field on the login page that will be used for the password.
 
|-
 
||'''Login Error Message'''
 
||This is the error message that will appear on the login page upon a failed login attempt.
 
|-
 
||'''Login Page Content'''
 
||Click the '''Insert Sample Template''' hyperlink to auto-populate the text window with a sample template for a login page. Otherwise, you can insert in your own customized content. Note that the Alternate login page content works differently than primary login pages so you cannot use the same template for both.
 
|}
 
  
[[Category:Interface]]
+
* '''Deployment ID''': (Optional) The deployment ID of the Azure model being used. If the deployment ID is left unspecified, the model configured within the '''Integration Key Management''' settings will be used by default.
 +
* '''temperature''': Sets the desired level of randomness of the generated text, where a value of "0" is the most conservative while a value of "9" is the most random.
 +
* '''instruction''': The natural language prompt for the AI. For example, "fix the spelling: how are yu tday?" or "Translate the following into Japanese: hello, world!".

Latest revision as of 14:41, 9 May 2024

The SmartSimple Cloud +AI integration gives you the ability to utilize large language models (LLM) from within our business process automation platform. LLMs may be utilized to improve productivity, processes, and outcomes. This article will walk-through currently available AI features and the configuration essentials of interfacing with the AI through the Variable Processor.

Overview

There are a number of AI features that can be implemented within SmartSimple including:

  • +AI Directive: A multi-faceted feature that be used in conjunction with natural language, scripts and the variable processor to perform many time saving tasks such as analyzing text and automatically populating custom fields, summarizing and translating text, populating custom fields with internet-extracted data, converting text into other formats, comparing application requests with program objectives and providing a score, and much more.
  • +AI Insights: Create your own custom AI model for data analysis and reporting across multiple records within a UTA. Trained +AI Insight models can quickly provide answers that involve aggregation, summarization, and prediction without the need to spend time constructing list view filters and reports. Alternatively create a custom model at the organization level, available in your system header. +AI Insight models at the Organization level contain uploaded training data.
  • +AI Assistant: Execute actions at the record level such as updating statuses, modifying field values, or creating new fields, activities, and associations. Instead of finding a field and changing a value, use the hands-free voice interface to update the desired field.
  • +AI Workflow: Streamline your workflow process by creating workflow tasks from natural language instructions with AI assistance, eliminating the need for manual task creation and connection.
  • +AI Vision: Upload an image and have the AI answer specific questions regarding the image contents without having to open and examine the image yourself.
  • Work with +AI: Interact with the AI at the record level in a conversational manner. Users have the option to use pre-made templates and prompt libraries to expedite common processes.
  • +AI Transcription: Generate text transcriptions of audio and visual media.

To learn more, read our article on enabling +AI within your system.

Configuration - Essentials

Setting up +AI Integration

To get started setting up +AI integration, be sure to read our page on enabling +AI within the system.

Using +AI with the Variable Processor

Once +AI integration has been set up, the automation mode can be used in various areas of the system. The existing SmartSimple variable processor has been modified in order to allow you to interface with the third-party AI vendor. To familiarize yourself with the syntax and possible statements, you can test the syntax using the Variable Syntax Helper by opening a object record and going to Tools > Configuration Mode > Variable Syntax Helper.


Note: In the @ai() function call, there must be no spaces between parameters and commas.

OpenAI

Syntax

The syntax used for prompts in web page views and workflows is:

AI-Syntax-Format-New.png

These parameters are explained as follows:

  • AI model: (Optional) The name of the AI model being used by the service. If the service is OpenAI and the model is left unspecified, ChatGPT-4 will be used by default.
  • temperature: Sets the desired level of randomness of the generated text, where a value of "0" is the most conservative while a value of "9" is the most random.
  • instruction: The natural language prompt for the AI. For example, "fix the spelling: how are yu tday?" or "Translate the following into Japanese: hello, world!".
Example Scenario Syntax
Ask AI to write an email for a specific user
AI-Syntax-Prompt-Example-1-New.png
Ask AI to write an email for a specific user using model gpt-4-0163
AI-Syntax-Prompt-Example-New.png
Ask AI to fix the spelling of a message
AI-Syntax-Prompt-Example-2-New.png
Ask the AI to write a grant application summary
AI-Syntax-Prompt-Example-3-New.png

Azure AI

Azure AI can be used with the variable processor, custom field creation, and +AI Directive. Some +AI features such as +AI Assistant and +AI Insights are not supported with Azure AI.

Syntax

When using Azure AI, the syntax used within the variable processor is:

AI-Syntax-Prompt-Example-6-New.png

These parameters are explained as follows:

  • Deployment ID: (Optional) The deployment ID of the Azure model being used. If the deployment ID is left unspecified, the model configured within the Integration Key Management settings will be used by default.
  • temperature: Sets the desired level of randomness of the generated text, where a value of "0" is the most conservative while a value of "9" is the most random.
  • instruction: The natural language prompt for the AI. For example, "fix the spelling: how are yu tday?" or "Translate the following into Japanese: hello, world!".