Use a macro ONLYOFFICE para gerar um ensaio com ChatGPT

21 fevereiro 2023By Klaibson

A tecnologia AI melhorou significativamente ao longo de vários anos e se tornou uma parte essencial de nossas vidas diárias. Hoje vamos incorporar essa funcionalidade de alta tecnologia em nossa rotina de redação de documentos. Nesta postagem do blog, mostraremos como criar uma macro que gerará um ensaio inteiro com a API ChatGPT.

Use a macro ONLYOFFICE para gerar um ensaio com ChatGPT

Sobre o ChatGPT

O ChatGPT é um chatbot de IA inovador desenvolvido pela OpenAI que pode conversar naturalmente. Seu design de diálogo permite responder a perguntas de acompanhamento, reconhecer seus erros, gerar texto e contestar declarações incorretas. O modelo é treinado para seguir a instrução em um prompt e fornecer uma resposta detalhada.

O OpenAI fornece uma API de avaliação gratuita que facilita a integração em vários aplicativos. Para fins de conveniência, teremos acesso à API OpenAI por meio da plataforma RapidAPI. Para se conectar diretamente à API OpenAI, visite o site oficial da página da documentação.

Sobre RapidAPI

RapidAPI é uma plataforma abrangente para desenvolvedores descobrirem, conectarem e gerenciarem APIs. Ele contém um diretório de mais de 10.000 APIs, incluindo as populares como Google Maps, Twilio, Stripe e YouTube. Os usuários podem pesquisar APIs, experimentar avaliações gratuitas e assinar APIs e serviços. O RapidAPI também oferece um painel para monitorar assinaturas, uso e desempenho da API, bem como suporte de acesso. Além disso, o RapidAPI permite que os desenvolvedores criem suas APIs e monetizem-nas.

Formando a solicitação de API

Em nosso projeto, incorporamos o You Chat GPT API por FB/florianbreut. Atualmente, oferece um plano freemium que começa com um pacote básico de 100 solicitações por mês. Será suficiente para testar nossa macro.

A interface da plataforma RapidAPI gera trechos de código de requisição em diversos idiomas. Em nosso caso, as opções serão JavaScriot e uma função de busca:

Use a macro ONLYOFFICE para gerar um ensaio com ChatGPT

Além disso, podemos ajustar os parâmetros da solicitação. Em particular, podemos alterar o corpo da solicitação. A API oferece 4 opções de solicitação, dependendo do modelo OpenAI:

  1. Escrever código
  2. Explique qualquer coisa
  3. Restrição de resposta de tempo
  4. Resposta formatada

A opção Resposta formatada é perfeitamente adequada para a geração de redação. Então, escolhemos e alteramos o parâmetro max_response_time para 20 segundos. Isso dará ao OpenAI mais tempo para gerar a resposta:

Use a macro ONLYOFFICE para gerar um ensaio com ChatGPT

Construindo a macro

Agora vamos incorporar essa solicitação de busca em nossa macro!

Primeiro, criamos uma variável global que armazenará a resposta:

let essay;

Em seguida, adicionamos as opções de solicitação e definimos o tema da redação alterando o parâmetro da pergunta no corpo da solicitação:

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}'
};

Depois disso, definimos a função insertEssay . Esta função contém métodos API do ONLYOFFICE que inserem o ensaio gerado no documento.

Primeiro, direcionamos o documento ativo e criamos um parágrafo onde o texto será adicionado:

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

Em seguida, adicionamos o ensaio gerado ao parágrafo e o inserimos com o método InsertContent. Também passamos o parâmetro “KeepTextOnly” para evitar possíveis problemas de formatação:

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

Também incorporamos a função handleFetchResponse. Ele extrai a resposta da resposta e aciona a função insertEssay para inseri-la no documento:

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

E fazemos uma solicitação de busca ao servidor:

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

Todo o código da macro é o seguinte:

(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);
})();

Agora vamos rodar nossa macro e ver como funciona!

Nota!

  • Esta macro só funciona na versão online dos editores.
  • Para obter 100 solicitações gratuitas, inscreva-se em You Chat GPT API e use sua chave RapidAPI.
  • Demora aproximadamente 30 segundos para processar a solicitação antes de inseri-la no documento.
  • Pressione o espaço para inserir o texto.

Esperamos que esta macro traga novas e fascinantes tecnologias de IA para o seu fluxo de trabalho e alivie tarefas tediosas de rotina. Pedimos aos desenvolvedores que aproveitem as possibilidades que nossos métodos de API oferecem e construam suas macros. Nossas macros são escritas em JavaScript, tornando-as altamente funcionais e adaptáveis.

Se você tiver alguma dúvida ou sugestão, não hesite em entrar em contato. Estamos abertos para ouvir suas ideias e estamos ansiosos para colaborar com você. Boa sorte em seus esforços exploratórios!