Cómo construir tu propia IA con la API ChatGPT en Node

OpenAI, el equipo detrás de ChatGPT, recientemente amplió su API y agregó ChatGPT. Esto significa que puede llamar a su API, obtener respuestas directamente de ChatGPT e incluir las respuestas en su propia aplicación.

La API te permite integrar inteligencia artificial en tu propia aplicación. Puede usarlo para crear una aplicación de preguntas y respuestas, un chatbot, un asistente de mensajería o alguna otra aplicación impulsada por IA; las posibilidades son infinitas.

También es increíblemente fácil de usar y está bien documentado. Este artículo lo guiará a través de todo el proceso de creación de una cuenta OpenAI, obtención de su clave API y consulta de ChatGPT desde su aplicación Node.js. ¡Vamos a sumergirnos de lleno!

Regístrese para obtener una cuenta ChatGPT

Para comenzar con ChatGPT, debe registrarse para obtener una cuenta OpenAI si aún no tiene una. Después de registrarse exitosamente, será redirigido nuevamente a la página de inicio.

Haga clic en su imagen de perfil en la esquina superior derecha y haga clic en Administrar cuenta. A continuación, haga clic en Claves API en la barra lateral y luego haga clic en Crear nueva clave secreta. OpenAI generará una clave secreta para usted:

Screenshot of OpenAI API key

Copie la clave secreta en un lugar seguro porque no podrá volver a verla a través de su cuenta OpenAI. Necesitará esta clave para conectar su aplicación con su API.

Ahora que tiene su clave API, el siguiente paso es crear una aplicación y conectarla con OpenAI para que podamos realizar consultas a ChatGPT y obtener respuestas. Comenzaremos con la instalación y configuración básica.

Advertisement – iPhone

Configurando el proyecto

Necesitará tener Node.js instalado en su máquina local para ejecutar la aplicación que estamos a punto de crear. Además de Node.js, necesita tener un editor de texto (por ejemplo, Visual Studio Code) y una terminal de comandos en su máquina local antes de continuar.

Cree una carpeta vacía y navegue hasta la carpeta en su terminal de comando. Luego, ejecute el siguiente comando para crear un nuevo proyecto de Node:

npm init -y

Este comando genera un archivo package.json dentro de la carpeta de trabajo. Vaya a su archivo package.json y agregue el siguiente campo para que pueda usar los módulos ES6:

{
  // Otros campos
  "type": "module"
}

A continuación, debe instalar dos paquetes: dotenv y openai. Dotenv le permite almacenar de forma segura variables de entorno (como su clave secreta) y cargarlas en la aplicación cuando sea necesario. La biblioteca OpenAI le permite conectar su aplicación con la API OpenAI e interactuar con ChatGPT.

Ejecute el siguiente comando para instalar las dependencias de una sola vez:

npm i dotenv openai

Dentro de la carpeta raíz, cree un archivo llamado .env. Abra el archivo en un editor de texto y pegue su clave API así:

API_KEY = <mi-api-key>

Reemplace<mi-api-key> con la clave API (es decir, la cadena larga) que copió de su cuenta ChatGPT.

Ahora que ha instalado correctamente las dependencias, el siguiente paso es crear su aplicación Node.js y conectarla a la API de OpenAI para consultar ChatGPT.

Implementando ChatGPT

En este punto, el único archivo en su proyecto es .env para variables de entorno. Cree un segundo archivo y asígnele el nombre script.js. Aquí es donde ejecutará todo su código.

A continuación, abra el archivo con su editor de texto y configure dotenv. Con este código, el script ahora puede acceder a la clave API almacenada en su archivo .env:

import { dotenv } from "dotenv"
dotenv()

Importe Configuration y OpenAIAPI desde la biblioteca openai.
Configuration es cómo configuras todo, y OpenAIAPI es lo que llamas para interactuar con los servidores ChatGPT.

import { Configuration, OpenAIAPI } from "openai"

