L’intelligenza artificiale (IA) sta rivoluzionando il mondo del lavoro, offrendo soluzioni innovative e creative per migliorare la produttività e la qualità delle attività. Tra le diverse applicazioni dell’IA, una delle più promettenti e interessanti è quella dei chatbot, ovvero dei programmi in grado di interagire con gli utenti in modo naturale e conversazionale.I chatbot possono essere utilizzati per diversi scopi, come il supporto al cliente, l’assistenza tecnica, la vendita di prodotti o servizi, la formazione, il marketing e molto altro. Tuttavia, non tutti i chatbot sono uguali: alcuni sono più semplici e basati su regole predefinite, altri sono più avanzati e basati sull’apprendimento automatico. In questo articolo, vedremo come integrare ChatGPT nei tuoi software aziendali e migliorare la produttività
Contents
Cos’è ChatGPT e come funziona
Tra questi ultimi, spicca ChatGPT, un modello di linguaggio basato su GPT-3.5 e GPT-4 che è stato sviluppato da OpenAI, un’organizzazione di ricerca sull’intelligenza artificiale senza scopo di lucro.
ChatGPT è in grado di generare risposte coerenti e pertinenti a qualsiasi domanda o richiesta, sfruttando una vasta conoscenza generale e capacità di ragionamento. ChatGPT può anche adattarsi al contesto e al tono della conversazione, ammettere i suoi errori, sfidare le premesse errate e rifiutare le richieste inappropriate.
ChatGPT è uno dei modelli più potenti e versatili disponibili sul mercato, e può essere utilizzato per una varietà di applicazioni, come la stesura di e-mail, la scrittura di codice Python, la risposta a domande su documenti, la creazione di agenti conversazionali e molto altro.
Come integrare ChatGPT nei tuoi software aziendali
Per integrare ChatGPT nei tuoi software aziendali, dovrai usare le API di OpenAI, che sono un’interfaccia per accedere ai modelli di linguaggio e alle altre funzionalità offerte da OpenAI. Le API di OpenAI ti permettono di inviare un messaggio di testo al modello e ricevere una risposta generata in modo dinamico.
Puoi usare le API per creare applicazioni che sfruttano le capacità conversazionali e creative di ChatGPT.
Per usare le API di ChatGPT, devi avere una chiave API da OpenAI, che puoi ottenere gratuitamente registrandoti al loro sito.La chiave API ti consente di effettuare richieste al modello e visualizzare i risultati. Attualmente, OpenAI offre chiavi API gratuite con $ 5 di credito gratuito per i primi tre mesi.
Per integrare ChatGPT nei tuoi software aziendali, dovrai usare un linguaggio di programmazione che supporta le chiamate HTTP, come JavaScript, Python, Ruby o Java. Dovrai anche scegliere un framework o una libreria che ti faciliti la creazione dell’interfaccia utente e la gestione dei dati. Per esempio, puoi usare Node.js per creare un’applicazione web basata su JavaScript che comunica con ChatGPT.
Usare ChatGPT tramite API
I modelli di chat prendono come input una serie di messaggi e restituiscono come output un messaggio generato dal modello.
Un esempio di chiamata API è il seguente:
1 2 3 4 5 6 7 8 9 10 11 | import openai openai.ChatCompletion.create( model="gpt-3.5-turbo", messages=[ {"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "Who won the world series in 2020?"}, {"role": "assistant", "content": "The Los Angeles Dodgers won the World Series in 2020."}, {"role": "user", "content": "Where was it played?"} ) |
L’input principale è il parametro messages, che deve essere una lista di oggetti messaggio, dove ogni oggetto ha un ruolo (system, user o assistant) e un contenuto (il contenuto del messaggio).
Il messaggio di system aiuta a impostare il comportamento dell’assistente. Il messaggio di user aiuta a istruire l’assistente. Il messaggio di assistant aiuta a memorizzare le risposte precedenti.
Includere la storia della conversazione aiuta quando le istruzioni dell’utente si riferiscono a messaggi precedenti. Se una conversazione non può entrare nel limite dei token del modello, dovrà essere accorciata in qualche modo.
Formato della risposta
Un esempio di risposta dell’API è il seguente:
1 2 3 4 5 6 7 8 9 | { 'id': 'chatcmpl-6p9XYPYSTTRi0xEviKjjilqrWU2Ve', 'object': 'chat.completion', 'created': 1677649420, 'model': 'gpt-3.5-turbo', 'usage': {'prompt_tokens': 56, 'completion_tokens': 31, 'total_tokens': 87}, 'choices': [ { 'message': { 'role': 'assistant', 'content': 'The 2020 World Series was played in Arlington, Texas at the Globe Life Field, which was the new home stadium for the Texas Rangers.'}, 'finish_reason': 'stop', 'index': 0 } ] } |
La risposta dell’assistente si può estrarre con response[‘choices’][0][‘message’][‘content’].
Ogni risposta includerà un finish_reason, che indica il motivo per cui il modello ha terminato la generazione (stop, length, content_filter o null).
Gestione dei token
I modelli di linguaggio leggono il testo in pezzi chiamati token. In inglese, un token può essere breve come un carattere o lungo come una parola (ad esempio, a o apple).
Il numero totale di token in una chiamata API influisce su:
- Quanto costa la tua chiamata API, poiché paghi per token
- Quanto tempo impiega la tua chiamata API, poiché scrivere più token richiede più tempo
- Se la tua chiamata API funziona o meno, poiché il numero totale di token deve essere inferiore al limite massimo del modello (4096 token per gpt-3.5-turbo)
Sia i token di input che quelli di output contano per queste quantità.
Per vedere quanti token sono usati da una chiamata API, controlla il campo usage nella risposta dell’API.
Se una conversazione ha troppi token per entrare nel limite massimo del modello, dovrai troncare, omettere o ridurre in altro modo il tuo testo finché non entra.
Istruzione dei modelli di chat
Le migliori pratiche per istruire i modelli possono cambiare da una versione del modello all’altra.
Molte conversazioni iniziano con un messaggio di system per istruire l’assistente. In generale, gpt-3.5-turbo-0301 non presta molta attenzione al messaggio di system, e quindi le istruzioni importanti sono spesso meglio poste in un messaggio di user.
Se il modello non genera l’output che vuoi, puoi provare a iterare e sperimentare con possibili miglioramenti. Puoi provare approcci come:
- Rendere la tua istruzione più esplicita
- Specificare il formato in cui vuoi la risposta
- Chiedere al modello di pensare passo dopo passo o di confrontare pro e contro prima di stabilire una risposta
Oltre al messaggio di system, la temperatura e il max tokens sono due delle molte opzioni che gli sviluppatori hanno per influenzare l’output dei modelli di chat.
Chat vs Completions
Poiché gpt-3.5-turbo ha una capacità simile a text-davinci-003 ma al 10% del prezzo per token, raccomandiamo gpt-3.5-turbo per la maggior parte dei casi d’uso o gpt-4 per compiti più complessi.