danGPT
Pruébelo en https://dangpt.vercel.app/.
Este proyecto muestra cómo componer servicios de IA e implementar RAG (Generación Aumentada de Recuperación) con IA Generativa.
Aquí hay un desglose de cómo funciona:
- Fuera del alcance de este repositorio, hemos recopilado una gran cantidad de datos. En este caso, las publicaciones de Dan.
- Luego convertimos todo el texto que nos gustaría buscar en vectores (listas de números) utilizando un modelo de aprendizaje automático que asigna el significado del texto a un espacio numérico multidimensional. "Incrustar" el texto en el espacio vectorial utilizando un "modelo de incrustaciones". En este caso,
text-embedding-3-small
de OpenAI. - Luego almacenamos esos vectores en una base de datos de vectores. Nuestra arma preferida aquí es AstraDB de DataStax.
Luego, cuando un usuario envía una consulta, nosotros:
- Convierta la consulta en un vector usando el mismo modelo de incrustaciones.
- Busque en la base de datos de vectores los vectores más similares al vector de consulta, o vectores "cercanos" al vector de consulta en el espacio dimensional.
- Recupera muchos textos originales de los vectores más similares.
- Tome esos textos originales e introdúzcalos como contexto en un modelo de IA generativa. En este caso,
gpt-3.5-turbo
de OpenAI. El mismo modelo detrás del nivel gratuito de ChatGPT. - Luego, el modelo de IA generativa genera una respuesta basada en el contexto que se le dio, haciéndose pasar por Dan.
Vale la pena señalar que esto es solo una demostración tonta de un proyecto paralelo y es probable que sea incorrecto. Es más para la educación que cualquier otra cosa.