Volver al Blog

Integrar OpenAI con PHP puro: Tutorial desde cero para devs

Integrar OpenAI con PHP puro: Tutorial desde cero para devs

Muchos tutoriales de IA asumen que usas Node.js o Python. Pero ¿qué pasa si tu proyecto es en PHP? ¿Si no quieres meter un framework pesado solo para usar ChatGPT? Tranquilo, se puede hacer con PHP puro y es más fácil de lo que piensas.

Hoy te voy a enseñar a integrar OpenAI en cualquier proyecto PHP, desde cero. Al final tendrás un generador de descripciones de cargo funcionando que podrás adaptar a lo que necesites.

Lo que necesitas antes de empezar

  • PHP 7.4 o superior (con cURL habilitado)
  • Una API Key de OpenAI
  • Conocimientos básicos de PHP
  • 10 minutos de tu tiempo

Paso 1: Conseguir tu API Key de OpenAI

1. Entra a platform.openai.com y crea una cuenta
2. Ve a "API Keys" en el menú lateral
3. Click en "Create new secret key"
4. Copia la key (OJO: solo la verás una vez)

Importante: OpenAI te da $5 USD gratis para probar. Con eso puedes hacer miles de peticiones de prueba.

Paso 2: El código completo

Este es todo el código que necesitas. Sí, es así de simple:

<?php
// CONFIGURACIÓN - Pon tu API Key aquí
$apiKey = 'AQUÍ';

// Procesar el formulario cuando se envía
if ($_SERVER['REQUEST_METHOD'] === 'POST' && isset($_POST['cargo'])) {
    $cargo = $_POST['cargo'];
    
    // Configurar la petición a OpenAI
    $url = 'https://api.openai.com/v1/chat/completions';
    
    $data = [
        'model' => 'gpt-3.5-turbo',
        'messages' => [
            [
                'role' => 'user',
                'content' => "Genera las funciones principales para el cargo de: $cargo. Lista 5 funciones principales."
            ]
        ],
        'max_tokens' => 300,
        'temperature' => 0.7
    ];
    
    $headers = [
        'Content-Type: application/json',
        'Authorization: Bearer ' . $apiKey
    ];
    
    $ch = curl_init($url);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_POST, true);
    curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
    curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
    
    $response = curl_exec($ch);
    curl_close($ch);
    
    // Obtener la respuesta
    $result = json_decode($response, true);
    $funciones = $result['choices'][0]['message']['content'] ?? 
    'Error al generar las funciones';
}
?>

<!DOCTYPE html>
<html>
<head>
    <title>Generador de Vacantes con IA</title>
</head>
<body>
    <h1>Generador de Vacantes con IA</h1>
    
    <form method="POST">
        <label>Nombre del cargo:</label><br>
        <input type="text" name="cargo" required><br><br>
        
        <button type="submit">Generar con IA</button><br><br>
        
        <label>Funciones del cargo:</label><br>
        <textarea rows="10" cols="50"><?php echo isset($funciones) ? $funciones : ''; ?></textarea>
    </form>
</body>
</html>

Paso 3: Entendiendo las partes clave

Vamos a ver qué hace cada parte importante:

La API Key:

$apiKey = 'AQUÍ';

Aquí va tu key de OpenAI. Reemplaza 'AQUÍ' con tu key real que empieza con "sk-".

La configuración del modelo:

$data = [
    'model' => 'gpt-3.5-turbo',     // El modelo de IA
    'messages' => [...],             // Tu pregunta
    'max_tokens' => 300,             // Tamaño máximo de respuesta
    'temperature' => 0.7             // Creatividad (0 a 1)
];

El prompt (lo que le pides a la IA):

'content' => "Genera las funciones principales para el cargo de: $cargo. Lista 5 funciones principales."

Este es el mensaje que le envías a OpenAI. Puedes cambiar este texto para que haga otras cosas.

Cómo funciona en la práctica

1. El usuario escribe un cargo (ej: "Desarrollador Frontend")
2. PHP envía ese texto a OpenAI
3. OpenAI genera las funciones del cargo
4. Las muestra en el textarea

Así de simple. No necesitas más para empezar.

Probando tu código

1. Guarda el código en un archivo llamado generador.php
2. Reemplaza 'AQUÍ' con tu API key real
3. Súbelo a tu servidor (o pruébalo en localhost)
4. Abre el archivo en tu navegador
5. ¡Listo! Ya tienes IA en tu proyecto PHP