Cree una nueva instancia del objeto de conexión OpenAI. Para conectarse correctamente con su cuenta, debe pasar su clave API desde el archivo .env:

const openai = new OpenAIAPI(new Configuration({
  apiKey: process.env.API_KEY
}))

El objeto openai tiene muchas propiedades y métodos, pero el único relevante para este tutorial es createChatCompletion() (para abrir un chat con ChatGPT):

openai.createChatCompletion({
  model: "gpt-3.5-turbo",
  messages: [
    { role: "user", content: "Hello ChatGPT"}
  ]
}).then(res => {
  console.log(res.data.choices)
})

Aquí especifica el modelo ChatGPT, que es gpt-3.5-turbo en el momento de escribir esto. La segunda propiedad son los messages, una serie de mensajes que desea enviar a la API. Cada elemento es un objeto que contiene el rol (por ejemplo, usuario) y el contenido del mensaje.

Ejecute el script con el siguiente comando:

node script.js

ChatGPT le devolverá un array de respuestas similar a esta:

[
  {
    message: {
      role: "assistant",
      content: '\n\nHello there, how can I assist you today?',
    },
    finish_reason: "stop",
    index: 0
  }
]

Es un array porque puedes pedirle que te dé más de un mensaje si quieres. El objeto contiene el rol, el contenido de la respuesta y el motivo de finalización (el motivo por el que ChatGPT dejó de generar más texto).

Todo lo que queremos acceder desde el array es al contenido del primer objeto. Para hacer eso, necesitas modificar tu código a esto:

openai.createChatCompletion({
  // other code 
}).then(res => {
  console.log(res.data.choices[0].message.content)
})

Ahora, cuando vuelva a ejecutar el script con node script.js, el contenido se mostrará en su terminal.

A continuación, agregaremos una forma para que el usuario ingrese información en lugar de codificar la pregunta.

Agregar una entrada de usuario

La mejor manera de agregar entradas del usuario en Node.js es con una biblioteca llamada readline (que está integrada en Node.js).

Comience importando la biblioteca a script.js:

import readline from "readline"

A continuación, configure una interfaz de usuario llamando a createInterface(). Así será como ingresamos la información:

const userInterface = readline.createInterface({
  input: process.stdin,
  output: process.stdout,
})

Cree un prompt en la terminal donde el usuario pueda escribir su pregunta:

userInterfact.prompt()

A continuación, configure un detector de eventos y mueva su solicitud de API a la función de callback, así:

userInterface.on("line", async input => {
  const res = await openai.createChatCompletion({
  model: "gpt-3.5-turbo",
  messages: [
    { role: "user", content: input}
  ]  
  
  console.log(res.data.choices)
  userInterface.prompt()
})

El callback acepta una entrada como argumento (todo lo que pasemos a nuestro mensaje se utilizará como entrada). Luego consultamos la API y registramos la respuesta en la terminal. Con la última línea de código, le decimos a Node.js que muestre el mensaje nuevamente después de registrar el mensaje para el usuario.

Ejecute la aplicación con el siguiente comando:

node index.js

Aparecerá un mensaje en su terminal de comando. Escriba una pregunta para ChatGPT y pulse Enter en su teclado. Le devolverá una respuesta en ese mismo terminal.

Conclusión

La API OpenAI ahora ha hecho posible integrar ChatGPT en aplicaciones web y móviles. Por ejemplo, Slack integró ChatGPT para ayudar a sus colegas a redactar mensajes más rápidos utilizando IA. Snapchat también integró ChatGPT para ayudar a los amigos a conversar entre sí.

Esta API puede resultar útil en muchos escenarios de su propia aplicación. Puede generar respuestas a preguntas proporcionadas por los usuarios. Esto hace posible crear chatbots sofisticados y aplicaciones basadas en información.

Puedes consultar el artículo original en: https://code.tutsplus.com/how-to-build-your-own-ai-with-chatgpt-api–cms-107327t

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *