Explorando la Interacción con OpenAI en PHP: Generación de Texto Potenciada por la IA
Estas funciones están diseñadas para interactuar con la API de OpenAI en php y obtener respuestas generadas por modelos de lenguaje de OpenAI. Aquí tienes una descripción detallada de cada una de estas funciones:
- promt_chat($txt):
- Esta función toma un texto (
$txt
) como entrada y utiliza el modelo de lenguaje GPT-4 de OpenAI para generar una respuesta de chat. - La función crea un arreglo de datos (
$data
) que incluye el modelo ("gpt-4"
), un mensaje de sistema («You are a helpful assistant»), y el mensaje del usuario ($txt
). - También establece parámetros como la temperatura (
0.7
), el límite máximo de tokens (256
), y penalidades de frecuencia y presencia en cero. - Luego, convierte los datos en formato JSON y realiza una solicitud a la API de OpenAI utilizando la función
consulta_api
. - Finalmente, devuelve la respuesta generada por el modelo de lenguaje.
- Mas información en https://platform.openai.com/docs/guides/gpt?lang=python
function promt_chat($txt)
{
$url_openai = "https://api.openai.com/v1/chat/completions";
$data = array(
"model" => "gpt-4",
"messages" => array(
array(
"role" => "system",
"content" => "You are a helpful assistant."
),
array(
"role" => "user",
"content" => $txt
)
),
"temperature" => 0.7,
"max_tokens" => 256,
"top_p" => 1,
"frequency_penalty" => 0,
"presence_penalty" => 0,
);
$data = json_encode($data);
$response = consulta_api($data);
return $response;
}
- promt($txt):
- Esta función toma un texto (
$txt
) como entrada y utiliza el modelo de lenguaje «text-davinci-003» de OpenAI para generar una respuesta. - Al igual que la función anterior, crea un arreglo de datos (
$data
) con el modelo ("text-davinci-003"
), el texto de la solicitud ($txt
), y otros parámetros como temperatura, límite de tokens y penalidades. - Luego, convierte los datos en formato JSON y realiza una solicitud a la API de OpenAI utilizando la función
consulta_api
. - Finalmente, devuelve la respuesta generada por el modelo de lenguaje.
function promt($txt)
{
$url_openai="https://api.openai.com/v1/completions"
$data = array(
"model" => "text-davinci-003",
"prompt" => $txt,
"temperature" => 0.7,
"max_tokens" => 256,
"top_p" => 1,
"frequency_penalty" => 0,
"presence_penalty" => 0,
);
$data = json_encode($data);
$response = consulta_api($data);
return $response;
}
- consulta_api($data):
- Esta función se encarga de hacer la llamada a la API de OpenAI.
- Toma los datos en formato JSON (
$data
) como entrada, que incluye toda la información necesaria para la solicitud, como el modelo, la temperatura, etc. - Configura las cabeceras de la solicitud, que incluyen el tipo de contenido y la clave de API de OpenAI.
- Luego, utiliza cURL para realizar la solicitud POST a la URL de la API de OpenAI con los datos proporcionados.
- Maneja la respuesta de la API, decodifica la respuesta JSON y devuelve el contenido generado por el modelo de lenguaje, así como el costo de uso si la solicitud fue exitosa. Si la solicitud no fue exitosa, devuelve la respuesta de error.
function consulta_api($data)
{
$openaiApiKey = 'numero de tu apiKaey';
$headers = array(
"Content-Type: application/json",
"Authorization: Bearer " . $openaiApiKey . ""
);
// Inicializa una sesión curl
$ch = curl_init();
// Configura las opciones de la solicitud
curl_setopt($ch, CURLOPT_URL, $url_openai);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
// Realiza la solicitud a la API de OpenAI
$response = curl_exec($ch);
$result = json_decode($response, true);
// Maneja la respuesta de la API
if (curl_getinfo($ch, CURLINFO_HTTP_CODE) === 200) {
if (isset($result["choices"][0]["text"])) {
//en el caso de v1/completions
$rs["texto"] = $result["choices"][0]["text"];
$rs["coste"] = $result["usage"];
// echo "Respuesta de OpenAI: " . $completion;
} else if (isset($result["choices"][0]["message"])) {
//en el caso de v1/chat/completions
$rs["texto"] = $result["choices"][0]["message"]['content'];
$rs["coste"] = $result["usage"];
}
return $rs;
} else {
return $result;
}
// Cierra la sesión curl
curl_close($ch);
}
Ten en cuenta que debes reemplazar "numero de tu apiKaey"
con tu clave de API real de OpenAI para que estas funciones funcionen correctamente. Además, verifica que la variable $url_openai
esté definida correctamente en las funciones promt_chat
y promt
.
Para usar estas funciones solo debemos llamar a promt(«texto a enviar a OpenAi»);
Entradas recientes
Redefiniendo la Ética de las Máquinas: Asimov y Kant Frente a la Inteligencia Artificial
La ciencia ficción ha sido, a lo largo del tiempo, un campo fértil para la…
Di adéu a les notificacions! Assegura’t que els teus certificats TLS es renovin automàticament
Let's Encrypt ha estat una peça clau en la seguretat web en oferir certificats TLS…
Guía para Instalar una Máquina Virtual en VirtualBox y Configurar un Servidor LAMP
En esta guía te explicaremos paso a paso cómo instalar una máquina virtual en VirtualBox…
¡Los Bloqueadores Están Declarando la Guerra a Bit.ly! Descubre Por Qué Tus Enlaces Están en Peligro
Los acortadores de URL, como bit.ly, se han convertido en herramientas esenciales para simplificar y…
Guía Completa para el Mantenimiento de Postfix
Postfix es uno de los servidores de correo más populares y robustos en el mundo…
¿Por qué las herramientas de SEO como SEMrush no reflejan la realidad de mi negocio?
En el mundo del marketing digital, las herramientas de SEO como SEMrush, Ahrefs, Moz y…
Esta web usa cookies.