Chatbot Centro REDES

Chatbot personalizado con LangChain y Groq

Abierta la inscripción

Área: ANÁLISIS DE DATOS GEOESPACIALES

Del 06/08/2024 al 17/09/2024

Chatbot –

Docentes a cargo:  Dr. Gustavo González Bonorino

Duración: seis (6) semanas. La carga horaria total se estima en 96 horas.

Descripción general del curso:

ChatGPT es sin duda el producto de IA más conocido. La mayoría de ustedes lo han probado y han ya apreciado la habilidad de ChatGPT para dar atinadas respuestas a las más variadas consultas. Y quizás también hayan ya descubierto algunas de sus debilidades. Si le consultan sobre eventos recientes o sobre información privada, como los apuntes de este curso, ChatGPT no podrá dar respuestas adecuadas. La razón de ello es sencilla: en ambos casos la información no estaba disponible al momento del entrenamiento, ya sea por confidencialidad, ya sea porque el evento tuvo lugar con posterioridad a la última actualización de ChatGPT. La generación de respuestas erróneas, o imprecisas, por parte de un modelo de lenguaje se conoce como alucinación.

El propósito de este curso es mostrarles cómo construir un chatbot, es decir, un programa capaz de simular una conversación con el usuario, que responda a consultas referidas a datos que ustedes inyectan al modelo, datos que no fueron incluidos en el entrenamiento del modelo. Un chatbot es interactivo, establece una relación con el usuario. Las aplicaciones de este tipo de chatbot son múltiples. Puede distribuirse como manual de uso de un producto que su negocio vende, o como instructivo para un curso que ustedes dictan. Puede servir para rápidamente recuperar información sobre la Constitución de Argentina, o sobre la información contable de su empresa. También se emplean para gestionar la atención a clientes, respondiendo a consultas sobre su negocio o empresa, o sobre los requisitos para comprar un automóvil. Y así siguiendo …

Nuestro chatbot empleará un modelo de lenguaje de gran escala (LLM) como motor del procesamiento de los datos. Durante el desarrollo de los LLM se descubrió que son capaces de aprender sobre datos nuevos. Dicha capacidad se implementa mediante un proceso denominado RAG (Retrieval Augmented Generation), libremente traducido como generación de respuestas por recuperación de texto aumentada. Gran parte del curso se dedica a explicar cómo se construye un sistema RAG y el resto a aplicarlo en la construcción de chatbots. Al concluir el curso habrán incorporado varios ejemplos de chatbots que podrá adaptar a requerimientos particulares.

Destinatarios:

Son potenciales interesados quienes puedan imaginar una aplicación para un chatbot conversacional que responda consultas que ChatGPT no puede responder.

Modalidad:

El curso es fuertemente práctico. Videos complementados con scripts en cuadernos Jupyter, y ejercicios de codificación les guiarán hacia la construcción de un chatbot adaptado a sus requerimientos, en seis semanas.

Quienes deseen un certificado con calificación numérica deben presentar un Proyecto Personal al finalizar el curso.

Se ofrecen dos reuniones sincrónicas en horario a convenir, para brindar orientación y para aclarar dudas sobre el Proyecto Personal.

El acceso al material del curso permanece abierto por unos seis meses después del cierre.

Requisitos:

El curso requiere un nivel de conocimiento básico de Python. Deben estar cómodos con funciones y lectura-escritura de datos.

 

Requerimientos de computación:

Los programas que se usan son de acceso libre y gratuito. Es poco exigente en espacio físico en el disco duro y de uso de la memoria RAM. Una PC con procesador Intel i3, o equivalente, es suficiente para trabajar sin dificultad.

 

Programa del curso


Propósito del curso

Organización del curso

  • Definición de chatbot

LangChain

  • Modelos de lenguaje y LangChain
    • Modelos LLM
    • Modelos chat
  • Mensajes como tuplas
  • Parámetros de control
  • Comunicación con el modelo: el prompt
  • Tipos de prompt: cadenas y mensajes
    • Plantilla PromptTemplate
    • Modular el comportamiento del modelo
    • Variables múltiples
  • Guardar un prompt de PromptTemplate en el disco duro
    • Ejemplo de uso – resumen
    • Ejemplo de uso – traducción
  • Plantilla FewShotPromptTemplate
  • Aprendizaje en contexto (“in-context learning”)
  • Plantilla ChatPromptTemplate
  • Modular la actitud del asistente
  • Plantilla MessagePromptTemplate
    • Recuperar las variables dinámicas
    • Enriquecer el prompt

