Lleva la búsqueda basada en IA a tu aplicación web

Rate this content
Bookmark

ChatGPT causó sensación en el mundo tecnológico. Todo el mundo habla de ello, desde tu CTO hasta tu peluquero (al menos el mío lo hace). Y hay muchas razones por las que todos deberíamos estar emocionados al respecto y muchas otras innovaciones de IA/ML.


Pero, ¿cómo las incorporas a tu pila tecnológica, a tu sitio web/backend, para trabajar con tus datos y proporcionar búsqueda impulsada por IA y aumento de datos?


Existe una nueva generación de bases de datos nativas de IA, que utilizan modelos de aprendizaje profundo para encontrar respuestas a consultas en lenguaje natural. Estamos hablando de la capacidad de buscar a través de texto, imágenes, videos, ADN o cualquier dato no estructurado, todo con una sola consulta.


La regla general es: si hay un modelo de ML, podemos buscar a través de él.


Únete a mí para aprender sobre los bloques fundamentales (LLMs y vector embeddings, Bases de datos vectoriales), cómo interactúan todos ellos y, lo más importante, cómo puedes construir algo tú mismo con tecnología de código abierto.


Y, por supuesto!!! Habrá una demostración de codificación en vivo, donde te guiaré a través de la experiencia de construir una búsqueda basada en IA, con Weaviate, una base de datos vectorial de código abierto, y agregarla a una aplicación. Ahora la pregunta... ¿deberíamos hacer esto en Angular, React, Vue o simplemente JS puro? ;)


#QueLosDiosesDeLaDemoEsténConNosotros


This talk has been presented at JSNation 2023, check out the latest edition of this JavaScript Conference.

FAQ

El machine learning involucra modelos que generan incrustaciones de vector, es decir, matrices de números que representan datos. Estos modelos son accesibles y no requieren un entendimiento avanzado o un doctorado para ser utilizados, especialmente con las herramientas y plataformas actuales que simplifican su aplicación.

Las herramientas de machine learning se han vuelto más accesibles, permitiendo a los usuarios crear cuentas en plataformas como OpenAI y comenzar a interactuar con IA de manera sencilla. Esto ha democratizado el uso de tecnologías avanzadas para un público más amplio.

La búsqueda semántica implica entender el significado de las consultas en lugar de solo buscar coincidencias de palabras clave. Utiliza el machine learning para mejorar la precisión de los resultados, ofreciendo respuestas más relevantes basadas en el contexto y contenido semántico de la consulta.

Las incrustaciones de vector son matrices de números que representan datos de manera que las máquinas pueden entender. Estas incrustaciones permiten que los modelos de machine learning procesen y analicen la información de manera efectiva.

En aplicaciones de JavaScript, se puede integrar machine learning para mejorar la búsqueda de datos, tanto en el backend como en el frontend. Herramientas como Weaviate ofrecen bases de datos vectoriales que facilitan esta integración, permitiendo búsquedas avanzadas en diversos tipos de datos.

Weaviate es una base de datos de código abierto y ofrece una experiencia de desarrollador superior, permitiendo realizar consultas complejas con menos código. Además, Weaviate puede implementarse tanto en la nube como en sistemas locales, ofreciendo flexibilidad en su uso.

Sí, Weaviate admite varias métricas de distancia y es muy modular, lo que permite a los usuarios añadir nuevas métricas según sus necesidades específicas.

Indexar datos en formato PDF con Weaviate involucra extraer texto de los PDFs, posiblemente fragmentando el contenido en partes más manejables, y luego convertir esos datos en incrustaciones de vector para su indexación y búsqueda efectiva.

Sebastian Witalec
Sebastian Witalec
31 min
01 Jun, 2023

Comments

Sign in or register to post your comment.
Video Summary and Transcription
La charla analiza el uso del aprendizaje automático en los motores de búsqueda, centrándose específicamente en la búsqueda semántica y los vectores de incrustación. Explora la integración de JavaScript y los modelos de aprendizaje automático, utilizando Weaviate como una base de datos vectorial de código abierto. La charla demuestra cómo conectarse a Weaviate, consultar datos y realizar consultas de aprendizaje automático. También destaca los beneficios de Weaviate, como su excelente experiencia para los desarrolladores y su rendimiento. Además, la charla aborda las opciones de personalización, las preocupaciones sobre la privacidad de los datos y la efectividad variable de diferentes modelos de aprendizaje automático.

