🦙COMO AGREGAR DOCUMENTOS A LLAMA 3 8B en LOCAL - RAG con CHROMA - 100% PRIVADO Y GRATIS ✅REPO
Vložit
- čas přidán 25. 07. 2024
- En este vídeo les muestro un repo en el cuál le agregué RAG a Llama en local usando Chroma.
TIMELINE
00:00 - Intro
00:52 - Cómo funciona RAG
1:57 - Probando el RAG con Llama en local
2:36 - Probando sin RAG
3:57 - Probando con RAG
7:33 - Explorando el código
10:04 - Text splitting: Qué son los chunks
11:50 - Se me va la olla explicando el montón de código
15:32 - Agregando información a Llama con RAG usando a Chayito
19:08 - Ending
✅ REPO
github.com/Charlytoc/complete... - Věda a technologie
Exelente video me hubiera gustado escuchar los comentarios sin alucinaciones del codigo jajaja nuevo sub
Editar este vídeo me tomó alrededor de 3 horas, más las horas invertidas en investigación, prueba y error para poder hacer cada app que subo pues se va un tiempo considerable.
Si te gusta lo que vez, deja un comentario, y si no, también puedes dejarme uno para saber cómo mejorar, me gusta leerlos. 👍🏻
`brew install llama` es algo que funciona en macos, porque Brew es un gestor de paquetes (de paquetes de HomeBrew) de forma parecida a lo que `apt` lo es en Ubuntu, así que no está alucinando nada. Solo que quizá debiste especificarle un poco más.
Muchas gracias. Sería interesante unos videos de Langchain / LangChain Expression Language (LCEL) /Langgraph
La música fue una decisión defícil, creo que tengo el micrófono con mucha ganancia, tienen que bajarle un poco de volumen
amigo eres un seco, me interesaría aprender mas sobre esto y explicas super bien... gracias.
@@Matiiiii-2024 He pasado unas semanas inactivo por algunos asuntos personales, pero ya es hora de empezar a hacer más vídeos
@@Matiiiii-2024 ¡muchas gracias por comentar!
@@charlytoc132 a tu tiempo bro, queria preguntar si podrias hacer algun video para conectar todo esto con una GUI para poder hacer consultas, y de que forma puedo hacer consultas para corroborar si el chromaDB esta trabajando con los embeddings?
@@Matiiiii-2024 hice otro vídeo con otra interfaz, puedes usar muchas cosas dependiendo del lenguaje de programación que manejes. Si trabajas con Python y FastAPI, por ejemplo, podrías despegar una aplicación de React en una de las rutas como Staticfiles, si usas Node puedes usar el mismo approach, si no te sientes cómodo con React puedes usar cualquier otro framework para frontend o HTML puro.
@@Matiiiii-2024 y con respecto a la segunda pregunta, cuando solicitas información a Chroma, te da más información de cada vector aparte de su contenido. Y en la documentación también hay métodos para saber cuántos vectores se han agregado en tu base de datos vectorial. ¿Lo que quieres es asegurarte de que estás usando ciertos vectores en particular?
Gracias por este excelente video, cuando puedas sería interesante, llevarlo a un Char personalizado, con acceso para varios usuarios con diferentes perfiles. Gracias Saludos.
podrias hacer videos de como usar los LLM con open web ui
Estoy tratando de usar tools en ollama, aun esta difícil. Creo que debo entrenar una IA en español. Gracias por tu video.
¿Has probado hacerlo por tu cuenta? Podrías pedirle que retorne un JSON con las características que necesitas y usar el response_format="json"
Aunque la verdad Lllama-3-8B no es lo mejor para usar tools
Excelente guía, me has iluminado, estoy con un proyecto de leer PDF de documentos escaneados, y se busca vincular llama, pero no funciona muy bien.
Revisaré todos tus videos a ver si logro mejorar la lectura de estos documentos
@@martin_perez puedes contarme sobre tu proyecto y así lo tomo de inspiración 👌🏻
@@martin_perez o tus dudas, más bien
@@charlytoc132 dame tu correo para escribirte.
bro, como se podria agregar la IA con una GUI? para tener una interfaz mas amigable?
Gracias por tu tiempo y esfuerzo. El RAG es el mundo INDIE de la IA. Tenemos el potencial de google, microsoft, nvidia o chatgpt en nuestras manos. Somos responsables de acercar este mundo a los pequeños empresarios y adaptarlo a sus negocios o necesidades
¡Concuerdo completamente! De hecho he estado pensando en iniciar una empresa de desarrollo de software e implementación de soluciones con IA donde vivo porque aún no existe y tendría una ventaja competitiva, pero aún no he desarrollado suficiente la idea, este comentario me anima a darle un poco más de atención a la misma, uno debería aspirar a ganar más y ser tu propio jefe
@@charlytoc132 Suerte. Las empresas le gustan tener el control de sus propios datos, y que el resultado lo perciba como propio, eso los grandes no se lo pueden dar. Hay un gran nicho de mercado y como en todo tienen que percibir que si invierten le retornará un beneficio de cualquier tipo.
muy bueno el video, soy nuevo en IA y me sirvió mucho para arrancar con algo que sí funciona !! me quedaron archivos como vectors.py , server.py que no se bien como funcionan, estaría bueno alguna descripción, aunque ya aprenderé esa parte .. gracias saludos
¡Qué bueno que te haya gustado! Justo hoy, en unos minutos, sale otro de una app fullstack con IA, en este caso se incluye una interfaz de usuario con React, y hay un servidor con FastAPI como el que existe en este proyecto, ¡échale un ojo para que aprendas cosas nuevas!
hola amigo excelente video, una consulta, que modelo recomendarías para un software de anonimizscion de documentos
En lo que más me fijaría sería en el tamaño de los documentos. Un buen prompt te puede servir con cualquier modelo, pero en este caso si el documento es muy grande, te recomendaría modelos con un amplio contexto como Claude o GPT-4o, tambien podrías usar la API de Groq para usar Llama 70B pero el contexto de este es de 8 mil tokens, que te bastan para muchos documentos, pero no para todos. Entonces eso, si son muy grandes, modelos con amplio contexto (o también podrías picar el documento para que queda en el contexto de modelos más pequeños).
Por otro lado aunque el contexto de entrada sea infinito, el output no, muchos modelos están restringidos a 4k tokens, entonces te vas a encontrar en que le pasas un documento gigante y te da solo una parte. Te recomendaría en ese caso que pienses tu lógica para solventar esta limitación orquestando las llamadas necesarias a la API para e ir concatenando el documento nuevo poco a poco. Para mayor velocidad te recomendaría ahora sí Groq que tiene una velocidad de inferencia brutal, y estoy seguro que Llama 70B puede entender una tarea para esta, además que te saldrá más barato que OpenAI o Anthropic.
¡Mucho éxito en tu proyecto! Si quieres ver cómo usar Groq mira un vídeo que hice que tiene un template con FastAPI + React y Groq
@@charlytoc132 muchas gracias por tu respuesta, hice pruebas con spacy pero no es suficiente no detecta bien los nombres, tal vez has usado spacy_llm?
Muy interesante el video, para mi fue bastante difícil de entender. Estaria bueno ver la parte inicial del proyecto, de mi parte estoy comenzando con la programación y al parecer el resto de los que siguen tu canal tienen mucha experiencia, me sigue gustando tu manera de explicar, voy a seguir practicando para en algún momento llegar a este nivel. Saludos y exitos
¡Me gusta que haya gente que está empezando! De hecho estoy haciendo vídeos (aunque son para la empresa que trabajo) de Python, Javascript, HTML y CSS, luego quiero subir cursos acá también pero bueno, realmente trabajar de desarrollador y hacer videos puede ser algo demandante de tiempo, ¿qué estás estudiando?
Hola @@charlytoc132 , muchas gracias por tomarte el tiempo para responderme. Estoy estudiando tec en programacion, empecé la carrera este año, a mi me gustaria saber y ver cómo es tu forma de resolver un requerimiento de programación con algún ejemplo básico. No hay muchos videos con esas temáticas. Segui con esta forma de hacer los videos, tenes un diferencial con otros devtubers, te felicito!!!
@@diegoserlini6798 ¿qué es lo que sueles ver? ¿Qué tipo de cosas te gustaría que resolviera? Algo que realmente me interesa es ver lo que les gusta a las personas que comentan, eso es lo que al final hace crecer a una comunidad y lo tomo mucho en cuenta
@@charlytoc132 recien estoy comenzando con programación funcional utilizando diagramas de flujo. Tus videos son muy buenos, pero siento que me falta la parte en donde se te ocurre la idea y todo el proceso de iniciar un proyecto.
Estuve viendo otro youtuber en ingles que empezó el challange de 100 días programando y explica la forma de encarar cada uno de los problemas. Espero que te sirva. Gracias x todo el tiempo que invertís para compartir tus conocimientos.
@@diegoserlini6798 creo que debería hacer videos programando y no tanto mostrando proyectos a ver qué pasa
Acabo de ver el vídeo y me ha parecido de interés. Tras ver el repositorio me he encontrado con una duda que quisiera resolverla antes de sumergirme en la instalación, pruebas y posibles mejoras. ¿Los embeddings pueden generarse apartir de documentos en español?. ¿Hay que cambiar algo en el sistema de generación de embeddings si tenemos documentos escritos en distintos idiomas como Inglés y español?.
No realmente, eso sí, yo consideraría usar Groq, una API que usa LPU para aumentar la velocidad de generación y usar Llama 3 70B si es un proyecto que quieres para usuarios, ya que Llama 3 8B puede a veces responderte en inglés incluso si le pides que te hable en español.
Cosas que se pueden hacer: modificar el prompt para que sea en español. Con respecto a los documentos, pueden estar en cualquier idioma realmente