Ferret, el modelo de visión computerizada de Apple

00:00 /21:39

Ferret, el innovador modelo multimodal de lenguaje de Apple, será el modelo experto en el campo de la visión computerizada para los futuros sistemas Apple que veremos en 2024 con IA generativa integrada.

Analizamos su capacidad única para interpretar y anclar referencias espaciales en imágenes, facilitando así una interacción más fluida entre el lenguaje y estas.

Y explicamos sobre su conjunto de datos GRIT y cómo este modelo podría revolucionar aplicaciones prácticas en la vida cotidiana.

Convierte en un Senior iOS Developer con el Swift Full Stack Bootcamp. Encuentra toda la información aquí: IV Swift Full Stack Bootcamp 2024.

Descubre nuestro canal de Twitch en: twitch.tv/applecoding.

Descubre nuestras ofertas para oyentes:

---------------

Consigue las camisetas oficiales de Apple Coding con los logos de Swift y Apple Coding así como todo tipo de merchadising como tazas o fundas.

---------------

    Tema musical: "For the Win" de "Two Steps from Hell", compuesto por Thomas Bergensen. Usado con permisos de fair use. Escúchalo en Apple Music o Spotify.

    Transcripción


    Wanda, la comunidad de podcast independientes en español.

    Hola, bienvenidos a un nuevo episodio de Apple Coding Daily y feliz dos mil veinticuatro. Hoy vamos a hablar de otro paso más que está dando Apple en la inteligencia artificial. La verdad que nos está sorprendiendo bastante porque, Bueno, sabemos que normalmente Apple es bastante opaco con todos los lanzamientos, lo que es el, no lanzamiento, sino los Trabajos previos que suele realizar de cara a ciertos lanzamientos. Todos sabemos y, de hecho, esto es algo que ya han Medio confirmado algunos de los grandes dentro de Apple, como el propio Craig Federiggi, que en la WWDC de este ya año dos mil veinticuatro tendremos una, bueno, tendremos un cambio clasificado por la propia Apple como uno de los más grandes dentro de sus sistemas operativos con la integración de todos los modelos de IA generativa que van a formar parte de iOS, iPadOS, MacOS, etcétera. Pues bien, en lo que es este devenir, este trabajo hasta llegar ahí, Apple ha vuelto a lanzar un nuevo modelo que, curiosamente, es Open Source, como la gran mayoría de lo que está sacando es código abierto, un modelo llamado Ferret, un modelo capaz de, conectado con lo que sería con un modelo de lenguaje, un modelo multimodal de lenguaje grande que es capaz de Visualizar cualquier tipo de imagen y describirla al máximo detalle.

    Hablemos de esto. Seguro que estás de acuerdo conmigo que El tiempo es lo más valioso que tenemos, ya que una vez que pasa no vuelve. Los últimos estudios dicen que los developers, los desarrolladores, Invierten entre sesenta y noventa minutos diarios en buscar soluciones para sus proyectos en vez de estar programando. Abrir Star Overflow, teclear preguntas en chat GPT o buscar innumerables tutoriales y cursos online hasta volverte loco. Da igual si es Swift, UI Kit, Swift UI, y entonces te preguntas, ¿estoy tomando las decisiones ¿es correctas?

    ¿Estoy utilizando las herramientas adecuadas? La información es fragmentada, las opiniones diversas, no sabes a quién creer y no hay una guía coherente que seguir. Como nos decía hace poco un alumno, pierdo veinte horas a la semana en búsqueda de soluciones. Hagamos unos números rápidos. Veinte horas perdidas a la semana implica perder novecientas sesenta al año.

    Si hablamos de un coste de un desarrollador de cuarenta euros Ahora, que tampoco es demasiado para un senior. Esto implica perder treinta y ocho mil cuatrocientos euros. Sí, has oído bien, treinta y ocho mil cuatrocientos, ¿y sabes qué? Que eso realmente no es lo importante. Lo que realmente importa es que esas horas perdidas eran para sí mismo, para su familia, para sus sueños, para sus proyectos personales.

    Esta puede ser tu historia, o tal vez no, pero esta historia nos enseña que debes reclamar tu tiempo si lo valoras, Consolidar tu confianza si la necesitas y pulir tu talento si buscas tranquilidad. No será un camino fácil ni rápido, pero será transformador para ser dueño de tu tiempo y no al revés. En Apple Codyne Academy no somos héroes ni queremos serlo, Solo hemos conseguido dibujar el mapa punto por punto que ni siquiera Apple ha podido terminar. Hay dos formas de hacer apps, como las hace la mayoría o como dice Apple, y esta última es la que nosotros te enseñamos. Steve Jobs dijo una vez, La única manera de hacer un trabajo genial es amar lo que haces.

    Si quieres amar, si quieres saber, Si quieres ser el mejor senior, descubre tu nueva visión. Visítanos en acoding punto academy barra bootcamp, y comienza el cambio. Apple Coding Academy. Ferret, que es el nombre del paper que Apple ha publicado y de los modelos que tenemos disponibles en Github es un acrónimo que viene a referenciar un nombre que es referenciar y conectar a tierra cualquier cosa en cualquier lugar y con cualquier granularidad. Es la traducción de referend ground anything anywhere at any granularity.

    De esta manera, lo que estamos haciendo es describir, en este caso, en este paper de Apple, un modelo de lenguaje multimodal, como sería GPT cuatro, cuya capacidad es recibir imágenes como entrada, y esas imágenes se pueden describir de una manera muy detallada en cada uno de los elementos que hay adentro de estas imágenes. Para conseguir esto, Apple ha utilizado un conjunto de datos de entrenamiento con más de uno coma un millones de referencias, un modelo con conocimiento espacial jerárquico, en lo que es en un árbol de jerarquía en función de relaciones, de tipo GRIT, de tipo grid. Grid serían las siglas de expresiones referenciales fundamentadas en imágenes, que básicamente en inglés es grounded refering expression in images. De esta manera, Apple tiene este un junto de datos con el que ha entrenado este modelo de lenguaje para poder obtener, porque al final el propósito no es obtener un modelo de lenguaje como tal, sino es obtener un modelo experto. A ver, Una de las cosas que se han comentado últimamente en el mundo del machine learning y, de hecho, el propio dot CSV, Carlos Santana, hizo un vídeo muy interesante de fin de año, que les recomiendo que vean En su canal, donde contaba este tema, nosotros comentamos este tema cuando les estuvimos hablando de Apple MLX, cuyo episodio, si no lo han visto, se lo dejo por aquí.

    Apple MLX es el Array framework es el framework de ejecución de a raíz de cálculo computacional que permite el entrenamiento e inferencia de los modelos y que, actualmente, está teniendo un apoyo increíble por parte de la comunidad open source y están consiguiendo formas de ejecución de modelos dentro de nuestro propio Apple Silicon de, por ejemplo, Stable Diffusion, incluso con interfaz web para que sea mucho más cómodo utilizarlo, Están también poniendo, por ejemplo, modelos tipo Fidoz, Lora, Llama, varios modelos de mistral, de mistral, es decir, de mistral y mixtral, que no es lo mismo. Entonces, estuvimos hablando de todo esto Y lo que les comentamos, que fue una de las cosas que también hablamos en otro episodio donde hablamos de una de las revoluciones que está teniendo Apple En cuanto a la forma de trabajar con los modelos y que no tiene por qué cargar todo el modelo en memoria para poder ejecutarlo, cosa que normalmente se necesita a día de hoy, episodio que también les dejamos por aquí. Pues bien, el caso es que cuando estuvimos hablando de esto les contamos que La tendencia actual es tener modelos expertos, es decir, GPT tres punto cinco es un modelo que es completo, es un modelo tipo, pues, como puede ser, pues eso, Gemini Pro, por ejemplo, de Google, que es el que nosotros estuvimos hablando.

    Pero Hay un punto en el que ya no se puede llegar más allá. Según nos contaba Carlos Santana, hay un límite De doscientos veinte mil millones de parámetros en los entrenamientos actuales en cuanto a capacidad de datos, por lo que no puedes tener un LLM que tenga más de esa cantidad de datos, aproximadamente. Recordemos que GPT tres tiene ciento setenta y cinco mil millones Y, supuestamente, el, según lo que es el límite que tienen estos modelos en cuanto a entrenamiento, el límite estaría en los doscientos veinte mil millones, Por lo que si GPT cuatro tiene bastantes más, no es porque haya conseguido romper esta barrera, es porque está utilizando sistemas expertos, sistemas en los que en vez de tener un solo LLM tenemos varios. Esos varios es lo que estuvimos contando que era Mixtral, que eran varios modelos especializados en distintas cosas, es decir, imagínense que tenemos un modelo que está especializado en Programación, otro especializado en interpretación de imágenes, otro especializado en buscar en Internet o procesar información de PDFs, Otro que esté especializado en matemáticas, otro que esté especializado en lenguaje o gramática, es decir, Dividir el expertise, dividir el conjunto de los expertos para crear distintos modelos LLM que estén conectados y que tengan un modelo, digamos, de control general que sea capaz de saber a quién tiene que llamar para cada parte de cada una de las cosas.

    Pues bien, este modelo que tenemos ahora mismo de Ferret sería uno de esos modelos expertos. Estaría preparado para ser enganchado a un modelo de lenguaje mucho más grande, siendo este Ferret la parte que se encargaría De la visión computerizada, la parte que se encargaría de interpretar imágenes que llegaran a partir de una entrada y que serían descritas por completo, y no solo descritas por completo, no es cuestión de que yo dé una imagen y me diga, pues aquí hay una imagen de un patio de una casa, donde hay un muro de color de un patio de una casa, donde hay un muro de color tal con un gato de raza azul ruso subido encima con la cola levantada, O sea, ese es el nivel al que pueden llegar estas descripciones, pero ya no es solo por las descripciones en sí, lo más importante es que Al estar conectado con un modelo de lenguaje, podemos hacer preguntas sobre el contenido de la imagen. Para eso, que es una de las cosas que hace GPT cuatro, Tenemos este modelo experto que sería capaz de dar la descripción de dicha imagen para poder decirle que nos genere una imagen parecida si tenemos un modelo ¿cómo?

    Matroska Diffusion Model, también de Apple, del que también hemos hablado aquí, que también les dejamos por aquí el episodio, donde tenemos un modelo de generación de contenido. Yo puedo, a través de Ferret, darle una imagen a el modelo experto de Apple y que Ferrer diga, pues esta imagen es de esta manera, esta otra, tal, tal, tal, tal, tal, tal, tal, con una forma que, a partir de la inclusión de este modelo grit, consigue que este árbol de información le permita dar una descripción a muy detallado nivel, por lo que esto lo que permite es que luego yo le pueda decir, générame una imagen parecida a esta con el Matrioska Diffusion Model, etcétera. Obviamente, nosotros no llamaremos a los modelos. Matrioska Diffusion Model será un modelo experto capaz de recibir una solicitud de un modelo de lenguaje para generar una imagen. Ferret será un modelo experto capaz de recibir una imagen como entrada para devolver una respuesta, es decir, estamos construyendo todo un modelo experto como el que es GPT cuatro, pero creado por la propia Apple, para que así podamos tener esa capacidad de, Bueno, pues, de tener un modelo multimodal capaz de leer, generar, hablar sobre un contenido, etcétera, etcétera, etcétera, ¿vale?

    Ese sería un poco el, digamos, el por qué o cómo se montaría, ¿no? Todo este sistema, por lo que tenemos que entender que, uno, GPT cuatro no es un modelo de lenguaje, es un conjunto de modelos expertos, Y en esa misma línea, Apple está montando su propio conjunto de modelos expertos en el que uno de ellos es el Matriosca que ya hablamos de generación de imágenes, otro sería este nuevo Ferret de le de lo que sería la interpretación de imágenes a través de visión computarizada, etcétera. Por lo tanto, y con esto vamos concluyendo, lo que tenemos aquí es un nuevo paso por parte de Apple que, la verdad, oye, es bastante de agradecer que sea de código abierto. Ahora, en fin, la realidad es la realidad. ¿Quiere decir esto que ustedes pueden descargar Ferrer y probarlo en sus equipos?

    No. No porque Ferrer, a pesar de ser un modelo abierto, No está todavía entrenado. Apple ha puesto dentro de este repositorio, porque este modelo ya se lanzó hace unos meses, ahora Hace unos pocos días se ha incorporado varios check points de model, de lo que sería entrenamientos, para poder partir desde ahí y terminar el entrenamiento por afinación, de forma que podamos conseguirlo. Pero si queremos Teder a esos entrenamientos donde, por cierto, el modelo de lenguaje utilizado por Apple no es suyo, es el modelo Vicuna, que es un modelo de lenguaje grande, un LLM, que está basado en llama y que es uno de los modelos de código abierto ¿qué más se usan? Por lo tanto, parece ser que todo lo a a el el objetivo, el el destino al que va Apple, es todo en Open Source porque está utilizando, aparte de lo que es la propia investigación propia, pero, por ejemplo, en modelos de lenguaje está utilizando modelos que ya existen, en este caso está usando Vicuna como modelo base, eso no quiere decir que en un momento determinado pueda cambiarlo por uno propio que ellos hayan creado, ¿vale?

    Pero por ahora Todo lo que están sacando está basado en modelos de código abierto. Pero también, si queremos usar esto, como digo, estos check points de siete mil y trece mil millones de parámetros, como peso de entrenamiento, que son modelos, son check points preentrenados para luego, insisto, hacer una afinación. La propia Apple nos informa que estos modelos, este modelo Ferret, ha sido entrenado en Ocho en envidias a cien con ochenta gigas de VRAM cada uno. Lo que normalmente usamos para hacer power points, Knotes en este caso. En fin, esto es lo normal, esto nos quiere decir varias cosas.

    Uno, que obviamente los entrenamientos de estos modelos son muy grandes y, obviamente, requieren de equipos que se escapan completamente de la capacidad de cualquier usuario, Eso no quiere decir que su resultado luego se pueda ejecutar, pero tampoco podemos olvidar que los modelos de siete mil o trece mil millones de parámetros, incluso más, no pueden ser ejecutados tan fácilmente dentro de un dentro del local, a pesar de las tecnologías que Apple esté sacando, por lo que todo esto nos da a entender que el gran modelo de lenguaje o parte del gran modelo de lenguaje que estaremos utilizando con cien, con varios sistemas expertos, estaré en la nube porque, a día de hoy, sobre todo en un dispositivo como el iPhone, sería imposible ejecutar estos modelos, por lo que muy probablemente sea un modelo híbrido, un modelo híbrido en el que yo tenga un pequeño modelo tipo yemina y nano, como estuvimos hablando, un pequeño modelo de Siri, si lo quieren llamar Siri, que esté cargado directamente en nuestro iPhone y que se encargue de las cosas más Sencillas, unidas a las funciones del dispositivo, como enviar mensajes o pedirle cualquier tipo de interacción con el dispositivo o que nos lea contenido, etcétera, es decir, un asistente como el que ya tenemos de Siri, pero a millones de años luz en cuanto a capacidad y comprensión de lo que se le dice o lo que ella nos dice a nosotros, ella o él o elle o quien sea el que pongamos como personalidad a Siri.

    Por lo tanto, tendríamos ese, digamos, ese punto, ¿no? Híbrido en el que ciertas Consultas en local sí se harían en el dispositivo, pero ciertas búsquedas de información o ciertos tipos de procesamiento, como el de enviar una imagen, crear una imagen, como el de hablar o preguntar por cierta información que pueda ser buscada, etcétera, Ahí sí usará muy probablemente un modelo grande experto tipo GPT cuatro que estaría en la nube, por lo que Apple, pues, al final tendrá que alquilarle equipos muy muy probablemente a Google, ya que Google Cloud es la gran parte de iCloud a día de hoy, aunque ya sabemos que también Apple está pagando para abrir sus propios centros de datos, por lo que tarde o temprano, pues estos centros de datos obviamente tendrán también su uso. Así que, bueno, pues eso sería un poco todo lo que teníamos que comentarles. Desde luego, va a ser, sin ninguna duda, el año dos mil veinticuatro un año de visión y de Hay, es decir, un año de realidad aumentada con el lanzamiento en las próximas semanas de AppleVision Pro en Estados Unidos y, por supuesto, de la IA generativa. Porque no, Apple no llega tarde, Apple llega como los magos cuando se lo propone.

    Y poco más. Espero que les haya gustado, espero que, bueno, todos estos todos estos episodios, la verdad que están teniendo muy buen feedback. Obviamente, no podemos dejar atrás el contarles todas las novedades que Apple está lanzando a nivel de inteligencia artificial generativa y, por supuesto, todo esto va a ser algo que nos va a beneficiar a todos Ampliamente, porque no podemos olvidar que, obviamente, Apple, en mi opinión, donde mejor va a tener una implementación sobre IA va a ser en los Macs debido a su mayor capacidad y, por supuesto, no podemos olvidar que uno de los modelos que es uno de los de los modelos expertos con los que ya trabaja Apple y que va a venir sí o sí dentro de las próximas versiones que veremos a partir de junio, Es, sin duda, una versión de y degenerativa de SourceKit, la librería de generación, la librería de autocompletado de código, la librería de análisis y autocompletado de código que nos permitirá Integrar y degenerativa dentro de SCOVID, y que todo nuestro proyecto forme parte de el contenido, forme parte de el contexto que conozca esta Así que, lo dicho, poco más. Si les ha gustado, como siempre, dennos un like, que aprovechen porque ahora ya estamos como podcast en YouTube, hemos creado el podcast como tal, por lo tanto, se pueden suscribir al mismo también ahora desde YouTube, y nos oímos pronto si dios quiere.

    Hasta entonces, un saludo, e go Apple Core.

    Puedes escuchar más episodios de Apple Coding en Wanda punto com, la comunidad de podcast independientes en español.

    Episodios recientes