1. Introducción a Machine Learning y Búsqueda

Short description:

Estoy muy emocionado de presentarte este tema. No tenía idea de ello hace un año. Comencemos. Mi viaje comienza con una charla en una conferencia sobre machine learning. Al principio, estaba confundido y pensé que necesitaba un doctorado. Pero luego me di cuenta de que las herramientas de machine learning se han vuelto accesibles para todos. Me enfocaré en el tema de la búsqueda utilizando machine learning, ya que todo en Internet comienza con la búsqueda.

Así que, gracias por esta introducción tan amable. Y estoy muy emocionado de presentarte este tema que, seamos sinceros, hace un año no tenía idea. Así que te llevaré en mi viaje de un año conmigo. Comencemos. Escuchaste la introducción, mi nombre es Sebastian Vitales, construyo cosas geniales, y quiero hablar contigo sobre ello. Así que mi viaje comienza hace algunos años, hace mucho tiempo en una galaxia muy, muy lejana. Fui a una conferencia y hubo una charla muy interesante que me emocionó mucho que prometía que no necesitas un doctorado para entender machine learning. Y obviamente estaba muy emocionado al respecto porque, en primer lugar, no tenía ni idea de ML pero realmente quería involucrarme, como, hey, había una promesa, como, tal vez no necesitaba estudiar durante cinco años para hacer algo relacionado con ML. La cosa es que a los 10 minutos de esa charla estaba tan confundido que ni siquiera sabía cómo me llamaba. E inmediatamente mi suposición fue como, sí, necesitas un doctorado, nunca más voy a tocar ML en mi vida, ya sabes. Eso es todo. Terminado. Pero luego pensé, bueno, no me voy a rendir. Lo que cambió y está sucediendo últimamente, y estoy seguro de que todos lo están experimentando, es que todo el mundo está hablando de ChargPT, IA, ML, como todas esas cosas que estás escuchando. Como actualmente vivo en Dinamarca. No hablo danés pero si estoy en un café, hay personas hablando en danés al azar y atrapando ChargPT, algo, algo, como que sigues atrapándolo. Fui a cortarme el pelo, ¿verdad?, y mi peluquero se confundió. Fue como, bueno, voy a preguntarle a ChargPT qué tipo de corte de pelo te queda bien. Incluso ChargPT puede ayudar con eso, así que está bien. Y lo que cambió es que esas herramientas de machine learning se volvieron accesibles, ¿verdad? De repente, están al alcance de tus dedos. De repente, puedes ir, ya sabes, a OpenAI y crear una cuenta, y luego puedes comenzar a escribir comandos y hacer preguntas a la IA y esto es alucinante. Y hay tantas aplicaciones diferentes, todo tipo de generación de imágenes, todo tipo de cosas sucediendo. Pero solo tengo 20 minutos para la charla. Y los organizadores, como, ya me lo han preguntado cinco veces. Así que, voy a terminar a tiempo. Así que, me voy a enfocar y solo hablaré sobre una cosa muy específica del machine learning, especialmente porque tengo 20 minutos y también quiero hacer algo de programación en vivo. Así que, vamos a ceñirnos a eso. Entonces, el tema de la presentación era la búsqueda o el uso de machine learning, búsqueda. Y seamos sinceros, todo lo que hacemos en Internet comienza con la búsqueda, ¿verdad? ¿Quieres escuchar música? Buscas. ¿Quieres ver una película? ¿Vas de compras? ¿Quieres encontrar información? Vas a Wikipedia, siempre buscas.

2. Desafíos con la Búsqueda Tradicional

Short description:

