'lumee' Service

enaio® 12.0 »

The 'lumee' service integrates the 'lumee' dashlet. The dashlet allows users to chat with an AI assistant about data in enaio® and collect information.

The following data can be included:

  • Context reference: the data of objects that users select in hit lists or locations.

  • Data reference: the data of all objects of object types that are configured for the AI search in enaio® editor and indexed in the Elasticsearch vector database.
    In this mode, users can also limit the reference to selected objects.

The information references the source documents of the information.

Access to information is managed via the rights system. Users only receive information from objects to which they themselves have access.

Use of the dashlet can be restricted to groups via the configuration.

Configuration

The 'lumee' service is installed via enaio® service-manager.

The configuration is carried out via the lumee-prod.yml configuration file located in the \config directory of enaio® service-manager.

Users with the 'Administrator: Configure entire system' system role can customize and save prompt settings in the dashlet.

An AI provider and the specific models are integrated into the project via the lumee-prod.yml configuration file.

Access Rights

All users have access to the dashlet by default. Access can be restricted to users in groups that you specify in the lumee-prod.yml file:

lumee:
  allowedGroups: GROUP1,GROUP2

Users who do not have access rights will see a corresponding message in the 'lumee' dashlet in enaio® client and enaio® webclient.

For enaio® webclient, the dashlet can only be shown for specified users and groups.

Data Reference and Context Reference

By default, the context reference is enabled in the lumee-prod.yml file:

lumee:
  useVectorStore: false

To enable the data reference, change the value of the useVectorStore parameter to true.

Elasticsearch must be integrated for data access and the indexing configuration must be available.

After changing the parameter and restarting the 'lumee' service, the vector database is created. Newly created objects are then indexed automatically. Existing data may have to be re-indexed.

No vector database is required for the context reference and no configuration of the indexing.

Data Reference: Integration of Elasticsearch

Elasticsearch is integrated into enaio® as a full-text database and is also integrated into the same instance as a vector database for data reference. Integration is carried out via the lumee-prod.yml configuration file.

By default, the data for the login is taken from the application-es.yml configuration file.

