Como Integrar Um Site PHP com o ChatGPT da OpenAI

Como acessar a API da OpenAI para acessar o ChatGPT através de aplicações PHP

03/04/2024

Como Integrar Um Site PHP com o ChatGPT da OpenAI

Como Integrar Um Site PHP com o ChatGPT da OpenAI

Introdução

Neste artigo, explicaremos como integrar o ChatGPT da OpenAI em uma aplicação web usando PHP e obter respostas da Inteligência Artificial de forma automatizada.

Para demonstrar o potencial da Inteligência Artificial, nosso código de exemplo enviará um pedido para que o ChatGPT faça o resumo e a tradução para o inglês de um trecho da página da SpaceX na Wikipedia.

Requisitos

Chave de acesso à API: Para que este código funcione, você precisa obter uma chave de acesso à API da OpenAI em https://openai.com/pricing.

Suporte a PHP com cURL: Verifique se o servidor que hospeda o seu site suporta PHP versão 5.4 ou superior e possui a biblioteca cURL e a extensão curl instaladas. Se o seu site está hospedado na MCO2, fique tranquilo, pois nossos servidores já possuem tudo o que é necessário para que este código funcione perfeitamente. Você pode transferir sua hospedagem para a MCO2 e receber até 60 dias de hospedagem gratuita.

Código Pronto pra Uso

Na seção a seguir, apresentamos o código completo necessário para integrar o ChatGPT da OpenAI com uma aplicação PHP. Este exemplo específico ilustra como enviar um pedido para o ChatGPT solicitar um resumo e uma tradução, passando por todas as etapas desde a configuração inicial até a obtenção da resposta.

<?php

// Substitua 'SUA_CHAVE_API' pela sua chave de API real.
$apiKey = 'SUA_CHAVE_API';

// Texto que será enviado para o ChatGPT
$prompt = "Resuma o texto abaixo em um único parágrafo de no máximo 50 palavras e em seguida traduza este resumo para o inglês: 

Space Exploration Technologies Corp., cujo nome comercial é SpaceX, é uma fabricante estadunidense de sistemas aeroespaciais, transporte espacial e comunicações com sede em Hawthorne, Califórnia. A SpaceX foi fundada em 2002 por Elon Musk com o objetivo de reduzir os custos de transporte espacial para permitir a colonização de Marte. A SpaceX fabrica os veículos de lançamento Falcon 9 e Falcon Heavy, vários tipos motores de foguetes, cápsulas de carga Dragon, espaçonaves tripuladas e satélites de comunicação Starlink. 

As conquistas da SpaceX incluem o primeiro foguete de combustível líquido com financiamento privado a alcançar a órbita (Falcon 1 em 2008), a primeira empresa privada a lançar, orbitar e recuperar com sucesso uma espaçonave (Dragon em 2010), a primeira empresa privada a enviar uma espaçonave para a Estação Espacial Internacional (Dragon em 2012), a primeira decolagem vertical e pouso propulsivo vertical para um foguete orbital (Falcon 9 em 2015), a primeira reutilização de um foguete orbital (Falcon 9 em 2017) e a primeira empresa privada para enviar astronautas para a órbita e para a Estação Espacial Internacional (SpaceX Crew Dragon Demo-2 em 2020). A SpaceX já lançou e reutilizou a série de foguetes Falcon 9 mais de 100 vezes.

A SpaceX está desenvolvendo uma megaconstelação de satélite chamada Starlink para fornecer serviço comercial de internet. Em janeiro de 2020, a constelação Starlink se tornou a maior constelação de satélites do mundo. A SpaceX também está desenvolvendo o Starship, um sistema de lançamento superpesado, totalmente reutilizável e com financiamento privado, para voos espaciais interplanetários. O Starship pretende se tornar o veículo orbital primário da SpaceX assim que estiver operacional, suplantando a frota Falcon 9, Falcon Heavy e Dragon existentes. O Starship será totalmente reutilizável e terá a maior capacidade de carga útil de qualquer foguete orbital já em sua estreia de seu vôo orbital programado para o primeiro semestre de 2O22.";

// Preparando os dados da solicitação
$data = [
    'model' => 'gpt-3.5-turbo',
    'messages' => [
        [
            "role" => "user",
            "content" => $prompt
        ]
    ],
    'temperature' => 0.7
];

// Configuração e execução da chamada cURL para a API de chat da OpenAI
$ch = curl_init('https://api.openai.com/v1/chat/completions');
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
    'Content-Type: application/json',
    'Authorization: Bearer ' . $apiKey,
]);

$response = curl_exec($ch);
curl_close($ch);

// Processamento da resposta
$responseDecoded = json_decode($response, true);
if (isset($responseDecoded['choices'][0]['message']['content'])) {
    echo "Resposta:\n\n" . $responseDecoded['choices'][0]['message']['content'];
} else {
    echo "Não foi possível obter uma resposta da OpenAI.";
}

?>

Explicando o código

O código PHP a seguir é dividido em partes para facilitar a compreensão de cada etapa envolvida na integração com a API do ChatGPT.