La búsqueda funciona, pero podría ser mejor. Los motores de búsqueda tradicionales pueden no entender el significado de una pregunta, lo que lleva a resultados irrelevantes. Por otro lado, la búsqueda semántica se centra en el significado de la pregunta y puede proporcionar respuestas más precisas. Mediante el uso de machine learning, podemos mejorar el poder de la búsqueda semántica.

Y quiero decir, probablemente pienses que es como, bueno, ¿cuál es el problema? Hemos estado haciendo eso durante décadas. La búsqueda funciona. Bueno, yo difiero, ¿verdad? Como que funciona más o menos, pero podría ser mejor. Permíteme darte un ejemplo. Entonces, con la búsqueda tradicional, puedes enfrentar algunos desafíos. Si fueras y preguntaras, como, a un motor de búsqueda tradicional, como, ¿por qué vuelan los aviones? Tal vez tengas una database completa de documentos que lo expliquen. Podrías obtener una respuesta como, ¿por qué deberías volar con aviones caros? Y es como, bueno, quiero decir, está bastante bien porque coincide con aviones, coincide con por qué y vuelan y todo eso. ¿Por qué se queja este tipo? Es como una coincidencia perfecta. Bueno, quiero decir, en realidad, preguntamos cómo vuelan los aviones, y nos dijeron que voláramos con aerolíneas caras. Bueno, eso lo resuelve para mí. Gracias. Bueno, la solución para mí es más bien buscar la pregunta desde el punto de vista semántico. ¿Cuál es el significado de la pregunta y qué tipo de respuesta puedo encontrar para ti? Y en realidad, si pones esta pregunta en Google Search, obtendrás una respuesta como esta. Vas y encontrarás la dinámica del vuelo de la NASA. Y luego, allí, la parte que nos ayudó a encontrar la respuesta fue que las alas de los aviones están diseñadas para hacer que el aire se mueva más rápido sobre la parte superior del ala, blah, blah, blah, blah, blah. Como que realmente no tenemos ninguna coincidencia de palabras clave, pero el significado está ahí, ¿verdad? Y eso es básicamente el poder de la búsqueda semántica. Así que al observar esos dos ejemplos y el tipo de cosas que puedes obtener entre los dos, quiero decir, la conclusión es bastante clara, ¿verdad? Deberíamos ir y buscar más en el tipo de búsqueda semántica y usar machine learning para ello.

QnA

Check out more articles and videos

We constantly think of articles and videos that might spark Git people interest / skill us up or help building a stellar career

