Zu Hauptinhalt springen Zu ergänzendem Inhalt springen

Erste Schritte mit Analyseverbindungen

Erstellen Sie eine Analyse-Verbindung, um Daten zu laden und aus Modellen zu generieren, die von Qlik Cloud oder von verschiedenen ML-Tools von Drittanbietern bereitgestellt werden. Diese Modelle stellen in der Regel REST-basierte API-Endpunkte dar. Bevor Sie die Verbindung erstellen und verwenden, müssen Sie die gewünschten ML-Modelle erstellen und bereitstellen bzw. Zugriff darauf erhalten.

Neben Qlik AutoML gibt es mehrere Drittanbieterplattformen, auf denen Modelle für maschinelles Lernen erstellt, trainiert und bereitgestellt werden können, z. B.:

  • Azure ML

  • Amazon SageMaker

Trainieren eines Klassifizierungsmodells mit AutoML ohne Code im Azure Machine Learning Studio

Erste Schritte mit Amazon SageMaker

Aktivieren von Analyseverbindungen für Endpunkte für maschinelles Lernen

Endpunkte für maschinelles Lernen sind standardmäßig deaktiviert.

Mandantenadministratoren können ML-Endpunkte in „Administration“ im Fenster Einstellungen unter Funktionssteuerung aktivieren.

Verwenden von Analyseverbindungen und Syntax für serverseitige Erweiterungen

Analyseverbindungen können Daten an Qlik AutoML oder an extern dargestellte ML-Endpunkte zu Berechnungszwecken senden. Von diesen Verbindungen zurückgegebene Daten können in eine Qlik Sense App geladen werden.

Datenladeskripts und Diagrammformeln sind zwei Möglichkeiten zum Hinzufügen von Analyseverbindungen zu einer Qlik Sense App. Sowohl SSE-Funktionen (serverseitige Erweiterungen) als auch Parameter werden innerhalb von Qlik Sense verarbeitet und dann in REST-Anforderungen konvertiert, die an Modelle für maschinelles Lernen gesendet werden. SSE-Ladeskripts und -Diagrammformeln müssen der SSE-Syntax folgen. Weitere Informationen finden Sie unter Syntax für serverseitige Erweiterungen.

Datenladeskript

  • Sie können eine Tabelle aus dem SSE-Aufruf zurückgeben und Daten aus Analyseverbindungen anhand des Befehls LOAD ... EXTENSION im Qlik Sense-Datenladeskript laden. Sie können eine einzelne Tabelle an das Modell senden, worauf eine einzelne Datentabelle zurückgegeben wird.

  • Wenn Sie eine SSE-Funktion im Qlik Sense-Datenladeskript (mit ausgeschlossenem Befehl LOAD ... EXTENSION) verwenden, wird die Kardinalität beibehalten, und es wird eine einzelne Spalte zurückgegeben.

  • SSE-Funktionsaufrufe aus allen anderen Ladebefehlen heraus, wie z. B. Load ... From ..., unterstützen nur skalare und Aggregierungsfunktionstypen. Dies bedeutet, dass Daten mit n Zeilen zu n Aufrufen des Modells führen, es sei denn, Sie aggregieren die Daten, was zu einem einzelnen Aufruf führt.

  • Datentypen werden in Analyseverbindungen automatisch erkannt. Wenn die Daten keinen numerischen Wert und mindestens einen Nicht-NULL-Textstring enthalten, wird das Feld als Text betrachtet. In allen anderen Fällen wird es als numerisch betrachtet. Sie können den Datentyp erzwingen, indem Sie einen Feldnamen mit String() oder Mixed() umgeben. String() erzwingt den Textdatentyp für das Feld. Wenn das Feld numerisch ist, wird der Textteil des dualen Werts extrahiert und keine Konvertierung vorgenommen. Mixed() erzwingt den dualen Datentyp für das Feld.

Diagrammformeln

  • Diagrammformeln können keine vom SSE-Funktionsaufruf zurückgegebenen Tabellen nutzen. Wenn Sie eine SSE-Funktion in einer Diagrammformel verwenden, wird die Kardinalität beibehalten, und nur die erste zurückgegebene Spalte wird von Qlik Sense verwendet.

Referenzieren des Bereichs der Datenverbindung

Wenn Sie die App oder das Skript in einem verwalteten Bereich veröffentlichen oder möchten, dass Ihre SSE-Anforderungen auf eine Verbindung im aktuellen Bereich verweisen, verwenden Sie relative Syntax. Alternativ können Sie die Anforderung mit einem Verweis auf einen bestimmten Bereichsnamen konfigurieren. Diese Konzepte sind sowohl für Ladeskripte als auch für Diagrammformeln wichtig.

