1. Creación de un chatbot básico de ChatGPT en Python [0]

thumbnail Este apartado explica cómo construir un chatbot básico de ChatGPT utilizando Python, centrándose en la configuración inicial y la ejecución de un script sencillo.

1.1. Preparación del entorno de desarrollo [5]

  1. Para empezar a construir un chatbot de ChatGPT, se necesitan tres elementos principales [5]:
    1. Un IDE (Entorno de Desarrollo Integrado), que es una aplicación para escribir código [7].
      • Se recomienda Visual Studio Code porque es gratuito, popular y fácil de instalar en Windows y Mac [8].
    2. Python debe estar instalado en la máquina [12].
      • Se puede instalar buscando "Python" en la sección de extensiones de Visual Studio Code y haciendo clic en "Instalar" [13].
    3. Una clave secreta de OpenAI es necesaria para conectar la aplicación con el modelo de lenguaje de ChatGPT [16].
      • Esta clave se obtiene creando una cuenta de OpenAI, la misma que se usa para iniciar sesión en ChatGPT [17].
      • Una API (Interfaz de Programación de Aplicaciones) permite que dos aplicaciones interactúen, y esta clave conecta el modelo de lenguaje de ChatGPT a la aplicación [20].
  2. Se debe descargar una carpeta con el código proporcionado para seguir el tutorial [22].
    1. Los principiantes pueden simplemente arrastrar y soltar la carpeta en el icono de Visual Studio Code [25].

1.2. Configuración y ejecución del chatbot simple [27]

  1. El primer paso en el código es insertar la clave API de OpenAI dentro de las comillas [28].
    1. Aunque hay varias formas de hacer esto, el tutorial se centra en la simplicidad para principiantes [30].
  2. El código del chatbot simple consta de tres partes principales [36]:
    1. La primera parte importa el paquete OpenAI, que facilita la implementación del modelo de lenguaje [38].
      • Esto se hace con la línea import openai [41].
    2. La segunda parte vincula la cuenta de OpenAI a Python usando la clave API [42].
      • Esto se logra con openai.api_key = "TU_CLAVE_API" [43].
    3. La tercera parte envía una solicitud a ChatGPT [47].
      • Se utiliza el modelo GPT-3.5 Turbo, que es más económico [48].
      • Se envía un mensaje como usuario, por ejemplo, "Escribe un ensayo sobre pingüinos" [49].
      • La documentación de OpenAI es una enciclopedia que explica todos estos detalles y es una fuente confiable para entender el código [50].
  3. Antes de ejecutar el código, se debe instalar el paquete de OpenAI [58].
    1. Esto se hace escribiendo pip install openai en la terminal [59].
    2. Este paso solo se necesita hacer una vez [61].
  4. El comando print se utiliza para mostrar el texto de la respuesta de ChatGPT en la terminal [54].
    1. Para ejecutar el archivo Python, se puede hacer clic en el botón de "play" o abrir una nueva terminal y ejecutar el comando [57].
  5. Después de unos segundos, ChatGPT generará una respuesta, como un ensayo sobre pingüinos [67].
    1. El script conecta la cuenta de OpenAI, solicita una respuesta al modelo GPT-3.5 Turbo y la muestra en la terminal [70].
    2. Se puede cambiar la pregunta para obtener diferentes respuestas, como ideas para aplicaciones [72].
  6. Usar la API de Python es más económico que usar la versión de navegador de ChatGPT o el Playground, costando una fracción de centavo por respuestas simples [78].

2. Creación de un chatbot con memoria y personalización [81]

thumbnail

Este apartado describe cómo construir un chatbot más avanzado que puede recordar conversaciones anteriores y ser personalizado.

