OpenAI en React: Integrando GPT con tu aplicación de React

Rate this content
Bookmark

Explora la integración de GPT de OpenAI en aplicaciones de React para crear interfaces de usuario dinámicas e inteligentes. Esta sesión ofrece ideas prácticas sobre cómo aprovechar las potentes capacidades de procesamiento del lenguaje natural (NLP) de GPT para chatbots, generación de contenido y experiencias de usuario personalizadas. Sumérgete en la configuración técnica con Next.js 14, LangChain, el SDK de IA de Vercel y la búsqueda vectorial de MongoDB para optimizar y personalizar tus aplicaciones. Únete a nosotros para transformar tus proyectos de React con IA.

This talk has been presented at React Summit 2024, check out the latest edition of this React Conference.

Jesse Hall
Jesse Hall
10 min
14 Jun, 2024

Comments

Sign in or register to post your comment.
Video Summary and Transcription
En esta charla, el orador demuestra cómo crear un chatbot de IA que puede responder preguntas basadas en información para la cual no fue entrenado. Construyen una tubería básica de RAG en solo cinco minutos utilizando codificación en vivo. El orador también muestra cómo crear embeddings y una base de datos vectorial, configurar un índice de búsqueda vectorial y un punto final, y modificar la ruta de chat para mejorar las capacidades del chatbot. Se ejecuta y prueba el programa, y la charla concluye con una invitación a unirse a un masterclass para obtener más información.

1. Introducción

Short description:

Voy a crear rápidamente un chatbot de IA que pueda responder preguntas basadas en información en la que nunca fue entrenado el LLM. Vamos a crear un pipeline básico de RAG y construirlo en aproximadamente cinco minutos, codificando en vivo.

Voy a intentar incluir la mayor cantidad de información posible en esta charla, y si voy demasiado rápido, y te pierdo, si tienes alguna pregunta, ven a encontrarme después y estaré encantado de hablar contigo. Así que lo que voy a hacer es crear rápidamente un chatbot de IA, y no solo cualquier chatbot de IA, un chatbot que pueda responder preguntas basadas en información en la que nunca fue entrenado el LLM. Así que vamos a crear un pipeline básico de RAG, recuperación aumentada generación. Además, lo voy a construir en aproximadamente cinco minutos, y lo voy a codificar en vivo, así que nada puede salir mal, ¿verdad? De acuerdo.

2. Creating Embeddings and Vector Database

Short description:

Ya ejecuté NPX create next app utilizando el ejemplo de next lane chain. Instalé MongoDB, React markdown y .env. Verifiqué la aplicación, agregué el modo oscuro. Probé con una pregunta sobre MongoDB. Creé documentación falsa para una biblioteca de JavaScript. Transformé los archivos de markdown en vectores y los guardé en una base de datos de vectores de MongoDB. Usé la búsqueda de vectores para mejorar las capacidades de LLM. Configuré las promesas del sistema de archivos, los embeddings de Open AI, el cliente de Mongo y la búsqueda de vectores de MongoDB Atlas. Creé embeddings para cada documento y los almacené en MongoDB. Corregí un error tipográfico.

Ya ejecuté NPX create next app utilizando el ejemplo de next lane chain. Instalé MongoDB, la integración de lane chain MongoDB, React markdown para darle estilo y .env porque vamos a usar un script de nodo para ejecutar nuestra ingestión.

También tengo una clave de API abierta de AI y mi cadena de conexión de MongoDB Atlas en mis variables de entorno. Así que vamos a ver esta aplicación. Esto es el ejemplo tal cual, sin ninguna alteración. Bueno, agregué el modo oscuro para no deslumbrar a todos, así que de nada. Vamos a probar para asegurarnos de que funcione, digamos qué es MongoDB y con suerte el Wi-Fi funciona, y bien, ahí vamos. Y AI nos responde con una respuesta bastante buena. Así que funciona de inmediato. Genial.