Definindo a Chave da API

// Substitua 'SUA_CHAVE_API' pela sua chave de API real.
$apiKey = 'SUA_CHAVE_API';

A primeira linha de código é onde você insere sua chave de API da OpenAI. Esta chave é essencial para autenticar suas solicitações à API e deve ser mantida em segredo.

Preparando o Texto para Envio

// Texto que será enviado para o ChatGPT
$prompt = "Resuma o texto abaixo em um único parágrafo de no máximo 50 palavras e em seguida traduza este resumo para o inglês: 

Space Exploration Technologies Corp., cujo nome comercial é SpaceX, é uma fabricante estadunidense de sistemas aeroespaciais, transporte espacial e comunicações com sede em Hawthorne, Califórnia. A SpaceX foi fundada em 2002 por Elon Musk com o objetivo de reduzir os custos de transporte espacial para permitir a colonização de Marte. A SpaceX fabrica os veículos de lançamento Falcon 9 e Falcon Heavy, vários tipos motores de foguetes, cápsulas de carga Dragon, espaçonaves tripuladas e satélites de comunicação Starlink. 

As conquistas da SpaceX incluem o primeiro foguete de combustível líquido com financiamento privado a alcançar a órbita (Falcon 1 em 2008), a primeira empresa privada a lançar, orbitar e recuperar com sucesso uma espaçonave (Dragon em 2010), a primeira empresa privada a enviar uma espaçonave para a Estação Espacial Internacional (Dragon em 2012), a primeira decolagem vertical e pouso propulsivo vertical para um foguete orbital (Falcon 9 em 2015), a primeira reutilização de um foguete orbital (Falcon 9 em 2017) e a primeira empresa privada para enviar astronautas para a órbita e para a Estação Espacial Internacional (SpaceX Crew Dragon Demo-2 em 2020). A SpaceX já lançou e reutilizou a série de foguetes Falcon 9 mais de 100 vezes.

A SpaceX está desenvolvendo uma megaconstelação de satélite chamada Starlink para fornecer serviço comercial de internet. Em janeiro de 2020, a constelação Starlink se tornou a maior constelação de satélites do mundo. A SpaceX também está desenvolvendo o Starship, um sistema de lançamento superpesado, totalmente reutilizável e com financiamento privado, para voos espaciais interplanetários. O Starship pretende se tornar o veículo orbital primário da SpaceX assim que estiver operacional, suplantando a frota Falcon 9, Falcon Heavy e Dragon existentes. O Starship será totalmente reutilizável e terá a maior capacidade de carga útil de qualquer foguete orbital já em sua estreia de seu vôo orbital programado para o primeiro semestre de 2O22.";

Esta seção define o texto (ou 'prompt') que será enviado ao ChatGPT. O texto inclui as instruções para o que você deseja que o ChatGPT faça, neste caso, resumir e traduzir um trecho sobre a SpaceX.

Configurando os Dados da Solicitação

// Preparando os dados da solicitação
$data = [
    'model' => 'gpt-3.5-turbo',
    'messages' => [
        [
            "role" => "user",
            "content" => $prompt
        ]
    ],
    'temperature' => 0.7
];

Aqui, configuramos o array $data, que contém os dados da solicitação. O modelo escolhido, 'gpt-3.5-turbo', é especificado junto com o prompt preparado anteriormente. A 'temperatura' controla a criatividade da resposta.

Realizando a Chamada à API

// Configuração e execução da chamada cURL para a API de chat da OpenAI
$ch = curl_init('https://api.openai.com/v1/chat/completions');
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
    'Content-Type: application/json',
    'Authorization: Bearer ' . $apiKey,
]);

Este trecho do código realiza a chamada à API usando cURL, uma biblioteca disponível em PHP para fazer solicitações HTTP. Aqui, configuramos a URL da API, o tipo de requisição (POST), os dados da solicitação e os cabeçalhos necessários, incluindo a chave de API para autenticação.

Processando a Resposta

$response = curl_exec($ch);
curl_close($ch);

// Processamento da resposta
$responseDecoded = json_decode($response, true);
if (isset($responseDecoded['choices'][0]['message']['content'])) {
    echo "Resposta:\n\n" . $responseDecoded['choices'][0]['message']['content'];
} else {
    echo "Não foi possível obter uma resposta da OpenAI.";
}

Após enviar a solicitação, o código processa a resposta. Primeiro, verifica se a resposta contém o conteúdo esperado e, em caso positivo, exibe-o. Se não houver resposta válida, uma mensagem de erro é exibida.

Conclusão

A integração do ChatGPT com PHP amplia funcionalidades de aplicações web com inteligência artificial.

A OpenAI disponibiliza diversos modelos de inteligência artificial, cada um com capacidades e custos específicos. Selecionar o modelo adequado é crucial para otimizar desempenho e custo, contribuindo para soluções mais eficazes.

Este artigo nas redes sociais: Facebook, Twitter/X, LinkedIn, Telegram, Pinterest, Tumblr, Flipboard, Mastodon

Domínios hospedados
Clientes satisfeitos