Zu Hauptinhalt springen Zu ergänzendem Inhalt springen

Verwenden von Azure OpenAI-Verbindungen in Visualisierungsformeln

Sie können Azure OpenAI-Fragen und -Antworten nicht nur über das Ladeskript zum Datenmodell Ihrer App hinzufügen, sondern diese Vorgänge auch direkt in einem Diagramm in Ihrer App durchführen. Daten für ein einzelnes Feld werden zwischen Ihnen und dem Azure OpenAI Service hin- und hergesendet.

In vielen Fällen kann der für die Ladeskriptverbindung genutzte Code für ein Diagramm wiederverwendet werden, mit einigen Unterschieden.

Wenn der Anwendungsfall auf Benutzereingaben basiert, können Sie eine Analyseverbindung und die zugehörige Syntax für serverseitige Erweiterungen in Ihrer Diagrammformel verwenden, um interaktive Diagramme zu erstellen, die von den Modellendpunkten empfangene Daten visualisieren.

Überlegungen zu Datenanfragemengen

Es wird empfohlen, Azure OpenAI-Verbindungen in Diagrammformeln nur für eine oder wenige Datenzeilen zu verwenden. Diagrammformeln sollten nicht dazu verwendet werden, große Datenmengen an den Service zu senden.

Achten Sie unbedingt darauf, wie viele Zeilen Sie mit jeder Anfrage senden. Fehler beim Konfigurieren der Azure OpenAI-Verbindung in einer Diagrammformel können zu unbeabsichtigt großen Anfragen führen (z. B. identische Zeilen mit der gleichen Frage, weil das Datenmodell in einem Diagramm falsch verwendet wurde). Je größer die Anfrage, die Sie an den Azure OpenAI Service senden, desto höhere Kosten entstehen Ihnen bei Microsoft Azure. Für den Konnektor besteht zwar ein Anfragelimit von 25 Zeilen pro Anfrage; dennoch sollte dies beachtet werden.

Befolgen Sie die folgenden Leitlinien, um die Größe Ihrer Azure OpenAI-Anfragen einzuschränken:

  • Verwenden Sie Ihre Azure OpenAI-Verbindungen nur in einer Text und Bild-Diagrammformel. Es wird dringend davon abgeraten, eine Azure OpenAI-Verbindung in einem Tabellen-Objekt zu verwenden, besonders, wenn Sie die Formel zu einer Tabelle hinzufügen, der bereits eine oder mehrere Dimensionen hinzugefügt wurden.

  • Wenn die Diagrammformel mit dem Datenmodell Ihrer App verknüpft ist, verwenden Sie eine if-Anweisung in der Formel, um das Diagramm nur zu berechnen, wenn eine einzelne Auswahl in der App getroffen wird. Damit wird die Zeilenanzahl, die Ihr Diagramm an den Azure OpenAI Service sendet, erheblich eingeschränkt.

  • Wenn Sie eine Azure OpenAI-Verbindung zum Senden großer Anfragen verwenden, sollten Sie die Verbindung in Ihrem Ladeskript statt in einer Diagrammformel nutzen, damit die Daten vorab in Ihr Datenmodell geladen werden.

Kurze Beispiele

Hier finden Sie Beispielformeln, die bei den ersten Schritten mit dem Azure OpenAI-Konnektor verwendet werden können. Beachten Sie Folgendes:

  • Verwenden Sie nur die Formeln mit einem Text und Bild-Objekt.

  • Erwägen Sie das Hinzufügen eines if-Befehls zu Ihren Formeln, um zu steuern, wann das Diagramm neu berechnet wird, und um es entsprechend den Benutzerauswahlen in der App zu aktualisieren.

  • Damit die Formeln funktionieren, müssen Sie den Wert connectionname und die Feldnamen ersetzen, damit sie mit Ihren eigenen Verbindungen und Apps übereinstimmen.

Weitere Beispiele finden Sie unter Tutorial – Verwenden des OpenAI-Analysekonnektors in Qlik Cloud.

Diagrammformelbeispiele für den Azure OpenAI-Analysekonnektor

Konnektorkonfiguration Formel Zusammenfassung
OpenAI Completions API (GPT-3) - Rows endpoints.ScriptAggrStr('{"RequestType":"endpoint", "endpoint":{"connectionname":"OpenAI Connection for Rows Completions (GPT-3)","column":"choices.text"}}', 'Translate this text from english to spanish: The sun was rising over the new tomorrow with a tinge of excitement.')

