¿IA generativa en tu aplicación? ¿Qué podría salir mal?

Rate this content
Bookmark

La utilización de modelos de IA generativos puede resultar en una gran variedad de salidas, incluso inesperadas, lo que los hace menos deterministas y más difíciles de probar. Al intentar integrar estos modelos en tu aplicación, puede ser un desafío garantizar que mantienes un alto nivel de calidad de estas salidas de IA, e incluso asegurar que sus resultados no interrumpan el flujo de tu aplicación. Ven a revivir mi viaje de descubrimiento sobre cómo pude mejorar drásticamente los resultados de la API de ChatGPT de OpenAi, para su uso dentro del producto de mi empresa. En esta charla compartiré muchos consejos que te ayudarán a utilizar de manera más efectiva el poder de modelos de IA como ChatGPT en tus propias aplicaciones, incluyendo estrategias de prueba y cómo evitar muchos de los problemas con los que me encontré.

FAQ

GenreBI es una herramienta que se utiliza en el contexto de desarrollo de software para mejorar la calidad del código, aplicándose en pruebas y otros aspectos del desarrollo de productos de software.

La misión de Severity es tomar mejores decisiones en los equipos de producto, enfocándose en ingenieros y personal de producto para mejorar la calidad y efectividad de sus desarrollos.

Es crucial entender las limitaciones de los modelos de OpenAI para asegurar la calidad del software. Conocer sus fortalezas y debilidades permite integrar la inteligencia artificial de manera más efectiva en el desarrollo de productos.

Para manejar la naturaleza no determinista de los modelos de IA, se utilizan estrategias como pruebas de contrato dinámicas y el ajuste de indicaciones para mejorar la precisión de las respuestas.

Se utilizó Docker para lanzar una instancia de Puppeteer en un servidor EC2 y exponer una API que emulaba la funcionalidad de ChatGPT, permitiendo su integración en aplicaciones antes de que estuviera disponible una API oficial.

Los desafíos incluyen manejar respuestas no deterministas, integrar adecuadamente las funciones de IA en el flujo de aplicaciones, y entender y adaptarse a las limitaciones específicas de los modelos de IA utilizados.

La prueba de contrato permite validar la interacción con la API sin incurrir en costos adicionales por uso y minimiza las latencias al utilizar respuestas simuladas, lo que es especialmente útil cuando se interactúa con APIs basadas en uso como las de OpenAI.

Todd Fisher
Todd Fisher
29 min
07 Dec, 2023

Comments

Sign in or register to post your comment.

Video Summary and Transcription

La charla de hoy discute la aplicación de GenreBI en aplicaciones, utilizando Docker para hacer que ChatGPT funcione en cualquier máquina, desafíos con las respuestas JSON, pruebas de modelos de IA, manejo de problemas de API de IA y respuestas, conteo de tokens y límites de tasa, descubriendo limitaciones y adoptando un enfoque reactivo, la fiabilidad y los desafíos de las API de IA, y el uso de GPT y AI Copilot en el desarrollo de software.

1. Introducción a GenreBI en Apps

Short description:

Hoy, quiero hablar sobre GenreBI en nuestras aplicaciones como una característica del producto. Discutiremos su aplicación en bases de código y la importancia de la calidad. Comprender el flujo de una aplicación y sus dependencias, específicamente las limitaciones de los modelos de OpenAI, es crucial para una mejor toma de decisiones y la calidad general del producto.

