ChatGPT API em Java: como adicionar IA ao seu projeto

Treinador Online de Python para Iniciantes

Aprenda Python facilmente sem sobrecarga teórica. Resolva tarefas práticas com verificação automática e escreva código diretamente no navegador.

Start Course

Por que um desenvolvedor Java precisa do ChatGPT? Ou como parar de ter medo e amar as redes neurais

\n

Olá, colega! Se você está lendo isso, significa que, assim como eu, está cansado de escrever respostas padronizadas para o suporte técnico, gerar descrições chatas de produtos ou analisar avaliações manualmente. E se eu disser que em apenas uma noite você pode dar vida à sua aplicação Java, conectando-a a uma inteligência artificial real? Sim, estou falando daquele ChatGPT que sabe fazer piadas, escrever código e até explicar o teorema de Pitágoras para um gato.

\n

Neste artigo, não vamos analisar a teoria das probabilidades ou ensinar transformers. Vamos simplesmente pegar o Java, adicionar uma pitada de requisições HTTP e fazer o GPT-4 (ou 3.5, se o orçamento estiver apertado) trabalhar para nós. Parece mágica? Na verdade, é pura engenharia. Vamos nessa!

\n\n

O que vamos precisar? Um kit básico essencial

\n

Antes de escrever código, certifique-se de que você tem:

\n
    \n
  • JDK 11 ou superior (vamos usar o novo HttpClient, que surgiu na versão 11);
  • \n
  • Chave da API OpenAI — você pode obtê-la na plataforma OpenAI. Não se esqueça de adicionar créditos (apenas alguns dólares, o suficiente para testes);
  • \n
  • Qualquer IDE — IntelliJ IDEA, Eclipse ou até um bloco de notas, se você for hardcore;
  • \n
  • Maven ou Gradle — para conectar as dependências de forma prática (mas vamos usar o mínimo).
  • \n
\n

A propósito, se você acha que a integração do ChatGPT em Java é algo complicado que exige machine learning, apresso-me em te alegrar: tudo se resolve com uma simples requisição HTTP. Nada de redes neurais em tempo de execução, apenas REST API.

\n\n

Preparação do projeto: Maven e dependências

\n

Crie um novo projeto Maven e adicione no pom.xml apenas uma biblioteca — Jackson para trabalhar com JSON. Sem ela não dá, porque o ChatGPT se comunica com o mundo exclusivamente nessa linguagem.

\n\n
<dependency>\n    <groupId>com.fasterxml.jackson.core</groupId>\n    <artifactId>jackson-databind</artifactId>\n    <version>2.15.2</version>\n</dependency>
\n\n

Pronto! Nada de SDKs, nada de wrappers — apenas Java puro e nossa engenhosidade. Se você usa Gradle, basta adicionar implementation 'com.fasterxml.jackson.core:jackson-databind:2.15.2'.

\n\n

Estrutura da requisição para a API OpenAI

\n

Antes de escrever código, vamos entender o que o servidor espera de nós. A API ChatGPT aceita uma requisição POST no endpoint https://api.openai.com/v1/chat/completions. O corpo da requisição é um JSON com esta estrutura:

\n\n
{\n  "model": "gpt-3.5-turbo",\n  "messages": [\n    {"role": "system", "content": "Você é um assistente útil."},\n    {"role": "user", "content": "Conte uma piada sobre desenvolvedores Java."}\n  ],\n  "temperature": 0.7\n}
\n\n

Vamos analisar os campos:\n

    \n
  • model — qual modelo responde. Para economizar, use gpt-3.5-turbo; para respostas incríveis, use gpt-4;
  • \n
  • messages — array de mensagens. A mensagem do sistema define o tom, e a do user é a nossa pergunta;
  • \n
  • temperature — de 0 a 2. Quanto maior, mais criativa a resposta (e maior a chance de a rede neural começar a alucinar).
  • \n
\n

\n\n

A resposta também vem em JSON, e o que nos interessa é o campo choices[0].message.content. É lá que está o texto que vamos exibir para o usuário.

\n\n

Escrevendo o código: Cliente Java para ChatGPT

\n

Vamos criar a classe ChatGPTClient. Ela será responsável por enviar requisições e processar respostas. Todo o código em um único arquivo, para não criar muitas entidades.

\n\n
import java.net.URI;\nimport java.net.http.HttpClient;\nimport java.net.http.HttpRequest;\nimport java.net.http.HttpRes                

Blogs

Book Recommendations