Durchsuchbare Dokumentation aufrufen | Zurück zur Dokumentationsübersicht

Navigation: Dokumentationen agorum core > agorum core Module und Plugins > ALBERT agorum core ai


JavaScript-Bibliothek agorum.ai/js/lib/presets-settings

Hinweise:

  • Diese Dokumentation bezieht sich auf die aktuellste Version des Plugins agorum core ai. Aktualisieren Sie das hier beschriebene Plugin, um die Dokumentation verwenden zu können.
  • Wenn Sie zusätzlich das Plugin agorum core ai agents verwenden, können Sie weitere Funktionen verwenden. Die Zusatzfunktionen sind ebenfalls in dieser Dokumentation beschrieben, jeweils mit dem Hinweis, dass sie nur mit dem Plugin agorum core ai agents zur Verfügung stehen.

In den Chat-Anfragen können Sie KI-Voreinstellungen verwenden, die Sie über die Oberfläche über > Administration > Konfiguration > KI-Voreinstellungen konfiguriert haben (siehe agorum core ai KI-Voreinstellungen einrichten). Alternativ haben Sie auch die Möglichkeit, KI-Voreinstellungen mit der Bibliothek agorum.ai/js/lib/presets-settings programmatisch zu erstellen.

Programmatisches Erstellen von KI-Voreinstellungen

Sie können die KI-Voreinstellungen in der Oberfläche verwalten (siehe agorum core ai einrichten), aber auch programmatisch erstellen. 

Wie in der Oberfläche können Sie Einstellungen erstellen, die den Zugriff auf das KI-Modell konfigurieren (Modelleinstellungen). Außerdem können Sie eher fachlich orientierte Einstellungen hinterlegen, die Einstellungen für KI-Modelle referenzieren (Benutzereinstellungen).

 

Binden Sie dazu die Bibliothek stets am Anfang eines Skripts ein:

let settings = require('/agorum/roi/customers/agorum.ai/js/lib/presets-settings');

Die folgenden Beispiele zeigen je die Einrichtung einer Modelleinstellung, die Benutzern nicht angezeigt werden soll, und einer Benutzereinstellung mit fachlichen Angaben, die anschließend für den Benutzer-Chat verwendet werden soll.

 

Beispiel für das Erstellen einer Modelleinstellung

let settings = require('/agorum/roi/customers/agorum.ai/js/lib/presets-settings');
let objects = require('common/objects');

let data = {
  id: settings.id,
  name: 'agorum_doc_test_-mypreset',
  projectName: 'agorum.doc.test',
  displayName: 'openai-settings',
  settings: {
    apiKey: '<API key>',
    model: 'gpt4o',
    // baseUrl: 'http://IP:PORT', //required for ollama
  },

  provider: 'openai', // see MAIN_MODULE_MANAGEMENT/customers/agorum.ai/providers/[ agorum.ai ]
  userGroup: objects.find('group:GRP_agorum.ai_chat').UUID,
  parameters: {
    timeout: 100000,
    max_tokens: 10000,
    temperature: 1,
    // historyLimit: 5,
    // context: 'optional context'
  },
  active: true,
  capabilities: {
    texts: true,
    images: true,
    tools: true,
  },
  usableInChat: false, // can this preset be used in the user chat
  default: false, // is this the default preset that should be used in chat
};

settings.set(data);

Dieses Beispiel zeigt, wie die Hilfsbibliothek agorum.ai/jb/lib/presets-settings verwendet wird, um eine KI-Voreinstellung (Preset) mit Verbindungseinstellungen zu einem Sprachmodell programmatisch einzurichten. Hier handelt sich um eine KI-Vorinstellung mit dem Namen "agorum_doc_test_-mypreset" für den Provider "openai" und das Sprachmodell "gpt4o".

Die wichtigsten Einstellungen für die Verbindungskonfiguration sind die Einstellungen in den Abschnitten provider und settings. Das Sprachmodell, zu dem Sie die Verbindung herstellen möchten, geben Sie für provider an, siehe Übersicht über die Standardanbieter/-modelle. Zusätzlich müssen Sie im Abschnitt settings Ihren API-Key und das Modell angeben, das Sie verwenden möchten. Wenn Sie ein selbstgehostetes ollama verwenden, wird zusätzlich die baseUrl benötigt.

In diesem Beispiel wird die KI-Voreinstellung nur als Modellkonfiguration verwendet, um die Verbindung herzustellen. Die Voreinstellung wird Benutzern im KI-Chat aber nicht direkt zur Auswahl angeboten (usableInChat: false).

 

Generierte KI-Voreinstellung im Administrationsmenü

 

