No se trata de lo que quieres comprar, sino de quién quieres ser. Aprovecha el precio especial.

Antes: $249

Currency
$209

Paga en 4 cuotas sin intereses

Paga en 4 cuotas sin intereses
Suscríbete

Termina en:

14 Días
19 Hrs
34 Min
40 Seg

¿Cómo usar la API de OpenAI en tu producto?

1/24
Recursos
Transcripción

En la era digital que vivimos, la inteligencia artificial (IA) ha abierto caminos insospechados en múltiples sectores. Gracias a los avances en esta tecnología, hoy tenemos a nuestra disposición herramientas potentes como los Large Language Models (LLM), capaces de comprender y generar lenguaje humano con una precisión asombrosa. ¿Cómo podemos aprovechar estos modelos en nuestros productos y aplicaciones? ¿Qué problemas pueden resolver? Acompáñame en un recorrido lleno de aprendizaje y descubrimientos que transformarán tu manera de interactuar con la tecnología.

¿Qué son los Large Language Models y cómo se aplican?

Los LLM, como el popular Chat GPT o la API de OpenAI, se entrenan con extensos conjuntos de datos para realizar tareas de procesamiento de lenguaje natural (NLP) con gran efectividad.

¿En qué tareas destacan los LLM?

Los LLM se utilizan ampliamente en:

  • Clasificación de texto
  • Generación de contenido
  • Traducción de idiomas
  • Interacción a través de chatbots
  • Creación de líneas de código de programación

¿Cómo prepararse para trabajar con estos modelos?

Es crucial tener habilidades en:

  1. Programación en Python (uso de funciones, APIs, herramientas como Visual Studio Code y Anaconda).
  2. Uso de Chat GPT (creación efectiva de prompts).
  3. Entrenamiento de modelos de Machine Learning, especialmente en NLP.

Implementando LLM con la API de OpenAI

A través de ejemplos prácticos, enseñaré cómo utilizar la API de OpenAI para integrar LLM en aplicaciones.

Primeros pasos: Instalación e importación de librerías

Comenzaremos por instalar la librería de OpenAI utilizando el gestor de paquetes Pip en un nuevo notebook de Python. Luego, importaremos la librería con import openai.

Accediendo a la API: Crear y configurar una API key

Para conectar nuestros programas con los modelos de OpenAI, necesitamos:

  1. Crear una cuenta de OpenAI y optar por los créditos gratuitos o configurar el método de pago.
  2. Generar una API key única y segura, que se copiará en nuestro notebook para establecer la conexión.

Desarrollo práctico: Analizando el sentimiento en Twitter

Con la API ya configurada:

  1. Elegiremos un modelo de OpenAI, como Text DaVinci 003.
  2. Configuraremos parámetros del modelo (temperatura, max tokens, topP, y penalizaciones).
  3. Daremos instrucciones claras al modelo para analizar el sentimiento de un tweet específico.

Tras ejecutar la solicitud a OpenAI, obtendremos una clasificación del sentimiento del tweet.

Construyendo un proyecto: Personalización y Fine Tuning

En este curso, nuestro proyecto será desarrollar un chatbot, el "Platzi Bot", aplicando técnicas de personalización y Fine Tuning para un modelo de OpenAI.

Posibilidades futuras: Expandir habilidades y herramientas

Una vez dominados los fundamentos, podremos:

  • Conectar con bases de datos.
  • Usar herramientas como Lancheng.
  • Profundizar en la técnica de Prompt Engineering.

Esto nos permitirá no solo completar el curso sino también innovar y llevar nuestros proyectos al siguiente nivel con los LLM.

Mi nombre es Kathleen Cove, con tres años de experiencia en IA. Te invito a sumergirte en este fascinante mundo de los modelos de OpenAI. Juntos, aprenderemos a navegar en este mar de posibilidades que la inteligencia artificial pone a nuestro alcance. ¡Manos a la obra!

Aportes 48

Preguntas 13

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

Para quien quiera compartir su notebook sin preocuparse por compartir su API key, pueden hacer lo siguiente:

  1. Ir a la terminal y ejecutar touch .env para crear un archivo donde pueden almacenar variables de entorno.
  2. Abrir el archivo .env con algún editor de texto y asignarle a una variable su API key (p. ej. OPENAI_API=a47eb969-c08a-40). Guardar los cambios y salir del editor.
  3. Abrir su notebook y en una celda incluir y ejecutar el siguiente código:
from dotenv import load_dotenv
import os

# Toma las variables de entorno del archivo .env
load_dotenv() 