Revisión del uso de variables dinámicas

El sistema RAG (Retrieval Augmented Generation)

  • Organización de un sistema RAG

Carga de documentos (“Document loaders”)

  • Carga de archivos de texto
  • Carga de archivos CSV
  • Carga de documentos en PDF
  • Carga de documentos de MSWord
  • Descarga desde YouTube
  • Descarga de sitios web
  • Descarga del sitio arXiv
  • Carga desde un directorio

Partición de texto (“text splitting”)

  • Ventana de contexto
  • Partición de texto (“text splitting”)
  • Text splitters en LangChain
  • CharacterTextSplitter
  • RecursiveTextSplitter
  • Tokenización
  • La biblioteca tiktoken
  • Incrustación (“embedding”)
    • El espacio vectorial (“vector store”)
    • Vector store con ChromaDB
    • Vector store con FAISS
    • Guardar el espacio vectorial

Recuperación de datos y generación de la respuesta Retrieval

  • Recuperación con rutinas de un vector store
  • Similitud semántica (semantic similarity)
    • Ejemplo Similitud semántica con producto escalar
    • Ejemplo Similitud semántica con similarity_search
    • MMR (Maximum marginal relevance)
  • Recuperación con metadatos
  • Recuperación con rutinas de Retrieval
    • VectorStoreIndexCreator
    • Recuperación sin vector store

Output parsers

  • Parser CSV

Chain

  • LLMChain
  • SimpleSequentialChain
  • SequentialChain
  • RetrievalQA
  • LCEL

Dinámica de la cursada:

Este curso se desarrolla completamente en formato virtual con lo cual permite realizar la capacitación desde cualquier parte del país y de la región. De la misma forma, el formato habilita a que cada alumno ingrese a la plataforma en el momento y horario que le resulte más productivo, ya que el material queda subido a la misma y no existen restricciones de ingreso ni obligación de horarios o encuentros virtuales.

 

Acreditación:  El Centro REDES otorga dos tipos de certificados, de Participación y de Aprobación. El certificado de Aprobación lleva una calificación numérica y exige la presentación de un Proyecto Personal. En dicho proyecto podrán trabajar con datos propios, si lo desean.

Características de los certificados.

 

Aranceles:

Monto Total en 1 pago
Incluye un 10% de descuento
 2 Cuotas de:
Alumnos argentinos**  $53.982 (pesos argentinos)
  $29.990 (pesos argentinos)
Alumnos que realizan el curso desde otros países u$s81 (dólares estadounidenses)

u$s45 (dólares estadounidenses)


** Abonando desde Argentina consultá las Promociones de Facilidades de Pago en Cuotas que ofrece nuestro sistema de cobro para financiar los aranceles con tu tarjeta y sin intereses.

El arancel que corresponde abonar depende del lugar desde donde el alumno se conectará para hacer el curso (no depende de la nacionalidad y/o de la residencia del alumno). Si se trata de una conexión local, desde Argentina, debe abonar el arancel expresado en pesos argentinos, en caso de ser una conexión desde otro país corresponde el otro arancel. La forma de pago, en 2 cuotas mensuales o en un solo pago con descuento, es a elección del alumno.

El arancel deberá estar abonado al iniciar el curso.

Pasos para realizar la inscripción:

* Si es la primera vez que haces un curso en la plataforma virtual del Centro REDES, antes de inscribirte el sistema solicitará que te registres para obtener un usuario y contraseña. Si ya posees usuario y contraseña no será necesario este paso.
* Completar el formulario de inscripción.
* Abonar desde los botones de pago que se encuentran más arriba en esta web . El sistema de pago permite diferentes opciones para abonar el arancel en Argentina (tarjetas de crédito, Pago Fácil, Rapipago y/o cuenta de Mercado Pago). Para cancelar los pagos desde otros países se pueden utilizar distintas tarjetas de crédito.

 

 

Ver formas de pago aquí
Más información y contacto

[email protected]