Beispiel für das Erstellen einer Benutzereinstellung (mit Referenz auf eine andere Einstellung)

let settings = require('/agorum/roi/customers/agorum.ai/js/lib/presets-settings');
let objects = require('common/objects');

let dataRef = {
  id: refSettings.id,

  //provider: 'openai', // MAIN_MODULE_MANAGEMENT/customers/agorum.ai/providers/[ agorum.ai ]
  userGroup: objects.find('group:GRP_agorum.ai_chat').UUID,
  parameters: {
    timeout: 100000,
    max_tokens: 10000,
    temperature: 1,
    // historyLimit: 5,
    // context: 'optional context',
  },
  active: true,
  displayName: 'user-chat-preset',
  usableInChat: true,
  isReference: true,
  reference: '3d458126-95e0-48dd-976f-ede517c4ae53', // uuid of the preset that is referenced
};

settings.set(dataRef);

refSettings;

Dieses Beispiel zeigt, wie die Hilfsbibliothek agorum.ai/jb/lib/presets-settings verwendet wird, um eine KI-Voreinstellung (Preset) mit fachlichen Einstellungen und einer Referenz auf eine andere KI-Voreinstellung einzurichten. Hier handelt sich um eine KI-Voreinstellung mit dem Namen "my-preset-reference", die auf die andere KI-Voreinstellung "my-openai-settings" über die UUID dieser Voreinstellung verweist (reference: <uuid>). Diese KI-Voreinstellung wird Benutzern im KI-Chat angezeigt (usableInChat: true).

 

Generierte KI-Voreinstellung im Administrationsmenü

 

Funktionen für KI-Voreinstellungen

Die Bibliothek agorum.ai/js/lib/presets-settings enthält Funktionen, die zur Verwaltung von KI-Voreinstellungen (auch genannt Presets) dienen.

create

Die Funktion create erstellt eine neue KI-Voreinstellung (Preset) mit den angegebenen Einstellungen. Sie erzeugt eine ID, falls keine bereitgestellt wurde, und speichert die neue KI-Voreinstellung im Workspace. Der API-Key wird ggf. verschlüsselt darin gespeichert.

Hinweis: Die Funktion testet nicht, ob eine Verbindung zum angegebenen Sprachmodell hergestellt werden kann.

 

Syntax

create(data)

 

Parameter des data-Objekts für die Voreinstellungen

Parameter Beschreibung Pflicht Standard
id Eindeutige Kennung der KI-Voreinstellung. Wenn Sie keine ID angeben, wird automatisch eine UUID generiert. Nein -
name Der Name der KI-Voreinstellung, der zur Identifizierung der KI-Voreinstellung verwendet wird. Die Anwendung prüft nicht, ob der Name bereits vorhanden ist. Sie sollten aber für jede Benutzergruppe (bzw. jeden Mandanten) nur eindeutige KI-Voreinstellungsnamen verwenden.  Ja -
settings Ein Objekt, das die Basiseinstellungen der KI-Voreinstellung enthält:
  • apiKey: Geben Sie hier Ihren API-Key für den ausgewählten Provider an.
  • model: Geben Sie den Wert für das präzise Sprachmodell an. Der Wert ist abhängig vom ausgewählten Provider.
Ja (bei Voreinstellungen, die nicht auf andere Voreinstellungen verweisen) Ein leeres Objekt, wenn nicht angegeben
parameters Ein Objekt, das erweiterte Einstellungen enthält:

Für weitere Informationen siehe Struktur des parameters-Objekts.

Nein Ein leeres Objekt, wenn nicht angegeben
provider Der Name des KI-Anbieters Ja (bei Voreinstellungen, die nicht auf andere Voreinstellungen verweisen) -
userGroup Benutzergruppe, die Zugriff auf die KI-Voreinstellung hat, auch für mandantenspezifische Einstellungen. Nein -
active Ein Boolescher Wert, der angibt, ob die KI-Voreinstellung aktiv ist und verwendet werden kann. Nein false
default Ein Boolescher Wert, der angibt, ob diese Voreinstellung die Standardauswahl im Benutzer-Chat ist (für die ausgewählte Benutzergruppe).

Die Voreinstellung ist für die Benutzer vorausgewählt und wird in der Liste der Chat-Optionen mit blauem Chat-Symbol angezeigt.