2.1. Desarrollo de un chatbot interactivo [81]

  1. Se puede crear un chatbot que recuerde conversaciones y permita una interacción bidireccional con solo 14 líneas de código, a diferencia del chatbot simple de una sola pregunta y respuesta [82].
    1. Este chatbot fue desarrollado por Greg Borsch y se explica en una publicación de blog [81].
    2. Para usarlo, solo se necesita copiar la clave API de OpenAI en el código [85].
  2. El chatbot interactivo permite al usuario definir su personalidad [86].
    1. Por ejemplo, se puede configurar como un "asistente personal descarado y cansado" [87].
    2. Cuando se le pregunta cómo empezar a aprender Python, el asistente responderá con un tono acorde a su personalidad [89].
  3. El funcionamiento interno de este chatbot para usuarios intermedios de Python incluye [92]:
    1. Importar el paquete OpenAI y vincular la cuenta con la clave API [92].
    2. Crear una lista llamada messages que la API espera recibir para mantener el historial de la conversación [93].
    3. Configurar una variable de mensaje del sistema que toma la entrada del usuario y la añade a la lista messages en el formato requerido por OpenAI [94].
    4. Un bucle while se ejecuta continuamente hasta que se le indica que se detenga [96].
    5. Dentro del bucle, se toma una nueva entrada del usuario y se añade a la lista messages [98].
    6. La API de ChatGPT 3.5 Turbo recibe la lista messages actualizada con todas las entradas anteriores y la nueva [99].
    7. La respuesta de la API se guarda en una nueva variable y se añade a la lista messages para que el chatbot recuerde la conversación [100].
    8. Finalmente, la respuesta se imprime para el usuario, y el proceso se repite, haciendo que la lista messages crezca con cada interacción [103].
  4. Si alguna parte del código no se entiende, se puede preguntar a ChatGPT para obtener explicaciones detalladas, como "cómo pedir una entrada en Python" [107].

3. Alojamiento de un chatbot personalizado en la web [110]

thumbnail

Este apartado detalla cómo alojar un chatbot de ChatGPT personalizado en un navegador web y compartirlo con otros.

3.1. Configuración y personalización del chatbot web [110]

  1. Para crear un chatbot web, se utiliza un nuevo paquete llamado Gradio [112].
    1. Se debe instalar Gradio ejecutando pip install Gradio en la terminal [114].
  2. Al igual que en los ejemplos anteriores, se debe insertar la clave API de OpenAI en el código [116].
  3. La personalización del chatbot se realiza en la variable messages [117].
    1. Por ejemplo, se puede configurar el chatbot para que actúe como un "psicólogo" [118].
  4. El código define una función que consulta la API de ChatGPT utilizando las entradas del usuario para generar una respuesta, la cual se envía a Gradio [119].
    1. Si no se entiende qué es una función en Python, se puede preguntar a ChatGPT [120].
  5. La implementación de Gradio es sencilla y permite que el chatbot funcione en un navegador [122].

3.2. Despliegue y uso del chatbot web [124]

  1. Al ejecutar el script, se genera un enlace HTTP con una dirección IP [124].
    1. Al pegar este enlace en un navegador web, se abre el chatbot personalizado [127].
  2. El chatbot recuerda la conversación y mantiene su personalidad [133].
    1. Por ejemplo, si se configura como un psicólogo y se le pregunta sobre el cansancio, dará consejos como tal [130].
    2. Si luego se le pide que escriba un tuit sobre sus cualificaciones y los problemas del usuario, lo hará desde la perspectiva de un psicólogo cualificado [133].
  3. Para compartir el chatbot con amigos, se debe añadir share=True dentro de los paréntesis de la función launch [137].
    1. También se puede personalizar el título del chatbot cambiando el texto en title="Tu Título" [138].
    2. Cada vez que se actualiza el código, es más fácil cerrar la aplicación y volver a abrirla para que los cambios surtan efecto [140].
  4. Al ejecutar la aplicación con share=True, se proporciona una URL local y otra que termina en .gradio.live [142].
    1. La URL .gradio.live permite acceder al chatbot desde cualquier dispositivo, como un teléfono, y compartirlo con otros [143].
  5. El chatbot es infinitamente personalizable; se puede cambiar su rol, por ejemplo, de psicólogo a "experto financiero especializado en inversión inmobiliaria y negociación", y el título a "Real Estate Pro" [145].
  6. Si surgen problemas durante el proceso, se puede consultar a ChatGPT, pero hay que tener en cuenta que aún no está actualizado a la nueva API de ChatGPT 3.5 Turbo [147].
    1. ChatGPT podría referirse a la antigua API de DaVinci GPT, que es 10 veces más cara [148].
    2. La fuente más fiable de información es siempre la documentación de OpenAI [150].