Dieser Befehl gibt die Antwort auf eine einzelne Frage zurück, die in die Formel eingegeben wurde.

Warnhinweis

Diese Formel verwendet keinen if-Befehl und ist daher nicht geeignet, wenn sie an ein Feld in Ihrem Datenmodell gebunden ist. Sie eignet sich nur für die Verwendung in einer eigenständigen Formel mit einer einzelnen Eingabezelle, die einen hartcodierten Wert enthält.

OpenAI Completions API (GPT-3) - Rows if(vQuestion <> '', endpoints.scriptAggrStr('{"RequestType":"endpoint", "endpoint":{"connectionname":"My_OpenAI_Connection_Rows_3","column":"choices.text"}}',vQuestion))

Dies ist ein Befehl, der in einem Text und Bild-Objekt verwendet werden kann, das mit einem Variableneingabe-Steuerelement verknüpft ist. Das Diagramm wird nur berechnet, wenn eine Eingabe vorgenommen wird. Wenn der Benutzer eine Eingabe in das Objekt eingibt und die Eingabetaste drückt, zeigt das Diagramm die Antwort auf die Eingabe an.

Eine schrittweise Anleitung finden Sie unter Übung: Erstellen eines Texteingabefelds mithilfe einer Variablen.

OpenAI Chat Completions API (GPT-3.5, GPT-4) - Rows if(GetSelectedCount(BusinessTopic)=1, endpoints.ScriptAggrStr('{"RequestType":"endpoint", "endpoint":{"connectionname":"My_OpenAI_Connection_Rows_3", "column":"choices.message.content"}}', 'What are people saying about ' & 'BusinessTopic'), 'Please select a single value for BusinessTopic.') Dies ist ein komplexer if-Befehl, in dem das Diagramm nur berechnet wird, wenn der Benutzer einen Wert für das Feld BusinessTopic ausgewählt hat. Das Diagramm wird nur aktualisiert, wenn der Benutzer diese Auswahl in der App getroffen hat. Andernfalls zeigt das Diagramm die folgende alternative Meldung an: Please select a single value for BusinessTopic.
OpenAI Chat Completions API (GPT-3.5, GPT-4) - Rows if(vQuestion <> '', endpoints.scriptAggrStr('{"RequestType":"endpoint", "endpoint":{"connectionname":"My_OpenAI_Connection_Rows_3","column":"choices.message.content"}}',vQuestion))

Dies ist ein Befehl, der in einem Text und Bild-Objekt verwendet werden kann, das mit einem Variableneingabe-Steuerelement verknüpft ist. Das Diagramm wird nur berechnet, wenn eine Eingabe vorgenommen wird. Wenn der Benutzer eine Eingabe in das Objekt eingibt und die Eingabetaste drückt, zeigt das Diagramm die Antwort auf die Eingabe an.

Eine schrittweise Anleitung finden Sie unter Übung: Erstellen eines Texteingabefelds mithilfe einer Variablen.

OpenAI Chat Completions API (GPT-3.5, GPT-4) - Rows if( count(distinct [IssueCategory]) = 1, endpoints.ScriptAggrStr('{"RequestType":"endpoint", "endpoint":{"connectionname":"My_OpenAI_Connection_Chat_3_5","column":"choices.message.content"}}', 'write me a sample response from a technical support department for a customer complaint about ' & [IssueCategory])) In diesem Beispiel wird das Diagramm nur berechnet, wenn ein distinkter Wert aus dem Feld IssueCategory im Datenmodell der App ausgewählt wurde. Es wird eine Anfrage nach einer Beispielantwort von einer Abteilung für technischen Support über ein allgemeines Problem gesendet. Eine entsprechende Liste ist im Feld IssueCategory enthalten. Das Diagramm wird je nach dem vom Benutzer ausgewählten Wert aktualisiert.

Detaillierte Beispiele

Beispiele, die zeigen, wie Sie die Azure OpenAI-Verbindung in Diagrammformeln verwenden, finden Sie im Tutorial für den OpenAI-Konnektor. Beachten Sie, dass der Azure OpenAI-Konnektor über die Microsoft Azure-Plattform anstelle der OpenAI-Plattform mit den Modellen kommuniziert.

Tutorial – Verwenden des OpenAI-Analysekonnektors in Qlik Cloud

Beispiel 1: Konfiguration „OpenAI Completions API (GPT-3) - Rows“

Beispiel 3: Konfiguration „OpenAI Chat Completions API (GPT-3.5). GPT-4 - Rows“

OpenAI-Analysekonnektor – interaktives Beispiel

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!