Echemos un vistazo al code. Tengo este directorio de documentos falsos aquí, y usé chat GPT para ayudarme a crear una documentación falsa para una biblioteca de JavaScript falsa llamada fancy widget.js. Así que tenemos el readme, el uso, la licencia, la instalación, la contribución, el registro de cambios, la referencia de la API. Tenemos toda la documentación que esperarías de una biblioteca de JavaScript. Entonces lo que vamos a hacer es tomar estos archivos de markdown y vamos a transformarlos en vectores, embeddings de vectores, y luego los vamos a guardar en nuestra base de datos de vectores. Vamos a usar MongoDB para la base de datos de vectores. Y luego podemos usar, durante la búsqueda de vectores, esto para mejorar las capacidades de LLM para que pueda responder preguntas basadas en esta información.

Muy bien, vamos a empezar a hacer eso. Así que aquí en la raíz, voy a crear un nuevo archivo. Lo vamos a llamar create embeddings.mjs, y luego vamos a escribir algo aquí. Vamos a importar nuestras promesas del sistema de archivos desde recursive character text splitter, y luego importar los embeddings de AI abiertos desde lang chain open AI, y luego nuestro cliente de Mongo desde MongoDB, y luego nuestra búsqueda de vectores de MongoDB Atlas desde lang chain, y luego configuraremos nuestros clientes de Mongo, obteniendo nuestra variable de entorno para nuestra cadena de conexión.

El nombre de nuestra base de datos será documentos, el nombre de la colección será embeddings. Configuraremos nuestra colección, luego obtendremos nuestro directorio de documentos, esos documentos falsos, y luego obtendremos los archivos de esos documentos, y luego console loguearemos los nombres de los archivos, y luego el nombre del archivo, recorreremos esos nombres de archivo, obtendremos cada documento. Después de leer cada documento, luego console loguearemos que estamos vectorizando el documento, y luego nuestro separador usará nuestro separador de texto de caracteres recursivos de lang chain, y los dividiremos en diferentes partes, y luego los guardaremos y almacenaremos en MongoDB usando la búsqueda de vectores de MongoDB Atlas. Crearemos esos embeddings, le diremos qué colección, qué nombre de índice, qué clave de texto y qué clave de embedding usar, y luego console loguearemos que hemos terminado, cerraremos la conexión a MongoDB.

Y hay un pequeño error tipográfico aquí. Por supuesto, eso no sucedió en la práctica. Y por supuesto, no estaba escribiendo porque eso era una extensión de VS code. Esto debería ser import recursive character text splitter. Así que voy a copiar eso.

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.
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
Construyendo Aplicaciones AI para la Web
React Day Berlin 2023React Day Berlin 2023
98 min
Construyendo Aplicaciones AI para la Web
Workshop
Roy Derks
Roy Derks
Hoy en día, cada desarrollador está utilizando LLMs en diferentes formas y figuras. Muchos productos han introducido capacidades AI incorporadas, y en esta masterclass aprenderás cómo construir tu propia aplicación AI. No se necesita experiencia en la construcción de LLMs o en el aprendizaje automático. En cambio, utilizaremos tecnologías web como JavaScript, React y GraphQL que ya conoces y amas.
Construyendo tu Aplicación de IA Generativa
React Summit 2024React Summit 2024
82 min
Construyendo tu Aplicación de IA Generativa
WorkshopFree
Dieter Flick
Dieter Flick
La IA generativa está emocionando a los entusiastas de la tecnología y a las empresas con su vasto potencial. En esta sesión, presentaremos Retrieval Augmented Generation (RAG), un marco que proporciona contexto a los Modelos de Lenguaje Grande (LLMs) sin necesidad de volver a entrenarlos. Te guiaremos paso a paso en la construcción de tu propia aplicación RAG, culminando en un chatbot completamente funcional.
Conceptos Clave: IA Generativa, Retrieval Augmented Generation
Tecnologías: OpenAI, LangChain, AstraDB Vector Store, Streamlit, Langflow