Usa la macro di ONLYOFFICE per generare un saggio con ChatGPT

27 febbraio 2023By Elena

La tecnologia AI è notevolmente migliorata nel corso di diversi anni ed è diventata una parte essenziale della nostra vita quotidiana. Oggi integreremo questa funzionalità high-tech nella nostra routine di scrittura. In questo post del blog, ti mostreremo come creare una macro che genererà un intero saggio con l’API ChatGPT. Use ONLYOFFICE macro to generate an essay with ChatGPT

Informazioni su ChatGPT

ChatGPT è un innovativo chatbot AI sviluppato da OpenAI che può dialogare in modo spontaneo. Il suo design della conversazione gli consente di rispondere alle domande di follow-up, riconoscere i propri errori, generare testo e contestare affermazioni errate. Il modello è addestrato a seguire le istruzioni in modo rapido e fornire una risposta dettagliata.

OpenAI fornisce un’API di prova gratuita che facilita l’integrazione in varie applicazioni. Per comodità, avremo accesso all’API OpenAI tramite la piattaforma RapidAPI. Per connetterti direttamente all’API OpenAI, visita la pagina della documentazione ufficiale.

Informazioni su RapidAPI

RapidAPI è una piattaforma completa che consente agli sviluppatori di scoprire, connettersi e gestire le API. Contiene una directory di oltre 10.000 API, incluse quelle popolari come Google Maps, Twilio, Stripe e YouTube. Gli utenti possono cercare API, ottenere prove gratuite e abbonarsi ad API e servizi. RapidAPI offre anche una dashboard per monitorare gli abbonamenti, l’utilizzo e le prestazioni delle API, nonché il supporto per l’accesso. Inoltre, RapidAPI consente agli sviluppatori di creare le proprie API e di monetizzarle.

Creazione della richiesta API

Nel nostro progetto, abbiamo incorporato l’API You Chat GPT di FB/florianbreut. Attualmente offre un piano freemium che inizia con un pacchetto base di 100 richieste al mese. Sarà sufficiente per testare la nostra macro.

L’interfaccia della piattaforma RapidAPI genera frammenti di codice di richiesta in varie lingue. Nel nostro caso le scelte saranno JavaScript e una funzione fetch:

Use ONLYOFFICE macro to generate an essay with ChatGPT

Inoltre, possiamo modificare i parametri della richiesta. In particolare, possiamo modificare il corpo della richiesta. L’API offre 4 opzioni di richiesta, a seconda del modello OpenAI:

  1. Scrivere codice
  2. Spiegare qualsiasi cosa
  3. Vincolo di tempo di risposta
  4. Risposta formattata

L’opzione Risposta formattata è perfetta per la generazione di saggi. Quindi lo scegliamo e modifichiamo il parametro max_response_time a 20 secondi. Ciò darà a OpenAI più tempo per generare la risposta:

Use ONLYOFFICE macro to generate an essay with ChatGPT

Costruzione della macro

Ora incorporiamo questa richiesta di recupero nella nostra macro!

Innanzitutto, creiamo una variabile globale che memorizzerà la risposta:

let essay;

Quindi aggiungiamo le opzioni della richiesta e impostiamo l’argomento del saggio modificando il parametro della domanda nel corpo della richiesta:

const options = {
  method: 'POST',
  headers: {
    'content-type': 'application/json',
    'X-RapidAPI-Key': '<yourRapidAPIkey>',
    'X-RapidAPI-Host': 'you-chat-gpt.p.rapidapi.com'
  },
  body: '{"question":"write an essay on the benefits of using ONLYOFFICE products","max_response_time":20}'
};

Successivamente, definiamo la funzione insertEssay. Questa funzione contiene metodi API ONLYOFFICE che inseriscono il saggio generato nel documento.

Innanzitutto, scegliamo come target il documento attivo e creiamo un paragrafo in cui verrà aggiunto il testo:

function insertEssay() {
  const oDocument = Api.GetDocument();
  const oParagraph = Api.CreateParagraph();
  
}

Quindi aggiungiamo il saggio generato al paragrafo e lo inseriamo con il metodo InsertContent.  Passiamo anche il parametro “KeepTextOnly” per evitare possibili problemi di formattazione:

 function insertEssay() {
  const oDocument = Api.GetDocument();
  const oParagraph = Api.CreateParagraph();
  oParagraph.AddText(essay);
  oDocument.InsertContent([oParagraph], { "KeepTextOnly": true })
  

Incorporiamo anche la funzione handleFetchResponse. La funzione estrae la risposta dalla risposta e attiva la funzione insertEssay per inserirla nel documento:

function handleFetchResponse(response) {
  return response.json().then(json => {
    essay = json.answer;
    insertEssay();
  });
}

E facciamo una richiesta di recupero al server:

fetch('https://you-chat-gpt.p.rapidapi.com/', options)
  .then(handleFetchResponse);

L’intero codice della macro è il seguente:

(function()
{ 
let essay;
const options = {
  method: 'POST',
  headers: {
    'content-type': 'application/json',
    'X-RapidAPI-Key': '<yourRapidAPIkey>',
    'X-RapidAPI-Host': 'you-chat-gpt.p.rapidapi.com'
  },
  body: '{"question":"write an essay on the benefits of using ONLYOFFICE products","max_response_time":20}'
};

function insertEssay() {
    const oDocument = Api.GetDocument();
    const oParagraph = Api.CreateParagraph();
    oParagraph.AddText(essay);
    oDocument.InsertContent([oParagraph], { "KeepTextOnly": true });
}

function handleFetchResponse(response) {
  return response.json().then(json => {
    essay = json.answer;
    insertEssay();
  });
}

fetch('https://you-chat-gpt.p.rapidapi.com/', options)
  .then(handleFetchResponse);
})();

Ora eseguiamo la nostra macro e vediamo come funziona!

Nota!

  • Questa macro è operativa solo nella versione online degli editor ONLYOFFICE.
  • Per ricevere 100 richieste gratuite, iscriviti all’API di You Chat GPT e utilizza la tua chiave RapidAPI.
  • Sono necessari circa 30 secondi per elaborare la richiesta prima di inserirla nel documento.
  • Premi lo spazio per inserire il testo.

Ci auguriamo che questa macro aiuta a portare nuove affascinanti tecnologie di intelligenza artificiale nel tuo flusso di lavoro e allevia le noiose attività di routine. Invitiamo gli sviluppatori a sfruttare le possibilità offerte dai nostri metodi API e a creare le loro macro. Le nostre macro sono scritte in JavaScript, il che le rende altamente funzionali e adattive.

Se hai domande o suggerimenti, non esitare a contattarci. Siamo aperti alle vostre idee e alla collaborazione con voi. Buona fortuna per le vostre esplorazioni!