Construyendo un Asistente AI Activado por Voz con Javascript
JSNation 2023JSNation 2023
21 min
Construyendo un Asistente AI Activado por Voz con Javascript
Top Content
This Talk discusses building a voice-activated AI assistant using web APIs and JavaScript. It covers using the Web Speech API for speech recognition and the speech synthesis API for text to speech. The speaker demonstrates how to communicate with the Open AI API and handle the response. The Talk also explores enabling speech recognition and addressing the user. The speaker concludes by mentioning the possibility of creating a product out of the project and using Tauri for native desktop-like experiences.
IA y Desarrollo Web: ¿Exageración o Realidad?
JSNation 2023JSNation 2023
24 min
IA y Desarrollo Web: ¿Exageración o Realidad?
Top Content
This talk explores the use of AI in web development, including tools like GitHub Copilot and Fig for CLI commands. AI can generate boilerplate code, provide context-aware solutions, and generate dummy data. It can also assist with CSS selectors and regexes, and be integrated into applications. AI is used to enhance the podcast experience by transcribing episodes and providing JSON data. The talk also discusses formatting AI output, crafting requests, and analyzing embeddings for similarity.
El Ascenso del Ingeniero de IA
React Summit US 2023React Summit US 2023
30 min
El Ascenso del Ingeniero de IA
The rise of AI engineers is driven by the demand for AI and the emergence of ML research and engineering organizations. Start-ups are leveraging AI through APIs, resulting in a time-to-market advantage. The future of AI engineering holds promising results, with a focus on AI UX and the role of AI agents. Equity in AI and the central problems of AI engineering require collective efforts to address. The day-to-day life of an AI engineer involves working on products or infrastructure and dealing with specialties and tools specific to the field.
Aplicaciones Web del Futuro con Web AI
JSNation 2024JSNation 2024
32 min
Aplicaciones Web del Futuro con Web AI
Web AI in JavaScript allows for running machine learning models client-side in a web browser, offering advantages such as privacy, offline capabilities, low latency, and cost savings. Various AI models can be used for tasks like background blur, text toxicity detection, 3D data extraction, face mesh recognition, hand tracking, pose detection, and body segmentation. JavaScript libraries like MediaPipe LLM inference API and Visual Blocks facilitate the use of AI models. Web AI is in its early stages but has the potential to revolutionize web experiences and improve accessibility.
Cobertura de código con IA
TestJS Summit 2023TestJS Summit 2023
8 min
Cobertura de código con IA
Codium is a generative AI assistant for software development that offers code explanation, test generation, and collaboration features. It can generate tests for a GraphQL API in VS Code, improve code coverage, and even document tests. Codium allows analyzing specific code lines, generating tests based on existing ones, and answering code-related questions. It can also provide suggestions for code improvement, help with code refactoring, and assist with writing commit messages.
Construyendo la IA para Athena Crisis
JS GameDev Summit 2023JS GameDev Summit 2023
37 min
Construyendo la IA para Athena Crisis
Join Christoph from Nakazawa Tech in building the AI for Athena Crisis, a game where the AI performs actions just like a player. Learn about the importance of abstractions, primitives, and search algorithms in building an AI for a video game. Explore the architecture of Athena Crisis, which uses immutable persistent data structures and optimistic updates. Discover how to implement AI behaviors and create a class for the AI. Find out how to analyze units, assign weights, and prioritize actions based on the game state. Consider the next steps in building the AI and explore the possibility of building an AI for a real-time strategy game.

Workshops on related topic