Weitere Informationen zum Verwenden von bereichsfähiger Syntax finden Sie unter:

Beispiel 1: Relative Bereichssyntax im Ladeskript

Das folgende Beispiel ist ein Auszug aus einer Verbindung zu einer Analysequelle in einem Ladeskript. Der Code wurde geändert, um auf eine Verbindung im aktuellen Bereich der App oder des Skripts zu zeigen. Hierzu wird am Anfang des Verbindungsnamens ein Doppelpunkt hinzugefügt (in diesem Fall „:Amazon_Titan_(Amazon_Bedrock)“). Ohne diesen Doppelpunkt würde der Verweis auf eine Verbindung im persönlichen Bereich des Benutzers zeigen, der den Ladevorgang ausführt (bzw. des Ladezeitplanbesitzers).

EXTENSION endpoints.ScriptEval('{"RequestType":"endpoint", "endpoint":{"connectionname":":Amazon_Titan_(Amazon_Bedrock)"}}', QuestionsTable{Question_ID,Question});

Die bereichsfähige Syntax kann vor dem Veröffentlichen der App oder des Skripts in einem verwalteten Bereich angewendet werden, der auch die Analyseverbindung enthält.

Beispiel 2: Relative Bereichssyntax in einer Diagrammformel

Das folgende Beispiel ist eine Diagrammformel, die einen Verweis auf eine Verbindung im aktuellen Bereich enthält. Hierzu wird am Anfang des Verbindungsnamens ein Doppelpunkt hinzugefügt (in diesem Fall „:Amazon_Titan_(Amazon_Bedrock)“). Ohne diesen Doppelpunkt würde der Verweis auf eine Verbindung im persönlichen Bereich des Benutzers zeigen, der den Ladevorgang ausführt (bzw. des Ladezeitplanbesitzers).

if(vQuestion <> '', endpoints.scriptAggrStr('{"RequestType":"endpoint", "endpoint":{"connectionname":":Amazon_Titan_(Amazon_Bedrock)","column":"outputText"}}',vQuestion))

Die bereichsfähige Syntax kann vor dem Veröffentlichen der App oder des Skripts in einem verwalteten Bereich angewendet werden, der auch die Analyseverbindung enthält.

Beispiel 3: Hartcodierte Bereichssyntax im Ladeskript

Wenn Sie möchten, dass der Verweis auf die Analyseverbindung nur in einem bestimmten Bereich funktioniert, können Sie die Formel hartcodieren, sodass sie einen direkten Verweis auf den Bereich enthält. Wenn Sie den Bereichsnamen nicht einschließen (und auch den Doppelpunkt weglassen, der in den Beispielen 1 und 2 hinzugefügt wurde), ist die Syntax hartcodiert und verweist auf eine Verbindung im persönlichen Bereich des Benutzers, der den Ladevorgang durchführt (bzw. des Ladezeitplanbesitzers).

Wenn Sie den Assistenten Daten auswählen zum Hinzufügen der load-Anweisung verwenden, wird diese Syntax automatisch verwendet.

EXTENSION endpoints.ScriptEval('{"RequestType":"endpoint", "endpoint":{"connectionname":"My_Shared_Space:Amazon_Titan_(Amazon_Bedrock)"}}', QuestionsTable{Question_ID,Question});

In diesem Fall wird auf eine Verbindung in einem Bereich mit dem Namen My_Shared_Space verwiesen.

Beispiel 4: Hartcodierte Bereichssyntax in einer Diagrammformel

Dieses Beispiel gleicht Beispiel 3. Wenn Sie den Bereichsnamen nicht einschließen (und auch den Doppelpunkt weglassen, der in den Beispielen 1 und 2 hinzugefügt wurde), ist die Syntax hartcodiert und verweist auf eine Verbindung im persönlichen Bereich des Benutzers, der den Ladevorgang durchführt (bzw. des Ladezeitplanbesitzers).

if(vQuestion <> '', endpoints.scriptAggrStr('{"RequestType":"endpoint", "endpoint":{"connectionname":"My_Shared_Space:Amazon_Titan_(Amazon_Bedrock)","column":"outputText"}}',vQuestion))

In diesem Fall wird auf eine Verbindung in einem Bereich mit dem Namen My_Shared_Space verwiesen.

Hat diese Seite Ihnen geholfen?

Wenn Sie Probleme mit dieser Seite oder ihren Inhalten feststellen – einen Tippfehler, einen fehlenden Schritt oder einen technischen Fehler –, teilen Sie uns bitte mit, wie wir uns verbessern können!