Utilizzo delle connessioni OpenAI nelle espressioni di visualizzazione
Oltre ad aggiungere le domande e le risposte di OpenAI al modello dati della propria app utilizzando lo script di caricamento, è possibile anche eseguire queste operazioni direttamente in un grafico della propria app nella modalità di analisi. I dati per un singolo campo vengono inviati avanti e indietro tra l'utente e OpenAI.
In molti casi, il codice usato per la connessione di uno script di caricamento può essere riutilizzato in un grafico, con alcune differenze.
Se il caso di utilizzo si basa sull'input dell'utente, è possibile utilizzare una connessione di analisi e la sintassi corrispondente di estensione lato server nell'espressione del grafico dell'utente al fine di creare grafici interattivi che visualizzino i dati ricevuti dagli endpoint modello.
Considerazioni relative al volume dati delle richieste
Per le espressioni del grafico per una o alcune righe di dati, si consiglia di utilizzare esclusivamente le connessioni OpenAI. Non si consiglia l'utilizzo di espressioni del grafico per inviare grandi quantità di dati a OpenAI.
È importante verificare il numero di righe che si inviano con ogni richiesta. Gli errori nella configurazione della connessione in un'espressione del grafico possono portare a richieste accidentalmente grandi (ad esempio, a causa di righe identiche con la stessa domanda a causa dell'utilizzo scorretto del modello dati in un grafico). Prima di interagire con una piattaforma di terze parti, assicurarsi di conoscere in che modo i campi utilizzati nel calcolo dell'espressione del grafico, e la loro posizione nel modello dati, hanno effetto sull'accordo finanziario e sulle modalità di fatturazione con le terze parti. Un utilizzo più elevato della piattaforma esterna può determinare costi superiori.
Seguire queste linee guida per controllare e limitare le dimensioni delle richieste:
-
Utilizzare solo la connessione in un'espressione del grafico Testo e immagine. Si sconsiglia vivamente l'utilizzo di una connessione OpenAI in un oggetto Tabella, soprattutto se si desidera aggiungere l'espressione a una tabella con una o più dimensioni preesistenti.
-
Se l'espressione del grafico è collegata al modello dati della propria app, utilizzare un'istruzione if nell'espressione esclusivamente per calcolare il grafico quando si affettua un'unica selezione nell'app. In questo modo, il numero di righe verrà ridotto notevolmente nelle richieste che il grafico invierà a OpenAI.
-
Se si usa una connessione OpenAI per inviare richieste di grandi dimensioni, usare la connessione nello script di caricamento anziché in un'espressione del grafico, in modo che i dati vengano pre-caricati del modello dati.
Creazione di espressioni del grafico
Procedere come indicato di seguito:
-
Al momento di modificare una visualizzazione, fare clic su per accedere all'editor delle espressioni.
-
Nell'editor delle espressioni, inserire un'espressione nel campo espressioni. L'espressione deve essere formulata usando la sintassi dell'estensione lato server.
Esempi rapidi
In questa sezione vengono elencate alcune espressioni di esempio che è possibile utilizzare quando con il connettore OpenAI. Tenere presente le seguenti indicazioni:
-
Utilizzare unicamente espressioni con un oggetto Testo e immagine.
-
Considerare di aggiungere un'istruzione if alle espressioni per controllare quando bisogna ricalcolare e aggiornare il grafico, a seconda delle selezioni dell'utente nell'app.
-
Per fare in modo che le espressioni funzioni correttamente, è necessario sostituire il valore connectionname e i nomi di qualsiasi campo in modo che corrispondano alle connessioni e app utilizzate dall'utente.
Per ulteriori esempi, vedere Tutorial – Utilizzo del connettore di analisi OpenAI in Qlik Cloud.
Configurazione del connettore | Espressione | Riepilogo |
---|---|---|
API completamenti di OpenAI (GPT-3) – Righe | 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.') |
Questa istruzione restituirà la risposta di OpenAI a una singola domanda, inserita nell'espressione. Nota di avviso
Questa espressione non utilizza un'istruzione if, e non se ne consiglia l'uso se vincolata a un campo nel modello dati dell'utente. È adatta per l'uso solo in un'espressione indipendente con un'unica cella di input contenente un valore codificato. |
API completamenti di OpenAI (GPT-3) – Righe | if(vQuestion <> '', endpoints.scriptAggrStr('{"RequestType":"endpoint", "endpoint":{"connectionname":"My_OpenAI_Connection_Rows_3","column":"choices.text"}}',vQuestion)) |
Questa è un'istruzione che può essere utilizzata in un oggetto Testo e immagine collegato a un Controllo input variabile. Il grafico viene calcolato solo dopo che viene inserito l'input. Quando l'utente digita l'input nell'oggetto e preme Invio, il grafico visualizza la risposta di OpenAI al testo inserito. Per la procedura dettagliata, vedere Esercizio: creazione di una casella di testo di input che utilizza una variabile. |
API completamenti chat OpenAI (GPT-3.5, GPT-4) – Righe | 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.') | Questa è un'istruzione complessa if nella quale il grafico viene calcolato solo se l'utente seleziona un valore per il campo BusinessTopic. Il grafico si aggiorna solo se l'utente effettua tale selezione nell'app; in caso contrario, il grafico visualizzerà il seguente messaggio alternativo: Please select a single value for BusinessTopic. |
API completamenti chat OpenAI (GPT-3.5, GPT-4) – Righe | if(vQuestion <> '', endpoints.scriptAggrStr('{"RequestType":"endpoint", "endpoint":{"connectionname":"My_OpenAI_Connection_Rows_3","column":"choices.message.content"}}',vQuestion)) |
Questa è un'istruzione che può essere utilizzata in un oggetto Testo e immagine collegato a un Controllo input variabile. Il grafico viene calcolato solo dopo che viene inserito l'input. Quando l'utente digita l'input nell'oggetto e preme Invio, il grafico visualizza la risposta di OpenAI al testo inserito. Per la procedura dettagliata, vedere Esercizio: creazione di una casella di testo di input che utilizza una variabile. |
API completamenti chat OpenAI (GPT-3.5, GPT-4) – Righe | 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 questo esempio, il grafico viene calcolato solo se un valore distinto viene selezionato dal campo IssueCategory nel modello dati dell'app. Una richiesta viene inviata a OpenAI per richiedere una risposta di esempio da un dipartimento di supporto tecnico riguardante un tipo generale di problema, un elenco dei quali è incluso nel campo IssueCategory. Il grafico viene aggiornato a seconda del valore selezionato dall'utente. |
Esempi dettagliati
Per esempi completi su come creare espressioni di visualizzazione usando la connessione OpenAI, vedere Tutorial – Utilizzo del connettore di analisi OpenAI in Qlik Cloud.