Reto21dias.IA generativa. Resumen día 9

En el noveno día del reto, un hallazgo colateral ha sido este calculador de tokens. Más allá de la curiosidad de ver cómo se agrupan las palabras en tokens, pone de manifiesto que los modelos generativos preentrenados como GPT no entienden texto realmente. Cada token es un número, una posición en un hiperespacio de muchas dimensiones. La proximidad con otros tokens genera una probabilidad de ser el siguiente elegido para construir lo que nosotros vemos como texto, imágenes o código. Las palabras se convierten en tokens, pero cada token es un número que se ubica en una posición del espacio. Eso es lo que trabajan los GPT, números que tienen identificadores y están situados en el hiperespacio con mayor o menor proximidad a otros. No entienden las palabras literalmente. Esto me ayuda a explicar cómo funcionan. También he conocido más en detalle la API de OpenAI y he seguido dos tutoriales. En uno había definiciones y enlaces, como la descripción de embeddings, útiles para búsquedas y agrupación, cosas vinculadas a mis casos de uso. Los embeddings son importantes. También da una idea de cuánto equivale un token, unos 4 caracteres, y que un token son unos 3/4 de una palabra inglesa. Con eso puedo estimar tokens y carga de trabajo para los modelos. Es importante saber los límites de tokens de cada modelo. En GPT se cuentan tokens tanto del prompt como de la respuesta generada. En embeddings solo del prompt. He probado códigos de ejemplo de Python de un tutorial y me han funcionado en Colab. Por último, he obtenido unos 10 enlaces interesantes para consultar en el futuro, que me llevarán unos 2-4 días más del reto. #Reto21dias #IAgenerativa

Visitas: 51

Reto21dias.IA generativa. Resumen día 8

 

Llevo ocho días con mi reto de 21 días y ya empiezo a resolver algunas de las cosas que tenía ganas de hacer desde hace meses. No es la foto del mono comiendo hamburguesas, sino que ya tengo acceso directo a la API de OpenAI sin pasar por AZURE . Es cierto que también he podido configurar AZURE y ya podría programar desde Python directamente sobre la API de OpenAI o a través de AZURE conectarme con ella. Pero bueno, ya tengo las dos vías. He estado haciendo pruebas, mandando texto y pidiendo que me hagan algunas imágenes. En una hora me han costado 0,07€, así que aunque los tokens cuestan, no es tanto si no mandas un volumen enorme. Lo importante es que ya puedo interactuar con ChatGPT a través de Python para mandar mensajes básicos, que no mejora mucho lo que hago por la interfaz web, pero mi idea es trabajar en las próximas semanas con el fine tuning y los embeddings para hacer cosas más diferentes. De momento voy a trabajar directamente sobre la API de OpenAI y si me queda tiempo, intentaré con AZURE , que parece más engorroso que Python contra la API. He seguido una guía web que te cuenta cómo interactuar con ChatGPT en Python con tres ejemplos: mandar/recibir mensajes, crear una foto y preguntar por problemas en un código. He conseguido clonar los tres ejemplos en funciones de Python. He tenido que retocar algunas cosas porque estaba en Google Colab, pero haciendo pequeños cambios he resuelto los casos. #Reto21dias #IAgenerativa

Visitas: 38

Reto21dias.IA generativa. Resumen día 7

### Más sobre Azure y OpenAI Service

Continué con varios cursos de Azure, esta vez centrados en el OpenAI Service. También me sumergí en varias páginas vinculadas dentro de estos cursos. De particular interés fue un módulo que proporcionaba una explicación extensa y clara de los “embeddings”, que encontré muy útil.

### Explorando Python

Además, jugué un poco con mi computadora Windows para ver si tenía Python instalado. Al final, decidí seguir trabajando con Google Colab y no alterar mi computadora instalando Python, al menos por ahora.

#Reto21dias #IAgenerativa

Visitas: 41

Reto21dias.IA generativa. Resumen día 6

### Azure y el Servicio de OpenAI

Mi principal trabajo fue un curso de Azure centrado en el servicio de OpenAI. Durante el curso, me encontré con varios conceptos nuevos, incluyendo los “embeddings”. Aunque el curso proporcionó alguna definición, todavía no comprendo del todo este concepto.

En esencia, el modelo que estás programando recibe entradas y proporciona salidas. Este proceso se lleva a cabo en un portal, que comúnmente llamamos un chatbot. Los usuarios proporcionan algo que utilizas como entradas para tu función y en el mismo portal puedes devolver al usuario las salidas de tu función.

También descubrí que, para usar el servicio de Azure, no basta con crear una cuenta en Azure y solicitar el alta en el servicio. También debes abrir un recurso para luego crear y desarrollar modelos en él. En este sentido, me inscribí en dos tipos de recursos relacionados con la generación de texto y los embeddings, pero no con la generación de imágenes.

