AI Assistant for QPR ProcessAnalyzer

From QPR ProcessAnalyzer Wiki
Jump to navigation Jump to search

AI Assistant is generative AI based chat dialog where users can use QPR ProcessAnalyzer with natural language style of user interface. AI Assistant can explain charts and analysis, and create filters based on user description. AI can also answer general question about the analyzed model, but it requires providing the training material beforehand.

Take AI Assistant into Use

In QPR Cloud, AI Assistant is not enabled by default. To take the AI Assistant into use, please sent a request to customercare@qpr.com and the AI Assistant will be enabled for your environment.

For customers using an on-premise system, to start using AI Assistant the system administrator need to configure the following:

  1. Create an OpenAI account in https://openai.com, and create an OpenAI API key.
  2. In the PA_CONFIGURATION table in QPR ProcessAnalyzer database, define your OpenAI API key in the OpenAIAPIKey field.
  3. Optionally, define which large language model to use in the OpenAIDefaultModelName field.

You can also fine-tune the LLM, for it better suit to your use. For example, the LLM can be fine-tuned with background information regarding the analyzed process and operations. More information about fine-tuning OpenAI LLM's: https://platform.openai.com/docs/guides/fine-tuning.

Available AI Functionality

The AI Assistant provides the following kind of assistance to users:

  • AI Assistant can answer questions about the analyzed process. The answer are based on the information that is trained to the LLM. There are following ways to train the LLM: provide information in the model's description field, or fine-tuning.
  • AI Assistant can create filters and root causes criteria based on user description. For example, you can ask "Show cases that have Delivery Created." (assuming that the model has Delivery Created events). You can also ask: "Filter cases where company code is Germany" (assuming that the model has Company Code case attribute and it has value Germany).
  • AI Assistant can explain chart in the dashboard. To ask for an explanation, select the chart and click the Explain the selected chart button. The response has a general explanation what this analysis or visualization is showing, and also it makes finding and observations regarding the the shown data.

Using AI Assistant

The chat pane is used to interact with the AI Assistant which is available for all users in dashboards. Discussions are stored permanently, so the chat history in a dashboard is accessible to the user even after the user logs out and logs back in. There is a separate discussion in each dashboard. Discussions are also user specific, so users cannot see each other's discussions.

When a dashboard is removed, the related AI Assistant chat discussion is also removed. Permissions for the AI Assistant chat discussions are identical to those for the related dashboard, meaning if dashboard access is revoked, access to the chat discussion is also revoked.

Opening and Closing AI Assistant

When in a dashboard, AI Assistant can be opened by clicking the dots menu icon in the top right corner and selecting AI Assistant from the menu. This will open the AI Assistant chat pane to the right side of the dashboard. AI Assistant can be closed by clicking the X icon on in the header of the chat pane.

Deleting Messages

Chat contents can be deleted by hovering over a sent chat message and clicking the trashcan icon. All chat messages starting from that message are then deleted. Also the entire chat discussion can be deleted by clicking the trashcan in the header of the chat pane.

Keeping the chat history is useful when you want to continue a previous discussion because AI Assistants remembers the visible chat history when answering to subsequent messages. On the other hand, if you don't want to provide the chat history as a context when continuing the discussion, the chat can be deleted (either partly or entirely).

Regenerating Answer

To regenerate the last message from the AI Assistant, hover over the message and click the round arrow icon. You can use the regeneration to provide a different answer from the AI Assistant in case you are not satisfied with the previous answer. Alternatively, you can elaborate you request or question so that the AI Assistant is able to provide a better response.

What Data Is Sent to OpenAI

AI Assistant is based on the large language model (LLM) offered by OpenAI through their API. When the AI Assistant is used, the following data is sent to the OpenAI API as a prompt to the LLM:

  • Model name
  • Project name
  • Case attribute names
  • Event attribute names
  • Event type names
  • Model description field (available in Model Properties dialog)

When asked to explain a chart, the following information is sent:

  • Chart settings (shown in chart settings Advanced tab)
  • Data the chart is visualizing

Additional information:

  • AI Assistant does not make additional queries to the model data, but it only sees information that is shown to the user in the dashboard.
  • AI Assistant uses the OpenAI API for which the OpenAI's Business Terms are applied, available in https://openai.com/policies/business-terms.
  • OpenAI does not use the customer data to train LLM's.
  • All data is encryption at rest (AES-256) and in transit (TLS 1.2+).
  • More information about privacy for OpenAI's services: https://openai.com/enterprise-privacy/.