Utilisation de connexions OpenAI dans des expressions de visualisation
Outre l'ajout de questions et de réponses OpenAI au modèle de données de votre application via le script de chargement, vous pouvez effectuer ces opérations directement dans un graphique de votre application en mode d'analyse. Les données d'un seul champ font l'aller-retour entre vous et OpenAI.
Dans de nombreux cas, le code utilisé pour une connexion de script de chargement peut être adapté pour être réutilisé dans un graphique, en y intégrant quelques différences.
Si le cas d'utilisation est basé sur la saisie de l'utilisateur, vous pouvez utiliser une connexion analytique et la syntaxe server-side extension (SSE) correspondante dans votre expression de graphique pour créer des graphiques interactifs qui visualisent les données reçues depuis les points de terminaison du modèle.
Considérations relatives aux volumes de requêtes de données
Il est recommandé d'utiliser uniquement des connexions OpenAI dans des expressions de graphique pour une ou plusieurs lignes de données. Il n'est pas recommandé d'utiliser des expressions de graphique pour envoyer de grandes quantités de données à OpenAI.
Il est important de connaître le nombre de lignes que vous envoyez à chaque requête. Des erreurs de configuration de la connexion dans une expression de graphique peuvent produire des requêtes involontairement volumineuses (par exemple, des lignes identiques avec la même question en raison de l'utilisation inappropriée du modèle de données dans un graphique). Avant d'interagir avec une plate-forme tierce, assurez-vous de savoir comment les champs utilisés dans le calcul des expressions de graphique et leur placement dans le modèle de données affectent vos accords financiers et de facturation avec le tiers. Une utilisation supérieure de la plate-forme externe peut entraîner une augmentation des coûts encourus.
Suivez ces consignes pour modérer et limiter la taille de vos requêtes :
-
Utilisez uniquement la connexion dans une expression de graphique Texte et image. L'utilisation de la connexion OpenAI dans un objet Table est vivement déconseillée, en particulier si vous ajoutez l'expression à une table à laquelle une ou plusieurs dimensions ont déjà été ajoutées.
-
Si l'expression de graphique est liée au modèle de données de votre application, utilisez une instruction if dans l'expression pour calculer uniquement le graphique lorsqu'une seule sélection est effectuée dans l'application. Cela réduit radicalement le nombre de lignes des requêtes envoyées à OpenAI par votre graphique.
-
Si vous utilisez la connexion OpenAI pour envoyer des requêtes de grande taille, utilisez la connexion dans votre script de chargement au lieu de l'utiliser dans une expression de graphique, de sorte que les données soient préchargées dans votre modèle de données.
Création de l'expression de graphique
Procédez comme suit :
-
Lors de l'édition d'une visualisation, cliquez sur pour ouvrir l'éditeur d'expression.
-
Dans l'éditeur d'expression, saisissez une expression dans le champ d'expression. L'expression peut être créée via la syntaxe server-side extension (SSE).
Exemples rapides
Vous trouverez ici en exemple des expressions qui peuvent être utilisées lorsque vous démarrez avec le connecteur OpenAI. N'oubliez pas les informations suivantes :
-
Utilisez uniquement les expressions avec un objet Texte et image.
-
Pensez à ajouter une instruction if à vos expressions pour contrôler le moment du recalcul du graphique et pour effectuer une mise à jour en fonction des sélections utilisateur dans l'application.
-
Pour que les expressions fonctionnent, vous devez remplacer la valeur connectionname et tous les noms de champ de sorte qu'ils correspondent à vos propres connexions et applications.
Pour d'autres exemples, voir Didacticiel – Utilisation du connecteur analytique OpenAI dans Qlik Cloud.
Configuration du connecteur | Expression | Récapitulatif |
---|---|---|
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.') |
Cette instruction renverra la réponse OpenAI à une seule question, qui a été saisie dans l'expression. Note Avertissement
Cette expression n'utilise pas d'instruction if, et il n'est pas conseillé de l'utiliser si elle est liée à un champ de votre modèle de données. Elle peut être utilisée uniquement dans une expression autonome avec une seule cellule d'entrée contenant une valeur codée en dur. |
OpenAI Completions API (GPT-3) - Rows | if(vQuestion <> '', endpoints.scriptAggrStr('{"RequestType":"endpoint", "endpoint":{"connectionname":"My_OpenAI_Connection_Rows_3","column":"choices.text"}}',vQuestion)) |
Cette instruction peut être utilisée dans un objet Texte et image lié à un Contrôle d'entrée de variable. Le graphique est calculé uniquement lorsque l'entrée est validée via Entrée. Lorsque l'utilisateur saisit une entrée dans l'objet et appuie sur Entrée, le graphique affiche la réponse d'OpenAI à son entrée. Pour une présentation détaillée, voir Exercice : Création d'une zone de saisie de texte via une variable. |
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.') | Il s'agit d'une instruction if complexe dans laquelle le graphique est calculé uniquement si l'utilisateur a sélectionné une valeur pour le champ BusinessTopic. Le graphique se met à jour uniquement si l'utilisateur a effectué cette sélection dans l'application. Sinon, le graphique affiche le message alternatif suivant : 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)) |
Cette instruction peut être utilisée dans un objet Texte et image lié à un Contrôle d'entrée de variable. Le graphique est calculé uniquement lorsque l'entrée est validée via Entrée. Lorsque l'utilisateur saisit une entrée dans l'objet et appuie sur Entrée, le graphique affiche la réponse d'OpenAI à son entrée. Pour une présentation détaillée, voir Exercice : Création d'une zone de saisie de texte via une variable. |
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])) | Dans cet exemple, le graphique est calculé uniquement si une valeur distincte a été sélectionnée dans le champ IssueCategory du modèle de données de l'application. Une requête est envoyée à OpenAI, demandant un exemple de réponse d'un service d'assistance technique sur un type de problème général, dont la liste est contenue dans le champ IssueCategory. Le graphique est mis à jour en fonction de la valeur sélectionnée par l'utilisateur. |
Exemples détaillés
Pour des exemples complets de création d'expressions de visualisation via votre connexion OpenAI, voir Didacticiel – Utilisation du connecteur analytique OpenAI dans Qlik Cloud.