spring:
  elasticsearch:
    uris: ${elasticsearch.hosts:http://localhost:8041}
    username: ${elasticsearch.user:elastic}
    password: ${elasticsearch.pwd}

The connection to Elasticsearch may need to be customized.

Integrating an AI Provider

An AI provider and the specific models are integrated into the project via the lumee-prod.yml configuration file located in the \config directory of enaio® service-manager.

AI Provider

The AI provider that is integrated must support the OpenAI API specification.

Enter the URL for the connection to the AI provider using the following parameter:

spring:ai:openai:base-url

The structure of the URL depends on the provider.

Examples:

  • Google Gemini: https://generativelanguage.googleapis.com/v1beta/openai

  • Ollama: http://ollama.mydomain.com:11434

Data Reference: Embedding Model

The documents must be transferred to the AI provider for indexing. Please note this with regard to data protection, data security, and data consumption.

You specify the embedding model using the following parameter:

spring:ai:openai:embedding:options:model

The dimensionality of the vectors is also specified for embedding. The values are specific to the model. The default values are: 768, 1538, 3072.

Parameters:

spring:ai:openai:embedding:options:dimensions

Higher values lead to a greater amount of memory required in the vector database but to more accurate answers.

The value 3072 results in up to double the amount of memory required for the indexed object types.

If the embedding model or the dimensionality of the vectors is modified, reindexing is necessary.

Indexing for Data Reference

Newly created objects of object types with the Indexing for AI search property are indexed automatically.

Existing objects need to be re-indexed.

Endpoint of the 'lumee' service: /api/index/batch/{typeid}/index

The object type to be indexed is specified via the object type ID.

No indexing is required for the context reference.

Chat Models

Multiple chat models can be configured for generating responses. The model can then be selected in the dashlet. This makes it easy to compare the results of different chat models when testing models.

Parameters:

modelist:

Example:

modellist:
    - llama3.2
    - mistral-nemo

One of the models is preselected as the default for the user.

Parameters:

spring:ai:openai:chat:options:model

Data Reference: Configuring CPB Queues

Two CPB queues, whose parameters must be supplemented for the data reference, are set up in enaio® enterprise-manager.

Settings\Registry entries\Schema\CPB:

  • For the AISearchDocExportQueueNames queue, add the value AIDOC.

  • For the AISearchIdxExportQueueNames queue, add the value AIIDX.

Data Reference: Integrating Object Types

The object types that are to be integrated for data reference in the AI-driven search require the Indexing for AI search property.

You assign this property to the object types via enaio® editor.

Re-indexing is required if objects of these object types already exist.

This property is not necessary for the context reference.

Integrating the Dashlet

enaio® client

The dashlet is integrated into enaio® client via enaio® enterprise-manager.

  • Home URL: http(s)://<gateway>:<port>/lumee/?sessionguid={sessionguid}

  • Title: enaio lumee

  • The 1073744243 ID can be specified as the icon ID.

enaio® webclient

For enaio® webclient, the dashlet is integrated via the dashlet.json file.

Example:

[
    {
        "objectTypes": "*",
        "platforms": [
            "web",
            "desktop_app",
        ],
        "uri": "http://<service-manager-ip>/lumee/",
        "title_EN": "enaio lumee",
        "title_DE": "enaio lumee",
        "title_FR": "enaio lumee"
        "iconID": "1073744243"
        "groups": ["STANDARD"],
        "users": ["user1", "user2"]
    }
]

If users and groups for which the dashlet is shown are specified in dashlet.json, then these users also require the rights via the lumee-prod.yml file. Otherwise, these users will only receive a message in the dashlet about missing rights.

Configuring in the Dashlet

The dashlet can be opened in enaio® client via the View ribbon tab and in enaio® webclient via the dashlet icon in the header of the preview area.

A light or dark color scheme can be selected as the application setting.

Users with the 'Administrator: Configure entire system' system role open the prompt settings in the 'lumee' dashlet via the enaio® lumee Settings menu – icon settings icon in the dashlet menu bar. Changes can be saved.

Settings for Prompts

The LLMs are integrated exclusively via the lumee-prod.yml configuration file.

The Settings for prompts area in the dashlet is divided into the following sections:

Setting Function
Personality Determines the tone and character of the responses.
Unknown answer Determines how the AI system responds if no information is available.
Prompt template Defines the structured format for AI-generated responses.
Template for prompt rephrasing This template is used if the original query does not return any results.

These prompt settings are formulated in German by default. They can be translated and configured manually if required.

Similarity threshold

Determines how precisely a query should match saved responses. Higher values lead to higher agreement.

Value range: 0–1

Maximum number of vectors Defines the maximum number of saved vectors for AI-generated responses.
Temperature

Defines the randomness of the AI-generated responses. Higher values lead to a greater variety of answers.

Value range: 0.1–1

Maximum number of tokens

Defines the maximum number of tokens for AI-generated responses.

Value range: 100–10,000

User-defined Prompt Buttons

The input field for prompts is extended by default with buttons for predefined prompts. Users with the 'Administrator: Configure entire system' system role can edit and save these predefined prompts and make them available to all users by default. You can also create new prompts for all creators. The data is saved in the prompt-config.yml file located in the \apps\lumeeservice directory of enaio® service-manager.

Other users can create and modify their own prompts. These prompts are only stored temporarily in the browser cache and are therefore no longer available after deleting the cache, in another browser, or in another client.

Default prompt buttons
Button text Prompt template Documents/quantity
Summarize Please summarize this document clearly and concisely, highlighting the key points and main conclusions. 1
Compare Please compare these documents and highlight similarities, differences, and important findings from the comparison. 2 to 5

The Summarize button is only shown if a document is selected, and the Compare button is only shown if at least 2 and a maximum of 5 documents are selected.

Documents are always required for context reference.