Nein false
usableInChat Wenn Sie die Einstellung aktivieren, ist diese Voreinstellung unter dem angegebenen displayName im Benutzer-Chat verfügbar. Nein false
displayName Der Anzeigename der KI-Voreinstellung, der Benutzern angezeigt wird, wenn er vom Namen abweicht. Nein Wert von name (wenn nicht explizit angegeben)
capabilities Ein Platzhalter für zukünftige Erweiterungen, um die Fähigkeiten für die KI-Voreinstellung zu spezifizieren. Nein undefined
isReference Ein Boolescher Wert, der angibt, ob die KI-Voreinstellung auf eine andere KI-Voreinstellung verweist. Nein false
reference Die UUID einer anderen KI-Voreinstellung, auf die diese KI-Voreinstellung verweist. Ja (nur wenn isReference: true) Ein leeres Array, wenn nicht angegeben
fallbackReferences Eine Liste von UUIDs von alternativen KI-Voreinstellungen, die als Fallback verwendet werden können, wenn die unter reference angegebene KI-Voreinstellung nicht verfügbar ist. Nein Ein leeres Array, wenn nicht angegeben
configGroup Wenn Sie Benutzern im Chat viele Voreinstellungen zur Auswahl anbieten, kann es hilfreich sein, die Voreinstellungen zu gruppieren. Sie können dazu Gruppennamen frei definieren und KI-Voreinstellungen den Gruppen zuordnen. Nein undefined

 

Beispiele

 

Rückgabewert

Die Funktion gibt das erstellte Einstellungsobjekt zurück. Beispiel:

{
  "settings" : {
    "apiKey" : "BpdtgiwlRyD5l7kB+YXm+5fb4pBlQiZq3fAPr/UaKXGDbq0S5bpTLY4wnR9+sDsrqKcgTK4sI5im4yvyYBC4Aajmc+4jlYaNQM9Vrsl0ahjYWzNvb/nEBS9blUoC4MSTAPmjXJOvzJfVcGwmAcDfXvtfilFV/Hv0ZSrTm34x+F4HmBiUjd7ooCsGFC7Rjon9uDPgDPuYBeoRANQep08fflGet5NwS0Xyir0xQCHtrIXlzn9Smw6OxCHMMCEFiVjgXHzxhr6rCZTw450A4M9PK3NQ9pn1TRISYWAnKUhmSrCmb+yApiECxkVrwy4pPNNlC/o2r1IqhKaVxxj7cIttsg==",
    "model" : "gpt4o"
  },
  "capabilities" : {
    "images" : true,
    "texts" : true,
    "tools" : true
  },
  "configGroup" : null,
  "fallbackReferences" : null,
  "displayName" : "my-openai-settings",
  "active" : true,
  "tools" : null,
  "reference" : null,
  "default" : false,
  "usableInChat" : false,
  "provider" : "openai",
  "name" : "mypreset",
  "isReference" : null,
  "id" : "bd1663f2-e3f9-4c82-94a8-ff95ebb9c63b",
  "projectName" : null,
  "parameters" : {
    "max_tokens" : 10000,
    "temperature" : 1.0,
    "context" : "test context",
    "timeout" : 100000,
    "limitHistory" : 5
  },
  "userGroup" : "af258ae0-3160-11f0-8b8b-00007f000101",
  "connectionTested" : null
}

Exceptions

Wenn der Name der KI-Voreinstellung, die erstellt werden soll, nicht angegeben ist, erhalten Sie folgenden Fehler: 

Error: "name" is not defined

get

Die Funktion get ruft die gespeicherten Einstellungen einer KI-Voreinstellung basierend auf deren ID ab. Zusätzlich entschlüsselt sie den API-Key, sofern er in den Einstellungen vorhanden ist.

Syntax

get(id)

 

Parameter

Parameter Beschreibung Pflicht Standard
id Die eindeutige ID der KI-Voreinstellung. Ja -

 

Beispiel

let settings = require('/agorum/roi/customers/agorum.ai/js/lib/presets-settings');

settings.get('bd1663f2-e3f9-4c82-94a8-ff95ebb9c63b');

 

Rückgabewert

Die Funktion gibt die KI-Voreinstellungen als Objekt zurück oder undefined, wenn keine entsprechende KI-Voreinstellung gefunden wird.

getConfigByName

Die Funktion getConfigByName sucht eine KI-Voreinstellung anhand ihres Namens und kann optional die Referenzierung berücksichtigen, um die direkte oder die referenzierte KI-Voreinstellung zurückzugeben. Standardmäßig erhalten Sie die Einstellung der referenzierten KI-Voreinstellung zurück, also nicht unbedingt die Einstellungen der Voreinstellung mit dem angegebenen Namen.

 

Syntax

getConfigByName(name, direct, fallbackToUse)

 

Parameter