¿Qué más puedes hacer con esto?

Con pequeños cambios en el prompt, puedes crear:

  • Generador de descripciones de productos
  • Creador de emails de respuesta a clientes
  • Traductor especializado para tu industria
  • Analizador de comentarios (positivos/negativos)
  • Generador de ideas de contenido
  • Corrector de textos profesionales
  • Creador de resúmenes ejecutivos
  • Chatbot de preguntas frecuentes

Solo cambia el texto en content y ajusta lo que le pides a la IA.

Algunos tips rápidos

Para respuestas más largas: Aumenta max_tokens (pero cuesta más)

Para respuestas más creativas: Sube temperature a 0.9

Para respuestas más precisas: Baja temperature a 0.3

Si no funciona: Verifica que tu API key esté bien copiada

Errores comunes

Si ves "Error al generar las funciones", puede ser porque:

  • La API key está mal copiada
  • Se acabó tu crédito gratuito
  • No tienes cURL habilitado en PHP
  • Tu hosting bloquea peticiones externas

Un detalle importante sobre costos

Cada petición cuesta fracciones de centavo. Con el modelo gpt-3.5-turbo puedes hacer miles de peticiones por dólar. Pero si usas gpt-4, es unas 10 veces más caro (y más inteligente).

¿Y ahora qué?

Ya tienes la base. Con este código simple puedes agregar IA a cualquier proyecto PHP existente. No necesitas cambiar toda tu arquitectura ni aprender un framework nuevo.

Mi recomendación: empieza con algo simple como este generador de vacantes. Cuando veas que funciona,, adáptalo a tus necesidades específicas. La IA no es el futuro, es el presente, y ahora ya sabes cómo usarla.

¿Tienes un proyecto PHP que podría beneficiarse de IA? Ya sabes qué hacer. Copia el código, pon tu API key, y dale vida.

C

Sobre Carlos Donoso

Full Stack Developer y AI Engineer apasionado por crear soluciones innovadoras. Me especializo en desarrollo web moderno, inteligencia artificial y automatización. Comparto conocimiento para ayudar a otros developers a crecer en su carrera.

Comentarios 3

Comparte tu opinión

0/1000 caracteres
Avatar de Álvaro Díaz

Álvaro Díaz

28/06/2025
Gracias, Carlos, justo buscaba algo así. Me encanta q podamos integrar OpenAI sin complicarnos con frameworks pesados. PHP siempre ha sido mi elección y encontrar recursos adaptados es un alivio.

Responder a Álvaro Díaz

Avatar de Pablo Vargas

Pablo Vargas

19/06/2025
Carlos, interesante tu enfoque, pero creo q subestimas la utilidad de frameworks ligeros. Usar PHP puro x mantener simplicidad a veces trae problemas de mantenimiento y escalabilidad a largo plazo. Me ha pasado q después de un tiempo el código se vuelve un enredo. Claro, sin frameworks también se puede, pero a veces una capa adicional ayuda bastante.
Carlos, interesante tu enfoque, pero creo q subestimas la utilidad de frameworks ligeros. Usar PHP puro x mantener simplicidad a veces trae problemas de mantenimiento y escalabilidad a largo plazo. Me ha pasado q después de un tiempo el código se vuelve un enredo. Claro, sin frameworks también se puede, pero a veces una capa adicional ayuda bastante.

Responder a Pablo Vargas

Avatar de Sebastián Flores

Sebastián Flores

18/06/2025
Me encantó el artículo, Carlos. Justo estaba buscando cómo integrar OpenAI con PHP sin tener q meterme en frameworks pesados. Me vino de lujo tu guía, es directa y fácil de seguir. Ya quiero probarlo en mi proyecto. Una consulta, ¿tienes algún consejo para optimizar el uso de la API en aplicaciones más grandes?
Me encantó el artículo, Carlos. Justo estaba buscando cómo integrar OpenAI con PHP sin tener q meterme en frameworks pesados. Me vino de lujo tu guía, es directa y fácil de seguir. Ya quiero probarlo en mi proyecto. Una consulta, ¿tienes algún consejo para optimizar el uso de la API en aplicaciones más grandes?

Responder a Sebastián Flores

¡Enlace copiado al portapapeles!