Logotipo de Zephyrnet

4 pasos para convertirse en un desarrollador de IA generativa – KDnuggets

Fecha:

4 pasos para convertirse en un desarrollador de IA generativa
Sam Altman, director ejecutivo de OpenAI, presenta las cifras de uso de productos en el OpenAI Developer Day en octubre de 2023. OpenAI considera tres segmentos de clientes: desarrolladores, empresas y usuarios en general. enlace: https://www.youtube.com/watch?v=U9mJuUkhUzk&t=120s
 

En el OpenAI Developer Day en octubre de 2023, Sam Altman, director ejecutivo de OpenAI, mostró una diapositiva sobre el uso del producto en tres segmentos de clientes diferentes: desarrolladores, empresas y usuarios en general.

En este artículo, nos centraremos en el segmento de desarrolladores. Cubriremos qué hace un desarrollador de IA generativa, qué herramientas necesita dominar para este trabajo y cómo comenzar.

Si bien algunas empresas se dedican a fabricar productos de IA generativa, la mayoría de los desarrolladores de IA generativa tienen su sede en otras empresas donde este no ha sido el enfoque tradicional. 

La razón de esto es que la IA generativa tiene usos que se aplican a una amplia gama de negocios. Cuatro usos comunes de la IA generativa se aplican a la mayoría de las empresas. 

Chatbots

4 pasos para convertirse en un desarrollador de IA generativa
Imagen generada por DALL·E 3
 

Si bien los chatbots han sido comunes durante más de una década, la mayoría de ellos han sido horribles. Normalmente, la primera interacción más común con un chatbot es preguntarle si puede hablar con un humano.

Los avances en la IA generativa, en particular los grandes modelos de lenguaje y las bases de datos vectoriales, significan que eso ya no es cierto. Ahora que los chatbots pueden ser agradables de usar para los clientes, todas las empresas están ocupadas (o al menos deberían estar ocupadas) luchando por actualizarlos.

El artículo Impacto de la IA generativa en los chatbots de MIT Technology Review tiene una buena descripción general de cómo está cambiando el mundo de los chatbots.

Búsqueda semántica

La búsqueda se utiliza en una amplia variedad de lugares, desde documentos hasta sitios web de compras e Internet mismo. Tradicionalmente, los motores de búsqueda hacen un uso intensivo de palabras clave, lo que crea el problema de que el motor de búsqueda necesita estar programado para reconocer sinónimos.

Por ejemplo, considere el caso de intentar buscar en un informe de marketing para encontrar la parte sobre segmentación de clientes. Presionas CMD+F, escribes “segmentación” y recorre las visitas hasta que encuentras algo. Desafortunadamente, se pierden los casos en los que el autor del documento escribió "clasificación" en lugar de "segmentación".

Búsqueda semántica (buscando en sentido) resuelve este problema de sinónimos al encontrar automáticamente texto con significados similares. La idea es utilizar un modelo de incrustación (un modelo de aprendizaje profundo que convierte texto en un vector numérico según su significado) y luego encontrar texto relacionado es simplemente álgebra lineal simple. Aún mejor, muchos modelos de incrustación permiten otros tipos de datos como imágenes, audio y video como entradas, lo que le permite proporcionar diferentes tipos de datos de entrada o tipos de datos de salida para su búsqueda.

Al igual que con los chatbots, muchas empresas están intentando mejorar las capacidades de búsqueda de sus sitios web mediante el uso de la búsqueda semántica.

Este tutorial sobre Búsqueda semántica de Zillus, el fabricante de la base de datos de vectores Milvus, proporciona una buena descripción de los casos de uso.

Contenido personalizado

4 pasos para convertirse en un desarrollador de IA generativa
Imagen generada por DALL·E 3
 

La IA generativa abarata la creación de contenidos. Esto hace posible crear contenido personalizado para diferentes grupos de usuarios. Algunos ejemplos comunes son cambiar el texto de marketing o las descripciones de los productos según lo que sepa sobre el usuario. También puede proporcionar localizaciones para que el contenido sea más relevante para diferentes países o grupos demográficos.