Genial. Así que hoy quiero hablar un poco sobre GenreBI en nuestras aplicaciones como una especie de característica del producto. Un poco diferente a la charla anterior que dio Olga, que fue bastante impresionante, usas GenreBI para escribir pruebas. En este caso, queremos hablar un poco sobre el otro lado de donde se podría aplicar GenreBI en tu base de código, que esencialmente se filtra en tu prueba, ¿verdad? Dicho esto, quiero cubrir brevemente nuestra compañía, en la que trabajo actualmente, Severity, he estado aquí durante aproximadamente un año. Hacemos un montón de cosas de IA. Nuestra misión final es tomar mejores decisiones, desde el existencial humano, vamos a tomar mejores decisiones donde podamos. Pero, por supuesto, eso es algo a gran escala. Así que realmente queremos centrarnos ahora en tomar mejores decisiones en los equipos de producto. Ingenieros, gente de producto, ese tipo de cosas. Así que si eso suena interesante, ve a este sitio web. Si no, eso también está bien. Eso es más contexto de, hemos estado trabajando con esto durante aproximadamente un año. Y con eso, por supuesto, hay muchas cosas de GenreBI que hemos estado utilizando. Y eso es solo un poco de contexto aquí en lo que voy a compartir hoy, porque realmente hay muchas cosas geniales que puedes hacer con la IA, pero hay muchas cosas extrañas cuando realmente pones la IA en las bases de código e intentas hacer que las cosas funcionen desde una perspectiva de producto. Entonces, dicho esto, la calidad es muy importante. Hay muchos aspectos de la calidad en las bases de código. Testing es un aspecto de muchos aspectos. Hay muchas formas diferentes de probar. No entraremos en eso porque creo que todos tenemos una buena idea de lo que son esas cosas. Unidad, hay manual testing, testing automatizado, y mil cosas más. Ahora, otro aspecto importante de la calidad es esta idea de planificar o diseñar el flujo de una aplicación. Entender eso, es muy clave. Comprender cómo los usuarios fluirán a través de tu aplicación, entender dónde las cosas pueden fallar, ese tipo de cosas. Entonces, también voy a tocar un poco sobre eso hoy. Y luego este tercero es entender las dependencias, específicamente sus comportamientos y limitaciones. Entonces, cuando empiezas a usar la IA en tu aplicación como una característica del producto, tienes que entender realmente esas dependencias. En este caso específico, el case study que estoy compartiendo hoy con el material muy es que estamos usando los modelos de OpenAI. Y con eso, es muy crítico entender que los modelos de OpenAI son muy buenos en ciertas cosas, pero muy malos en otras cosas. Y entonces, cuanto mejor entendamos las limitaciones, en general podremos dar mejor calidad, porque al final del día, ya sea pruebas, ya sea diseñar cosas, la calidad es realmente lo que estamos tratando de resolver. Y entonces, dicho esto, esto en realidad puede aplicarse a otros LLMs, otros modelos por ahí, pero específicamente, hemos estado usando OpenAI, y por lo tanto estos ejemplos serán en OpenAI

2. Uso de Docker para hacer que ChatGPT funcione en cualquier máquina

Short description:

Una de las características de Verity era la capacidad de crear y generar documentos. También teníamos un código de ejemplo que demostraba el uso de ChatGPT. Sin embargo, no había una API de ChatGPT para bases de código, lo cual era una gran desventaja. Para solucionar esto, se nos ocurrió la idea de usar Docker para hacer que funcione en cualquier máquina. Vamos a explorar este concepto más a fondo.

formato. Así que, dicho esto, una de las características de Verity que construimos temprano, antes de que saliera ChatGPD, era esta idea de crear un documento, generar o redactar un documento, y eso funcionó bastante bien. Permíteme pasar al siguiente. Así que, código de ejemplo aquí. Yo solo voy a cubrir brevemente esto para ver si funciona bien. Oh, mira eso. Genial. Increíble. Entonces, importación típica de SDK aquí arriba, y luego tenemos una llamada de completions. Eso es esencialmente cómo OpenAI realmente llamará a la IA. Y luego aquí tenemos este prompt aquí. Esto es esencialmente lo que verías en cualquier tipo de cosa de ChatGPT, donde escribes algún tipo de comando, algún tipo de prompt. Eso se cubre aquí. Así que, dicho esto, tenemos este ejemplo aquí. Y por supuesto, si lo ejecutas, tendrías algo como local host es mi servidor, ¿cuál es el tuyo?, para completar las rosas son rojas, las violetas son azules. Lo siento, siento que esto está en el camino. Permíteme subir más aquí, y así sucesivamente, ¿verdad? Y entonces, como dije, así que si vas al playground en ChatGPT, misma idea allí. Así que, esas son las dos cosas que son iguales allí.

