Usar ChatGPT en Python

Publicado el 22 febrero 2023 por Daniel Rodríguez @analyticslane

La semana pasada analicé cómo puede ayudar a los científicos de datos el uso de ChatGPT, comprobando que este puede implementar rápidamente análisis de datos y modelos básicos. Para lo que utilice la aplicación de chat disponible en la propia web de OpenAI. Otro método para acceder a ChatGPT es empleando el API que ofrece OpenAI, lo que permite integrar fácilmente el modelo en aplicaciones. Veamos cómo se puede usar ChatGPT en Python mediante esta API.

Obtención de un API Key

El uso de la API de OpenAI requiere disponer de una API Key. Para obtener una de forma gratuita solamente habrá que disponer de una cuenta en OpenAI, indicar sección con ella en la página https://beta.openai.com/, pulsar sobre el nombre de usuario arriba a la derecha y seleccionar la opción View API keys. En esta página se deberá pulsar sobre el botón + Create new Secret key. La clave se mostrará en una ventana emergente y no se volverá a mostrar, por lo que es necesario guardarla en un sitio seguro.

Instalación de OpenAI en Python

Una vez creada la API Key será necesario instalar en Python el paquete openai. Algo que, como es habitual, se puede realizar mediante pip ejecutando la siguiente línea en la terminal.

pip install openai

Una vez hecho esto se puede abrir un nuevo archivo de Python, o un Notebook, y usar ChatGPT en Python.

Ejemplo de uso de ChatGPT en Python

Ahora se puede escribir un pequeño programa como el que se muestra a continuación para poder interactuar con ChatGPT. En este ejemplo solamente hay que reemplazar la cadena <API-KEY> por el API Key creada anteriormente.

import openai

# Indica el API Key
openai.api_key = "<API-KEY>"

# Uso de ChapGPT en Python
model_engine = "text-davinci-002"
prompt = "Can you implement a function to convert inches to centimeters in python?"
completion = openai.Completion.create(engine=model_engine,
                                      prompt=prompt,
                                      max_tokens=1024,
                                      n=1,
                                      stop=None,
                                      temperature=0.7)

# Mostar las respuestas en la terminal
for choice in completion.choices:
    print(f"Response: %s" % choice.text)

Obteniendo como resultado la siguiente respuesta.

Response: 

Yes, you can implement a function to convert inches to centimeters in python. Here is an example:

def inches_to_centimeters(inches):
    centimeters = inches * 2.54
    return centimeters

Conclusiones

En esta entrada se ha visto cómo obtener un API Key e instalar la librería de OpenAI para poder acceder a ChatGPT en Python. Algo que es realmente sencillo y puede ser útil para automatizar el acceso a este modelo tan interesante.

Image by jakob5200 from Pixabay