Este artículo sobre Cómo lograr la hiperpersonalización utilizando plataformas de IA generativa del evangelista digital jefe de Salesforce, Vala Afshar, cubre los beneficios y desafíos del uso de IA generativa para personalizar el contenido.

Interfaces de lenguaje natural para el software.

A medida que el software se vuelve más complicado y con todas las funciones, la interfaz de usuario se llena de menús, botones y herramientas que los usuarios no pueden encontrar ni saber cómo utilizar. Las interfaces de lenguaje natural, donde los usuarios quieren explicar lo que quieren en una oración, pueden mejorar drásticamente la usabilidad del software. La “interfaz de lenguaje natural” puede referirse a formas habladas o escritas de controlar el software. La clave es que puedes utilizar frases estándar comprensibles para los humanos.

Las plataformas de inteligencia empresarial son algunas de las primeras en adoptar esto, con interfaces de lenguaje natural que ayudan a los analistas empresariales a escribir menos código de manipulación de datos. Sin embargo, las aplicaciones para esto son bastante ilimitadas: casi todos los programas de software con muchas funciones podrían beneficiarse de una interfaz de lenguaje natural.

Este artículo de Forbes sobre Adoptando la IA y las interfaces de lenguaje natural de Gaurav Tewari, fundador y socio director de Omega Venture Partners, tiene una descripción fácil de leer de por qué las interfaces de lenguaje natural pueden ayudar a la usabilidad del software.

En primer lugar, ¡necesitas un modelo de IA generativo! Para trabajar con texto, esto significa un modelo de lenguaje grande. GPT 4.0 es el estándar de oro actual en cuanto a rendimiento, pero existen muchas alternativas de código abierto como Llama 2, Falcon y Mistral. 

En segundo lugar, necesita una base de datos vectorial. Pinecone es la base de datos de vectores comercial más popular y existen algunas alternativas de código abierto como Milvus, Weaviate y Chroma.

En términos de lenguaje de programación, la comunidad parece haberse asentado en torno a Python y JavaScript. JavaScript es importante para las aplicaciones web y Python es adecuado para todos los demás.

Además de esto, es útil utilizar un marco de aplicación de IA generativa. Los dos principales contendientes son LangChain y LlamaIndex. LangChain es un marco más amplio que le permite desarrollar una amplia gama de aplicaciones de IA generativa, y LlamaIndex se centra más estrechamente en el desarrollo de aplicaciones de búsqueda semántica. 

Si está creando una aplicación de búsqueda, utilice LlamaIndex; de lo contrario, utilice LangChain.

Vale la pena señalar que el panorama está cambiando muy rápidamente y cada semana aparecen muchas nuevas empresas de inteligencia artificial, junto con nuevas herramientas. Si desea desarrollar una aplicación, espere cambiar partes de la pila de software con más frecuencia que con otras aplicaciones.

En particular, aparecen nuevos modelos con regularidad y es probable que cambie el que tenga el mejor rendimiento para su caso de uso. Un flujo de trabajo común es comenzar a usar API (por ejemplo, la API OpenAI para la API y la API Pinecone para la base de datos vectorial), ya que se desarrollan rápidamente. A medida que su base de usuarios crece, el costo de las llamadas API puede volverse oneroso, por lo que en este punto es posible que desee cambiar a herramientas de código abierto (el ecosistema Hugging Face es una buena opción aquí).

Como con cualquier proyecto nuevo, ¡comience de manera simple! Es mejor aprender una herramienta a la vez y luego descubrir cómo combinarlas.

El primer paso es configurar cuentas para cualquier herramienta que desee utilizar. Necesitará cuentas de desarrollador y claves API para utilizar las plataformas.

Una guía para principiantes sobre la API OpenAI: tutorial práctico y mejores prácticas contiene instrucciones paso a paso sobre cómo configurar una cuenta de desarrollador OpenAI y crear una clave API.