IA a demanda: IA sin servidor
DevOps.js Conf 2024DevOps.js Conf 2024
163 min
IA a demanda: IA sin servidor
Top Content
Featured WorkshopFree
Nathan Disidore
Nathan Disidore
En esta masterclass, discutimos los méritos de la arquitectura sin servidor y cómo se puede aplicar al espacio de la IA. Exploraremos opciones para construir aplicaciones RAG sin servidor para un enfoque más lambda-esque a la IA. A continuación, nos pondremos manos a la obra y construiremos una aplicación CRUD de muestra que te permite almacenar información y consultarla utilizando un LLM con Workers AI, Vectorize, D1 y Cloudflare Workers.
AI para Desarrolladores de React
React Advanced 2024React Advanced 2024
142 min
AI para Desarrolladores de React
Featured Workshop
Eve Porcello
Eve Porcello
El conocimiento de las herramientas de AI es fundamental para preparar el futuro de las carreras de los desarrolladores de React, y la suite de herramientas de AI de Vercel es una vía de acceso accesible. En este curso, examinaremos más de cerca el Vercel AI SDK y cómo esto puede ayudar a los desarrolladores de React a construir interfaces de transmisión con JavaScript y Next.js. También incorporaremos APIs de terceros adicionales para construir y desplegar una aplicación de visualización de música.
Temas:- Creación de un Proyecto de React con Next.js- Elección de un LLM- Personalización de Interfaces de Transmisión- Construcción de Rutas- Creación y Generación de Componentes - Uso de Hooks (useChat, useCompletion, useActions, etc)
Cómo Resolver Problemas del Mundo Real con Remix
Remix Conf Europe 2022Remix Conf Europe 2022
195 min
Cómo Resolver Problemas del Mundo Real con Remix
Featured Workshop
Michael Carter
Michael Carter
- ¿Errores? Cómo renderizar y registrar tus errores del servidor y del clientea - Cuándo devolver errores vs lanzar excepcionesb - Configurar servicios de registro como Sentry, LogRocket y Bugsnag- ¿Formularios? Cómo validar y manejar formularios de varias páginasa - Usar zod para validar los datos del formulario en tu acciónb - Pasar por formularios de varias páginas sin perder datos- ¿Atascado? Cómo solucionar errores o funciones faltantes en Remix para que puedas continuara - Usar patch-package para solucionar rápidamente tu instalación de Remixb - Mostrar herramienta para gestionar múltiples parches y seleccionar solicitudes de extracción abiertas- ¿Usuarios? Cómo manejar aplicaciones de varios inquilinos con Prismaa - Determinar el inquilino por el host o por el usuariob - Base de datos múltiples o base de datos única/múltiples esquemasc - Asegura que los datos del inquilino siempre estén separados de los demás
Aprovechando LLMs para Construir Experiencias de IA Intuitivas con JavaScript
JSNation 2024JSNation 2024
108 min
Aprovechando LLMs para Construir Experiencias de IA Intuitivas con JavaScript
Featured Workshop
Roy Derks
Shivay Lamba
2 authors
Hoy en día, todos los desarrolladores están utilizando LLMs en diferentes formas y variantes, desde ChatGPT hasta asistentes de código como GitHub CoPilot. Siguiendo esto, muchos productos han introducido capacidades de IA integradas, y en este masterclass haremos que los LLMs sean comprensibles para los desarrolladores web. Y nos adentraremos en la codificación de tu propia aplicación impulsada por IA. No se necesita experiencia previa en trabajar con LLMs o aprendizaje automático. En su lugar, utilizaremos tecnologías web como JavaScript, React que ya conoces y amas, al mismo tiempo que aprendemos sobre algunas nuevas bibliotecas como OpenAI, Transformers.js
Masterclass: Qué son y cómo aprovechar los LLMs
React Summit 2024React Summit 2024
66 min
Masterclass: Qué son y cómo aprovechar los LLMs
Featured Workshop
Nathan Marrs
Haris Rozajac
2 authors
Únete a Nathan en esta sesión práctica donde primero aprenderás a alto nivel qué son los modelos de lenguaje grandes (LLMs) y cómo funcionan. Luego sumérgete en un ejercicio de codificación interactivo donde implementarás la funcionalidad de LLM en una aplicación de ejemplo básica. Durante este ejercicio, adquirirás habilidades clave para trabajar con LLMs en tus propias aplicaciones, como la ingeniería de indicaciones y la exposición a la API de OpenAI.
Después de esta sesión, tendrás una idea de qué son los LLMs y cómo se pueden utilizar prácticamente para mejorar tus propias aplicaciones.
Tabla de contenidos:- Demostración interactiva de la implementación de funciones básicas impulsadas por LLM en una aplicación de demostración- Discutir cómo decidir dónde aprovechar los LLMs en un producto- Lecciones aprendidas sobre la integración con OpenAI / descripción general de la API de OpenAI- Mejores prácticas para la ingeniería de indicaciones- Desafíos comunes específicos de React (gestión de estado :D / buenas prácticas de UX)
Trabajando con OpenAI y la Ingeniería de Prompts para Desarrolladores de React
React Advanced 2023React Advanced 2023
98 min
Trabajando con OpenAI y la Ingeniería de Prompts para Desarrolladores de React
Top Content
Workshop
Richard Moss
Richard Moss
En esta masterclass daremos un recorrido por la IA aplicada desde la perspectiva de los desarrolladores de front end, enfocándonos en las mejores prácticas emergentes cuando se trata de trabajar con LLMs para construir grandes productos. Esta masterclass se basa en los aprendizajes obtenidos al trabajar con la API de OpenAI desde su debut en noviembre pasado para construir un MVP funcional que se convirtió en PowerModeAI (una herramienta de creación de ideas y presentaciones orientada al cliente).
En la masterclass habrá una mezcla de presentación y ejercicios prácticos para cubrir temas que incluyen:
- Fundamentos de GPT- Trampas de los LLMs- Mejores prácticas y técnicas de ingeniería de prompts- Uso efectivo del playground- Instalación y configuración del SDK de OpenAI- Enfoques para trabajar con la API y la gestión de prompts- Implementación de la API para construir una aplicación orientada al cliente potenciada por IA- Ajuste fino y embeddings- Mejores prácticas emergentes en LLMOps