La inteligencia artificial generativa y los modelos de lenguaje extenso (LLM) están generando mucho entusiasmo. Han despertado la imaginación del público en general debido a lo útiles que pueden ser cuando se les solicita ayuda para escribir un texto. Pero para los desarrolladores, son aún más revolucionarios, debido a cuán dramáticamente han simplificado la forma en que se pueden construir las aplicaciones de IA. Echemos un vistazo a por qué.
Tradicionalmente, la forma de crear una aplicación de IA ha sido un proceso de cuatro pasos:
El paso 3 es generalmente sencillo (aunque
No es sorprendente que cuando un dominio problemático requiere un equipo de doctores para abordarlo con éxito, será prohibitivo en términos de costos y habilidades para todas las empresas, excepto para unas pocas.
Una razón por la que todo el mundo está tan entusiasmado con la IA generativa con LLM es porque a menudo se puede resolver un problema "lo suficientemente bien" sin ninguno de los pasos anteriores. Con la IA generativa, su trabajo es:
Eso es todo, de verdad. Todo lo demás son detalles.
El detalle más importante: ¿qué datos das a GPT en el paso 1? No se puede arrojar todo en él; solo puede manejar tokens de 4k en GPT-3.5, o hasta 32k en GPT-4, que es mucho más lento y costoso.
La búsqueda vectorial le permite tomar la consulta exacta que ya creó para enviarla a GPT y enviarla a su base de datos, donde coloca todo lo que sabe sobre el cliente. La búsqueda vectorial responde literalmente a "cuáles son los datos más relevantes para esta consulta" sin más esfuerzo de su parte; es casi mágico.
(Creo firmemente que la búsqueda de vectores debe ser una función de la base de datos principal de su aplicación y no un sistema separado, razón por la cual
Una vez que tenga sus datos más relevantes y su consulta, los agrupa y realiza una llamada a OpenAI, obtiene su respuesta y listo. (Estoy pasando por alto algunos desafíos, como "
Entonces, un proveedor de contenido de transmisión usaría datos como: cada sesión que Jonathan pasó alguna vez con el título, los actores y la categoría; cuánto tiempo lo vio; más todos los metadatos que se nos ocurran, y luego simplemente desnormalizarlo todo en un único blob de texto y ejecutarlo a través del codificador para obtener un vector.
Y si esto fuera Netflix, sería súper fácil, porque
Una vez hecho esto, puede obtener las filas relevantes de Cassandra con una consulta como esta, ¿dónde? es una variable de enlace para su vector de consulta que obtiene de la misma API de incrustación:
SELECT original_data_text FROM user_recommendation_data WHERE user_id = 'jonathan' ORDER BY embedding ANN OF ? LIMIT 20
Luego agrega esos resultados a su solicitud de LLM y... eso es todo. Ahora tiene un sistema de recomendación que construyó en una semana sin doctorados, solo
Pero incluso si necesita crear un modelo personalizado, los LLM pueden ayudarlo a generar datos, etiquetas y características para hacerlo. Eso, sin embargo, es un tema para otro artículo.
recomiendo leer
Por Jonathan Ellis, DataStax