# Carga la variable que contiene el API key de OpenAI
API_KEY = os.environ["OPENAI_API"]

openai.api_key = API_KEY

Con esto asignarán su llave de OpenAI a openai.api_key. De esta forma otras personas pueden correr el notebook con sus propias credenciales siguiendo Ios pasos anteriores.

Nota: Es importante incluir su archivo .env en su archivo .gitignore para no compartir sus variables de entorno (en este caso su API key de OpenAI). Para instalar dotenv pueden hacerlo con pip install python-dotenv o revisar más detalles aquí.

Espero que esto puede ser de utilidad para alguien 😁.

Resumen de la Clase

¿Que son los LLM?
Son modelos entrenados para hallar relacion entre frases, palabras, textos similares. Algunos ejemplos:

  • PaLM 2
  • GPT 3 y 4
  • LLaMA
    Algunos productos que se pueden integrar con la API de OpenAI son:
  • GTP-3 y 4
  • Dall-E
  • Whisper
  • Codex

Que problemas resuelven estos?:

  • Clasificacion
  • Generación
  • Traduccion
  • Uso de Chatbots
  • Generacion de Codigo

Algunos de los cursos mencionados:

Finally, se ve perfecto este curso, trabajo con Azure y esta info esta valiosa

👍 Like para que Platzi lance un curso sobre Llama 2.

Que bonitoo verde Carlita! se ve que será un curso increíble

Alumno Platzi.

Si te pasó como a mi que la cuenta ya tenía expirados los créditos gratuitos, no te preocupes. Al dar de alta tu tarjeta te hará un cargo de 5 USD, las peticiones son ínfimas, calculo que de todo el curso (y claro, depende de cómo lo uses también) no gastas más de esos 5USD y ya siendo muy exagerado.

Vale la pena crear la cuenta de pago para aprender esto, créeme.

Excelente! Empecemos 🚀

Uno más de IA!

Considero que deben actualizar esta clase. Gracias.
Qué cursos debería realizar antes de este curso?

Como explica es otro nivel mucha calidad!