Así que, dicho esto, si retrocedemos a noviembre de 2022, salió ChatGPT. Fue un gran revuelo. Todos estaban como, tan emocionados. Oh, ChatGPT, va a revolucionar el mundo, todas esas cosas buenas. Y creo que en su mayor parte tenían razón. Y entonces, una desventaja, sin embargo, con ese anuncio fue que no había una API de ChatGPT para que las bases de código realmente usaran cosas geniales de IA, al menos no todavía. Y eso fue un gran bajón. Y entonces, sabes, pensando en este playground donde podrías escribir cualquier prompt y generar lo que diablos quieras, no teníamos eso en la base de código, ¿verdad? Y entonces, tuvimos esta idea genial. ¿Alguien aquí ha usado Docker? Así que, Docker es una idea bastante genial, ¿verdad? Y este es uno de mis memes favoritos sobre Docker. Es como, bueno, funciona en mi máquina. ¿Y si encontramos una forma de hacer que funcione en no mi máquina? Y entonces, vamos a tomar esto. Así que, esto es algo que intentamos.

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
En esta charla, construiremos nuestro propio Jarvis utilizando Web APIs y langchain. Habrá codificación en vivo.
IA y Desarrollo Web: ¿Hype o Realidad?
JSNation 2023JSNation 2023
24 min
IA y Desarrollo Web: ¿Hype o Realidad?
En esta charla, echaremos un vistazo a la creciente intersección entre la IA y el desarrollo web. Hay mucho revuelo en torno a los posibles usos de la IA en la escritura, comprensión y depuración de código, y su integración en nuestras aplicaciones se está volviendo más fácil y asequible. Pero también hay preguntas sobre el futuro de la IA en el desarrollo de aplicaciones y si nos hará más productivos o nos quitará nuestros trabajos.
Hay mucha emoción, escepticismo y preocupación sobre el aumento de la IA en el desarrollo web. Exploraremos el verdadero potencial de la IA en la creación de nuevos marcos de desarrollo web y separaremos los hechos de la ficción.
Entonces, si estás interesado en el futuro del desarrollo web y el papel de la IA en él, esta charla es para ti. Ah, y este resumen de la charla fue escrito por IA después de que le diera algunos de mis pensamientos no estructurados.
El Ascenso del Ingeniero de IA
React Summit US 2023React Summit US 2023
30 min
El Ascenso del Ingeniero de IA
Estamos observando un cambio generacional hacia la derecha en la aplicación de la IA, impulsado por las capacidades emergentes y la disponibilidad de modelos de fundación de código abierto/API. Una amplia gama de tareas de IA que solían requerir 5 años y un equipo de investigación para lograr en 2013, ahora sólo requieren documentación de API y una tarde libre en 2023. Las capacidades emergentes están creando un nuevo título: para manejarlas, tendremos que ir más allá del Ingeniero de Prompts y escribir *software*. ¡Exploremos la amplia gama de nuevas oportunidades en la era del Software 3.0!
Aplicaciones Web del Futuro con Web AI
JSNation 2024JSNation 2024
32 min
Aplicaciones Web del Futuro con Web AI
La IA está en todas partes, pero ¿por qué deberías preocuparte como desarrollador web? Únete a Jason Mayes, líder de Web AI en Google, quien te pondrá en el camino desmitificando la terminología común para asegurarse de que nadie se quede atrás, y luego te guiará a través de algunos de los últimos modelos de aprendizaje automático, herramientas y frameworks que puedes utilizar directamente en el navegador a través de JavaScript para ayudarte a dar vida a tus ideas creativas de aplicaciones web para casi cualquier industria en la que estés trabajando. Al mover la IA al lado del cliente, no hay dependencia del servidor después de la carga de la página, lo que te brinda beneficios como privacidad, baja latencia, soluciones sin conexión y costos más bajos, que serán de creciente importancia a medida que se desarrolle el campo. Esta charla es adecuada para todos los curiosos de la web y el aprendizaje automático, así que ven y aprende algo nuevo para agregar a tu conjunto de herramientas de ingeniería web para 2024.
Construyendo la IA para Athena Crisis
JS GameDev Summit 2023JS GameDev Summit 2023
37 min
Construyendo la IA para Athena Crisis
Esta charla se adentrará en cómo construir una IA para un juego de estrategia por turnos desde cero. Cuando comencé a construir Athena Crisis, no tenía idea de cómo construir una IA. Todos los recursos disponibles eran demasiado complejos o confusos, así que simplemente comencé a construirlo basándome en cómo jugaría el juego. ¡Si quieres aprender cómo construir una IA, no te pierdas esta charla!
Cobertura de código con IA
TestJS Summit 2023TestJS Summit 2023
8 min
Cobertura de código con IA
En esta demostración rápida mostraré cómo Codium, una herramienta generativa de IA de vanguardia, está revolucionando la integridad del código. Demostraremos la capacidad de Codium para generar pruebas Mocha útiles, tomadas de un repositorio público y destacaremos la integración perfecta. Puedes ver a Codium transformando escenarios de prueba complejos en información accionable, impulsando la cobertura de código hacia adelante. ¡Únete a nosotros para un vistazo perspicaz al futuro de las pruebas automatizadas donde la velocidad se encuentra con la calidad!

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.
Trabajando con OpenAI y la Ingeniería de Prompts para Desarrolladores de React
React Advanced Conference 2023React Advanced Conference 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 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
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
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
Deja que la IA sea tu Documentación
JSNation 2024JSNation 2024
69 min
Deja que la IA sea tu Documentación
Workshop
Jesse Hall
Jesse Hall
Únete a nuestro masterclass dinámico para crear un portal de documentación impulsado por IA. Aprende a integrar ChatGPT de OpenAI con Next.js 14, Tailwind CSS y tecnología de vanguardia para ofrecer soluciones de código e resúmenes instantáneos. Esta sesión práctica te equipará con el conocimiento para revolucionar la forma en que los usuarios interactúan con la documentación, convirtiendo las búsquedas tediosas en descubrimientos eficientes e inteligentes.
Aspectos destacados:
- Experiencia práctica en la creación de un sitio de documentación impulsado por IA.- Comprensión de la integración de la IA en las experiencias de usuario.- Habilidades prácticas con las últimas tecnologías de desarrollo web.- Estrategias para implementar y mantener recursos de documentación inteligente.
Tabla de contenidos:- Introducción a la IA en la documentación- Configuración del entorno- Construcción de la estructura de documentación- Integración de ChatGPT para documentación interactiva
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
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)