Parameter Beschreibung Pflicht Standard
name (String) Der Name der Voreinstellung, die gesucht werden soll. Ja -
direct (Boolean) Gibt an, ob die KI-Voreinstellung direkt abgerufen werden soll, ohne Referenzen. Nein false
fallbackToUse (String) ID der Fallback-Einstellung. Nein -

 

Beispiel

let settings = require('/agorum/roi/customers/agorum.ai/js/lib/presets-settings');

settings.getConfigByName('mypreset');

 

Rückgabewert

Die Funktion gibt die KI-Voreinstellungen für den angegebenen Namen zurück oder undefined, wenn keine entsprechende Voreinstellung gefunden wird. Für eine Liste der Einstellungen siehe Parameter für die KI-Voreinstellungen.

getUserDefaultConfig

Die Funktion getUserDefaultConfig ruft die für den Benutzer eingestellte Standard-KI-Voreinstellung für den Benutzer-Chat ab oder gibt undefined zurück, wenn keine KI-Voreinstellung für den Benutzer gefunden wird. 

Die Standard-KI-Voreinstellung ist die erste KI-Voreinstellung mit der Einstellung default:true oder wenn keine entsprechende KI-Voreinstellung vorhanden ist, die erste KI-Voreinstellung für den Benutzer-Chat.

 

Syntax

getUserDefaultConfig(user)

 

Parameter

Parameter Beschreibung Pflicht Standard
user (agorum.Object) Der Benutzer, für den die abzufragenden Standard-KI-Voreinstellungen zutreffen. nein der aktuelle Benutzer

 

Beispiel

let settings = require('/agorum/roi/customers/agorum.ai/js/lib/presets-settings');

settings = settings.getUserDefaultConfig();

 

Rückgabewert

Die Funktion gibt ein Objekt mit den Einstellungen der Standard-KI-Voreinstellung des Benutzers zurück oder undefined, wenn keine entsprechende Voreinstellung gefunden wird. Für eine Liste der Einstellungen siehe Parameter für die KI-Voreinstellungen.

getConfigObject

Die Funktion getConfigObject sucht das Konfigurationsobjekt für eine bestimmte KI-Voreinstellung und gibt die ID des Objekts zurück. Sie dient als Grundlage, um auf die gespeicherten Einstellungen zuzugreifen.

 

Syntax

getConfigObject(id)

 

Parameter

Parameter Beschreibung Pflicht Standard
id Die eindeutige ID der KI-Voreinstellung. Ja -

 

Beispiel

let settings = require('/agorum/roi/customers/agorum.ai/js/lib/presets-settings');

settings.getConfigObject('bd1663f2-e3f9-4c82-94a8-ff95ebb9c63b');

 

Rückgabewert

Die Funktion gibt die ID der Datei mit den Einstellungen zurück oder undefined, wenn keine entsprechende KI-Voreinstellung gefunden wird.

getUserConfigs

Die Funktion getUserConfigs ruft die für den angegebenen Benutzer sichtbaren und verwendbaren KI-Voreinstellungen ab. Dabei werden die KI-Voreinstellungen nach aktiven und im Chat verwendbaren Voreinstellungen gefiltert, also den Chats, die die Einstellungen active: true und usableInChat: true haben.

 

Syntax

getUserConfigs(user)

 

Parameter

Parameter Beschreibung Pflicht Standard
user (agorum.Object) Der Benutzer, für den die abzufragenden KI-Voreinstellungen zutreffen. nein der aktuelle Benutzer

 

Beispiel

let settings = require('/agorum/roi/customers/agorum.ai/js/lib/presets-settings');

settings = settings.getUserConfigs();

 

Rückgabewert

Die Funktion gibt ein Array von Objekten zurück oder undefined, wenn keine Voreinstellung gefunden wird. Jedes Objekt enthält die Informationen zu einer KI-Voreinstellung. Für eine Liste der Einstellungen siehe Parameter für die KI-Voreinstellungen.

Beispiel:

[ {
  "default" : false,
  "configGroup" : null,
  "displayName" : "user-chat-preset",
  "name" : "agorum_doc_test_-myrefpreset",
  "id" : "716e4810-408b-11f0-955b-02420a0a0010",
  "uuid" : "716e4810-408b-11f0-955b-02420a0a0010"
}, {
  "default" : false,
  "configGroup" : "Development",
  "displayName" : "Develop with agorum core",
  "name" : "agorum_ai_internal_dev_agorum_core_development",
  "id" : "7b765b60-3af8-11f0-af1d-02420a0a0018",
  "uuid" : "7b765b60-3af8-11f0-af1d-02420a0a0018"
} ]

remove

Die Funktion remove entfernt die angegebene KI-Voreinstellung.

 