Asimismo, Tutorial para dominar las bases de datos vectoriales con Pinecone: una guía completa contiene los detalles para configurar Pinecone.

¿Qué es abrazar la cara? El oasis de código abierto de la comunidad de IA explica cómo empezar a utilizar Hugging Face.

Aprendizaje LLM

Para comenzar a usar LLM como GPT mediante programación, lo más simple es aprender a llamar a la API para enviar un mensaje y recibir un mensaje. 

Si bien muchas tareas se pueden lograr mediante un único intercambio con el LLM, casos de uso como los chatbots requieren una larga conversación. OpenAI anunció recientemente una función de "hilos" como parte de su API de Asistentes, sobre la cual puede obtener más información en el Tutorial de API de asistentes de OpenAI

Esto no es compatible con todos los LLM, por lo que es posible que también deba aprender a administrar manualmente el estado de la conversación. Por ejemplo, debe decidir cuáles de los mensajes anteriores de la conversación siguen siendo relevantes para la conversación actual.

Más allá de esto, no hay necesidad de detenerse cuando solo se trabaja con texto. Puedes intentar trabajar con otros medios; por ejemplo, transcribir audio (voz a texto) o generar imágenes a partir de texto.

Aprender bases de datos vectoriales

El caso de uso más simple de las bases de datos vectoriales es la búsqueda semántica. Aquí se utiliza un modelo de incrustación (ver Introducción a las incrustaciones de texto con la API OpenAI) que convierte el texto (u otra entrada) en un vector numérico que representa su significado.

Luego inserta sus datos incrustados (los vectores numéricos) en la base de datos de vectores. Buscar simplemente significa escribir una consulta de búsqueda y preguntar qué entradas de la base de datos se corresponden más con lo que usted solicitó.

Por ejemplo, podría tomar algunas preguntas frecuentes sobre uno de los productos de su empresa, incrustarlas y cargarlas en una base de datos vectorial. Luego, hace una pregunta sobre el producto y devolverá las coincidencias más cercanas, convirtiendo de nuevo un vector numérico al texto original.

Combinando LLM y bases de datos vectoriales

Es posible que descubra que devolver directamente la entrada de texto desde la base de datos de vectores no es suficiente. A menudo, desea que el texto se procese de una manera que responda a la consulta de forma más natural.

La solución a esto es una técnica conocida como generación aumentada de recuperación (RAG). Esto significa que después de recuperar su texto de la base de datos de vectores, escribe un mensaje para un LLM y luego incluye el texto recuperado en su mensaje (usted aumentar el mensaje con el recuperado texto). Luego, le pide al LLM que escriba una respuesta legible por humanos.

En el ejemplo de responder preguntas de los usuarios en las preguntas frecuentes, escribiría un mensaje con marcadores de posición, como el siguiente.

"""
Please answer the user's question about {product}.
---
The user's question is : {query}
---
The answer can be found in the following text: {retrieved_faq}
"""

 

El último paso es combinar tus habilidades de RAG con la capacidad de gestionar hilos de mensajes para mantener una conversación más larga. ¡Voilá! ¡Tienes un chatbot!

DataCamp tiene una serie de nueve códigos para enseñarle a convertirse en un desarrollador de IA generativa. Necesitas conocimientos básicos de Python para empezar, pero todos los conceptos de IA se enseñan desde cero.

La serie está impartida por los mejores instructores de Microsoft, Pinecone, Imperial College London y Fidelity (¡y yo!).

Aprenderá sobre todos los temas tratados en este artículo, con seis códigos centrados en la pila comercial de OpenAI API, Pinecone API y LangChain. Los otros tres tutoriales se centran en los modelos de Hugging Face.

Al final de la serie, podrá crear un chatbot y crear aplicaciones de PNL y visión por computadora.
 
 

Algodón Richie es un evangelista de datos en DataCamp. Es el presentador del podcast DataFramed, ha escrito dos libros sobre programación en R y ha creado 2 cursos de DataCamp sobre ciencia de datos que han sido realizados por más de 10 estudiantes.

punto_img

Información más reciente

punto_img