Otro descubrimiento interesante fue que OpenAI un rendimiento excepcionalmente bueno con algunos lenguajes de programación como C, JavaScript, PHP o Perl, pero no tanto con Python.

#Reto21dias #IAgenerativa

Visitas: 34

Reto21dias.IA generativa. Resumen día 5

Voy compartir la recapitulación de mi quinto día con el reto. Este día ha sido un poco más caótico de lo normal, ya que no seguí el orden que había planeado inicialmente. En lugar de continuar donde lo dejé ayer, me desvié hacia un nuevo camino.

Recibí una aceptación para usar el Open AI Service de Azure, y en el correo de aceptación, se me proporcionó información adicional que podía explorar. Motivado por la curiosidad, decidí dedicar una parte de mi día a esta nueva información.

Pasé un tiempo viendo un video de aproximadamente 15 minutos que explicaba las diferentes funciones disponibles en el Open AI Service de Azure. El video mostró varios ejemplos, algunos de los cuales eran muy similares a lo que estaba buscando en términos de casos de uso. En resumen, siento que estoy en el lugar correcto, aunque aún queda por evaluar el costo de todo esto.

Además, pude recuperar las consultas de los casos de uso que me interesaban del Microsoft Innovation Summit que se celebró el 5 de julio. Logré acceder al video del evento que está disponible en YouTube. Mientras buscaba fragmentos específicos del video, pude ver las consultas que me interesaban.

Desafortunadamente, con todas estas actividades, he agotado todo el tiempo disponible para el reto de hoy. Sin embargo, estoy emocionado por lo que el futuro puede traer en este desafío.
#Reto21dias #IAgenerativa

Visitas: 14

Reto21dias.IA generativa. Resumen día 4

En mi cuarto día trabajando en el reto de inteligencia artificial generativa, he descubierto que es posible utilizar rutas en el contexto cuando uso Claude como motor de búsqueda. Aunque el proceso es lento, funciona eficientemente.

He profundizado en mi conocimiento de Azure, una herramienta de inteligencia artificial. Revisé la información en la página principal de Azure y confirmé que me permite acceder a la API de OpenAI. Además, creo que Azure puede admitir “embeddings”, lo que es relevante para mis casos de uso.

Me he centrado en entender los precios en Azure para la opción más cara: 1000 tokens para el GPT4-32K. Había cierta confusión sobre lo que constituye un token y cuánto texto equivale a un token. Sin embargo, después de peguntar a a GPT4, pude interpretar la tabla de precios de Azure con más claridad. Descubrí que los precios varían dependiendo de los tokens enviados y recibidos.

Como parte de este aprendizaje, me registré en el servicio de OpenAI para poder programar las APIs directamente. Este proceso de registro, que incluyó configurar una cuenta de Azure con Office 365, fue un poco complejo y requirió alrededor de dos horas de trabajo.

Finalmente, estoy esperando confirmación de mi registro en OpenAI Service. El mensaje de bienvenida contiene suficiente material como para mantenerme ocupado durante dos días más.

#Reto21dias #IAgenerativa

Visitas: 13

Reto21Dias IA generativa. Resumen día 3

En el tercer día de mi desafío con la inteligencia artificial generativa, he pasado de la lectura a la acción, y he comenzado a experimentar con la creación de bots personales a través de la plataforma POE. Mi objetivo es crear soluciones que respondan a los dos casos de uso específicos que me planteé.

La creación de estos bots no requiere programación en el sentido tradicional. En lugar de eso, se basa en el establecimiento de un ‘prompt’ que el sistema recuerda cada vez que interactúa con el bot. Sin embargo, aún no estoy seguro de si es posible alimentar estos bots con textos, PDFs o páginas web personales, ya que la documentación no especifica cómo hacerlo. He contactado con los desarrolladores de la plataforma para obtener más claridad sobre esto.

He encontrado información útil en developer.poe.com, aunque llegar a esa fuente de información no fue tan sencillo como esperaba inicialmente. También encontré también un blog útil que explicaba varios aspectos de la creación de bots.

Mis experimentos se centraron en dos áreas: las respuestas contextualizadas por un ‘prompt’ y la clasificación. En el primer caso, comparé las respuestas de mi bot personal con las del bot genérico. Encontré que mi bot proporcionaba respuestas ligeramente más específicas, aunque aún necesito realizar más pruebas para confirmar esto.

En el segundo caso, utilicé el ‘prompt’ para guiar la clasificación de texto del bot. Alimenté al bot con un texto y me devolvió una tabla con la clasificación. Probé esto a pequeña escala con 50 resúmenes que había clasificado manualmente y encontré que el bot replicaba de manera razonable mi clasificación. Me gustó que el bot no solo clasificara el texto, sino que también proporcionara una explicación de sus decisiones si se lo pedía.