Syntax

remove(id)

 

Parameter

Parameter Beschreibung Pflicht Standard
id (String) Die UUID der KI-Voreinstellung, die entfernt werden soll. ja -

 

Beispiel

let settings = require('/agorum/roi/customers/agorum.ai/js/lib/presets-settings');

settings = settings.remove('3d458126-95e0-48dd-976f-ede517c4ae53');

 

Rückgabewert/Exceptions

Die Funktion löscht die KI-Voreinstellung mit der angegebenen UUID und gibt undefined zurück. Die Funktion remove wirft einen Fehler, wenn die angegebene UUID nicht gefunden wird. Beispiel:

Error: Preset 3d458126-95e0-48dd-976f-ede517c4ae52 is unknown

search

Die Funktion search durchsucht das agorum core System nach KI-Voreinstellungen basierend auf einer optionalen Abfrage und einer Begrenzung der Ergebnismenge.

 

Syntax

search(query, limit)

 

Parameter

Parameter Beschreibung Pflicht Standard
query (String) Eine optionale Abfrage, um nach sichtbaren Konfigurationen zu suchen. nein -
limit (Number) Begrenzung der Anzahl der Abfrageergebnisse. nein -

 

Beispiele

Die folgende Anfrage gibt alle vorhandenen KI-Voreinstellungen zurück:

let settings = require('/agorum/roi/customers/agorum.ai/js/lib/presets-settings');

settings = settings.search('*');

Die folgende Anfrage gibt nur die angegebene Höchstzahl von KI-Voreinstellungen (hier 3) zurück:

let settings = require('/agorum/roi/customers/agorum.ai/js/lib/presets-settings');

settings = settings.search('*', 3);

 

Rückgabewert

Die Funktion search gibt ein Array von Objekten mit Basisinformationen zu den gefundenen KI-Voreinstellungen zurück. Beispiel:

[ {
  "displayName" : "my-openai-settings2",
  "name" : "mypreset",
  "id" : "009e3e8a-41f4-4d2b-bba1-ca6e7fd15de4"
}, {
  "displayName" : "user-chat-preset",
  "name" : "my-preset-reference",
  "id" : "798a20ce-d69a-44e3-a644-7c85937fbcfa"
}, {
  "displayName" : "my-openai-settings",
  "name" : "mypreset",
  "id" : "d4e71ee6-c8ad-4906-bcf5-72638ad7fcc3"
} ]

set

Die Funktion set erstellt oder aktualisiert eine KI-Voreinstellung und speichert sie im Workspace. Falls ein neuer API-Schlüssel angegeben wird, wird dieser verschlüsselt darin gespeichert.

Hinweis: Die Funktion testet nicht, ob eine Verbindung zum angegebenen Sprachmodell hergestellt werden kann.

 

Syntax

set(data)

 

Parameter

Parameter Beschreibung Pflicht Standard
data (Object) Ein Objekt mit den Einstellungen für die KI-Voreinstellung. Für die Objekt-Parameter siehe Parameter des data-Objekts für die Voreinstellungen. ja -

 

Beispiele

 

Rückgabewert

Die Funktion set gibt das neue oder aktualisierte Einstellungsobjekt zurück. Für eine Liste der Einstellungen siehe Parameter für die KI-Voreinstellungen.

 

Exceptions

Wenn der Name der KI-Voreinstellung, deren Einstellungen gesetzt werden sollen, nicht angegeben ist, erhalten Sie folgenden Fehler: 

Error: "name" is not defined

setName

Die Funktion setName aktualisiert den Namen einer vorhandenen KI-Voreinstellung anhand ihrer ID. Sie dient der Umbenennung von Voreinstellungen, um klare und beschreibende Namen sicherzustellen.

 

Syntax

setName(data)

 

Parameter des data-Objekts für die Namensänderung

Parameter Beschreibung Pflicht Standard
id (String) Die UUID der KI-Voreinstellung. ja -
name (String) Neuer Name der KI-Voreinstellung. nein -

 

Beispiel

let settings = require('/agorum/roi/customers/agorum.ai/js/lib/presets-settings');

newNameSettings = settings.setName({ id: '009e3e8a-41f4-4d2b-bba1-ca6e7fd15de4', name: 'MyNewName' });

 

Rückgabewert

Die Funktion setName gibt das neue oder aktualisierte Einstellungsobjekt zurück. Für eine Liste der Einstellungen siehe Parameter für die KI-Voreinstellungen.

 

Exceptions

Die Funktion setName wirft einen Fehler, wenn keine id angegeben ist oder keine passende KI-Voreinstellung gefunden wird.