Bastante emocionado por la creacion de mi propio bot
Aquí lo comparto de otra manera, apreciaría cualquier corrección. ![](https://static.platzi.com/media/user_upload/image-262e3de2-8a66-4da4-b971-93247d497a18.jpg)

No tengo experiencia en phyton. Llevaré primero ese curso por que el resto de conocimientos si los tengo.

Excelente

Este curso se ve muy prometedoooor, python, Azure, PLN, Api OpenAi, ChatGPT… combinación para crear un muy buen curso. 😍😍

ese modelo ya esta en desuso
He realizado todo el ejercicio según la instrucción de la clase pero no puedo obtener la respuesta. Aparece: NameError: name 'response' is not defined
tengo ChatGpt plus, pero me sigue apareciendo el error 429
Comparto mi script ```js import openai # Configura tu clave de API openai.api_key = 'tuclave' # Función para analizar el sentimiento de un tweet def analyze_sentiment(tweet): response = openai.completions.create( model="gpt-3.5-turbo-instruct", prompt=f"Decide si el sentimiento de un Tweet es positivo, neutral, o negativo. \ \n\nTweet: \"{tweet}\"\nSentiment:", temperature=0, max_tokens=60, top_p=1.0, frequency_penalty=0.5, presence_penalty=0.0 ) sentiment = response.choices[0].text.strip() return sentiment # Bucle para ingresar múltiples tweets while True: tweet = input("Ingresa el tweet (o escribe 'salir' para finalizar): ") if tweet.lower() == 'salir': break sentiment = analyze_sentiment(tweet) print(f"Sentimiento: {sentiment}") ```import openai \# Configura tu clave de APIopenai.api\_key = 'tuclave' \# Función para analizar el sentimiento de un tweetdef analyze\_sentiment(tweet):    response = openai.completions.create(        model="gpt-3.5-turbo-instruct",        prompt=f"Decide si el sentimiento de un Tweet es positivo, neutral, o negativo. \        \n\nTweet: \\"{tweet}\\"\nSentiment:",        temperature=0,        max\_tokens=60,        top\_p=1.0,        frequency\_penalty=0.5,        presence\_penalty=0.0    )    sentiment = response.choices\[0].text.strip()    return sentiment \# Bucle para ingresar múltiples tweetswhile True:    tweet = input("Ingresa el tweet (o escribe 'salir' para finalizar): ")    if tweet.lower() == 'salir':        break    sentiment = analyze\_sentiment(tweet)    print(f"Sentimiento: {sentiment}")
Hay alguna actualización de este código en octubre 2024?, aún no me funciona.
Holas, Yo puedo programar en Python, sin saber Python, o por lo menos apreder sobre la marcha, pero creaer notebooks? como se hace eso, como llego hasta ahí, no indican ninguna referncia solo asumen que uno ya sabe, y aunque uno sepa programar, creo que lo de noteboks es otra cosa ... Alguien que me heche una mano, please, para poder iniciar el curso ...
El tercer bloque actualizado para utilizar gpt-4o-mini: ```python response = openai.chat.completions.create( model="gpt-4o-mini", messages=[ {"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "Decide si el sentimiento de un Tweet es positivo, neutral, o negativo. \n\nTweet: \"#LoNuevoEnPlatzi es el Platzibot 🤖. Un asistente creado con Inteligencia Artificial para acompañarte en tu proceso de aprendizaje.\" \nSentiment:"} ], temperature=0, max_tokens=60, top_p=1.0, frequency_penalty=0.5, presence_penalty=0.0 ) ``` Y el print: ```python print(response.choices[0].message.content) ```
El tercer bloque actualizado para utilizar **gpt-4o-mini**: ```js response = openai.chat.completions.create( model="gpt-4o-mini", messages=[ {"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "Decide si el sentimiento de un Tweet es positivo, neutral, o negativo. \n\nTweet: \"#LoNuevoEnPlatzi es el Platzibot 🤖. Un asistente creado con Inteligencia Artificial para acompañarte en tu proceso de aprendizaje.\" \nSentiment:"} ], temperature=0, max_tokens=60, top_p=1.0, frequency_penalty=0.5, presence_penalty=0.0 ) ```response = openai.chat.completions.create( model="gpt-4o-mini", messages=\[ {"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "Decide si el sentimiento de un Tweet es positivo, neutral, o negativo. \n\nTweet: \\"#LoNuevoEnPlatzi es el Platzibot 🤖. Un asistente creado con Inteligencia Artificial para acompañarte en tu proceso de aprendizaje.\\" \nSentiment:"} ], temperature=0, max\_tokens=60, top\_p=1.0, frequency\_penalty=0.5, presence\_penalty=0.0 ) y el print: ```js print(response.choices[0].message.content) ```print(response.choices\[0].message.content)
yo no pude descargar .-... que hago
lo hice igual nose que fallo ya revise y nol,e encuen![](https://static.platzi.com/media/user_upload/image-44e24ec6-e31a-4c21-b4b7-74fef7c5f88b.jpg)![]()tro
```js response = openai.Completions.create( model='text-davinci-003', prompt= 'Decide si el sentimiento de un Tweet es positivo, neutral, o negativo.\ \n\nTweet:Me gustaria decirle a mi gato que no lo lo quiero y lo voy a regalar aun que sea mentira.\ \n\nSentimient:', temperature=0, max_tokens=60, top_p=1, frequency_penalty=0.5, presence_penalty=0 ) ```
```js response = openai.Completions.create( model='text-davinci-003', prompt= 'Decide si el sentimiento de un Tweet es positivo, neutral, o negativo.\ \n\nTweet:Me gustaria decirle a mi gato que no lo lo quiero y lo voy a regalar aun que sea mentira.\ \n\nSentimient:', temperature=0, max_tokens=60, top_p=1, frequency_penalty=0.5, presence_penalty=0 ) ``` response = openai.Completions.create( model='text-davinci-003', prompt= 'Decide si el sentimiento de un Tweet es positivo, neutral, o negativo.\\ \n\nTweet:Me gustaria decirle a mi gato que no lo lo quiero y lo voy a regalar aun que sea mentira.\\ \n\nSentimient:', temperature=0, max\_tokens=60, top\_p=1, frequency\_penalty=0.5, presence\_penalty=0 )
```python #usando método Completion para obtener respuesta del modelo. #En model me indica que debo de reemplazar a "text-davinci-003 por actualización" response = openai.Completions.create( model='text-davinci-003', prompt= 'Decide si el sentimiento de un Tweet es positivo, neutral, o negativo.\ \n\nTweet:Me gustaria decirle a mi gato que no lo lo quiero y lo voy a regalar aun que sea mentira.\ \n\nSentimient:', temperature=0, max_tokens=60, top_p=1, frequency_penalty=0.5, presence_penalty=0 ) El error que me sale es el siguiente: Cell In[60], line 3 response = openai.Completions.create( ^ IndentationError: unexpected indent ```#usando método Completion para obtener respuesta del modelo. \#En model me indica que debo de reemplazar a "text-davinci-003 por actualización" response = openai.Completions.create( model='text-davinci-003', prompt= 'Decide si el sentimiento de un Tweet es positivo, neutral, o negativo.\\ \n\nTweet:Me gustaria decirle a mi gato que no lo lo quiero y lo voy a regalar aun que sea mentira.\\ \n\nSentimient:', temperature=0, max\_tokens=60, top\_p=1, frequency\_penalty=0.5, presence\_penalty=0 )
Hola buenas Miguel Torres soy nuevo en este tema sobre inteligencia artificial me gusta como explican y me facil aprender de la forma que explican sus temas voy iniciando con el curso y me surguen algunos problemas con el primer ejemplo me sale error![](https://drive.google.com/file/d/1ZGrhADoyV_rVjx1-36gbYUutRiEdVRX6/view?usp=sharing)
Hola buenas Miguel Torres soy nuevo en este tema sobre inteligencia artificial me gusta como explican y me facil aprender de la forma que explican sus temas voy iniciando con el curso y me surguen algunos problemas con el primer ejemplo me sale error![](https://drive.google.com/file/d/1lFcG89Cw0QfWuF-PTUi-tSKOg27WJ6-7/view?usp=drive_link) me gustaria saber si me puede ayudar.
![](<C:\Users\sergi\Documents\Imágenes\Capturas de pantalla>)
Hola a todos, no me salió a primera, entonces empecé a experimentar y busque otras formas. Dejo el resultado aquí, aun asi no me desanimaré, lo volveré a intentar, hasta que pueda tener control sobre esto. ![](https://static.platzi.com/media/user_upload/image-c3c9d4e7-4b31-4298-b811-6897607d6611.jpg)
**Se desactualizo, me da el siguiente error** \--------------------------------------------------------------------------- APIRemovedInV1 Traceback (most recent call last) [\<ipython-input-14-12937478dc75>](https://localhost:8080/#) in \<cell line: 3>() 1 # usando método Completion para obtener repuesta del modelo 2 \----> 3 response = openai.Completion.create( 4 model= 'text-davinci-003', 5 prompt = 'Decide si el sentimiento de un Tweet es positivo, neutral, o negativo. \\ 2 frames[/usr/local/lib/python3.10/dist-packages/openai/lib/\_old\_api.py](https://localhost:8080/#) in \_\_load\_\_(self) 31 @override 32 def \_\_load\_\_(self) -> None: \---> 33 raise APIRemovedInV1(symbol=self.\_symbol) 34 35 APIRemovedInV1: You tried to access openai.Completion, but this is no longer supported in openai>=1.0.0 - see the README at <https://github.com/openai/openai-python> for the API. You can run `openai migrate` to automatically upgrade your codebase to use the 1.0.0 interface. Alternatively, you can pin your installation to the old version, e.g. `pip install openai==0.28` A detailed migration guide is available here: [https://github.com/openai/openai-](https://github.com/openai/openai-python/discussions/742)
Si les da problemas en la instalación de la biblioteca de OpenAI puede ser por su version de Python. Yo tenia la 3.12 y la cambie a 3.9 y funciono. Error que tenia: `ERROR: Could not build wheels for aiohttp, which is required to install pyproject.toml-based projects` Solucion: 1\. Crear un condo environment con python 3.9 ```bash conda create -n PlatziIA2 python=3.9 ``` 2\. Activar environment ```bash Honda activate PlatziIA2 ``` 3\. Continuar con el notebook ```bash !pip install openai ```
`response = openai.Completion.create( model = 'text-davinci-003', prompt = ''' Decide si el sentimiento de un Tweet es positivo, neutral, o negativo. Tweet: “Este 2023 deportivamente fue muy regular, pero terminamos la temporada y preparamos la próxima” Rigoberto Urán, ciclista colombiano. Sentiment: ''', temperature = 0, max_tokens = 60, top_p = 1, frequency_penalty = 0.5, presence_penalty = 0,)`
Me gusta la dicción de esta profe, suena muy cool
tuve problemas al instalar la biblioteca openai, pero luego vi que era x la versión de python, le baje a la 3.8 y todo fluyó ok. Saludos.
HOLA No puedo acceder a los recursos de este curso alguien me puede ayudar por favor

Es que enserio me encanta la animación de la intro jajal

Este curso vale oro, Esta en ingles en udacity y lo que aprendamos es super ! gracias platzi

Este curso se ve super bueno , Gracias platzi

Graaande Carli! ❤️

¡El curso que estaba esperando! Apenas lo vi en YT, entré aquí

Excelente, quiero especializarme en NLP🤩

A darle con todo!

Genial IA! ❤️

Vamos con toda ⚡🤖