Comparé los resultados obtenidos con chat GPT-4 y Claude, ajustando la ‘temperatura’ en ambos casos. Encontré que chat GPT-4 parecía funcionar mejor, aunque esto puede deberse a diferencias en la forma en que cada plataforma interpreta la ‘temperatura’. Además, chat GPT-4 presenta los resultados en forma de tabla, que es más fácil de leer que la presentación separada por tabuladores de Claude.

En el futuro, planeo repetir estos experimentos con un mayor número de casos y comparar los resultados de ambas plataformas. También me interesa explorar las capacidades de Azure y planeo tomar algunos cursos de Microsoft para familiarizarme más con esta plataforma. Mientras tanto, continuaré perfeccionando mis prototipos y experimentando con ellos para ver cómo se desempeñan en diferentes situaciones.
#Reto21dias #IAgenerativa

Visitas: 31

Reto21Dias IA generativa. Resumen dia 2

En el segundo día, continué trabajando en los casos de uso que había planteado en el primer día. Comparé mis casos de uso con los presentados en la charla del Microsoft Innovation Summit el 5 de julio. Durante este proceso, revisé mis notas y encontré similitudes y diferencias respecto a lo que se había discutido en la conferencia.

Los casos de uso que planteé se centran en el entrenamiento de un modelo de inteligencia artificial (AI) para realizar múltiples tareas, sin necesidad de alterar el entrenamiento del motor de lenguaje natural. Durante la conferencia, se expusieron varios ejemplos de aplicaciones de AI que siguen un esquema similar. Entre ellos, el Copilot de Microsoft, que permite la creación de texto basado en un contexto determinado, o la creación de ofertas para clientes basadas en un catálogo de productos y un roadmap empresarial.
Estos ejemplos, y otros similares, demuestran que la IA generativa basada en texto puede desempeñar diversas funciones, muchas de las cuales se alinean con los casos de uso que planteé.
Entre los ejemplos que se mostraron durante la conferencia, destaco lo siguientes:
Repsol ha desarrollado un bot de gestión documental que encuentra respuestas en una base de conocimientos compuesta por documentos en Word y PDF.
Técnicas Reunidas ha desarrollado una plataforma que le permite encontrar el documento relevante a una pregunta y luego proporcionar información relevante dentro de ese documento.
Además, durante la conferencia se mostraron ejemplos de clasificación de texto basados en características o temas específicos, una tarea que también forma parte de mis casos de uso. Un ejemplo de National Netherlands involucra la transcripción automática de llamadas de teléfono y la clasificación automática de correos electrónicos.
En resumen, mi segundo día de trabajo me permitió confirmar que los casos de uso que planteé son viables, ya que existen ejemplos de empresas que están implementando estrategias similares. Sin embargo, una pregunta que aún queda por responder es cuánto costaría desarrollar estas soluciones, teniendo en cuenta que los proyectos que se mostraron durante la conferencia fueron realizados con la ayuda de consultoras, que suelen tener precios elevados.
A pesar de algunas dificultades, como no poder registrarme exitosamente en Azure, estoy satisfecho con el progreso que logré durante el segundo día. En los días siguientes, planeo continuar investigando y profundizando en los temas que identifiqué durante este día.

#Reto21dias #IAgenerativa

Visitas: 35

Reto21dias IA generativa. Descripción de casos de uso

Os presento un proyecto de 21 horas en 21 días para explorar cómo funciona la inteligencia artificial generativa utilizando modelos de lenguaje. Voy a probar varios casos de uso utilizando plataformas como Chat GPT, Claude, y Llama, dentro del contexto de poe.com.

El primer caso de uso es alimentar un chat con un contexto dado y poder interrogar al bot dentro de ese contexto. Voy a probar diferentes tipos de documentos para ver cuánto contexto puede manejar cada plataforma.

El segundo caso de uso es clasificar documentos en diferentes tipos utilizando el modelo de lenguaje natural por defecto de la plataforma. Quiero probar cuántos textos son necesarios para alimentar el contexto para que la clasificación sea fiable y si es posible obtener la probabilidad de pertenencia a cada uno de los tipos. Una variante de este caso es identificar los criterios que diferencian un tipo de otro utilizando un conjunto de documentos y que sea la plataforma la que los identifique en función de los temas que tocan esos documentos. La salida esperada es la probabilidad de que un nuevo texto sea de un tipo u otro (por ejemplo, interesa o no interesa).

Por último, quiero comparar cómo funciona Chat GPT4 respecto a Poe.com a la hora de resolver estos casos de uso y ver cuál de las dos plataformas encaja mejor.

En el futuro, fuera de este reto de 21 horas, quiero programar directamente con Python utilizando las APIs de Chat GPT o de Anthropic (Claude) directamente para pasarle los parámetros y que sean procesados.

#Reto21dias  #IAgenerativa

Visitas: 45