No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

Construcción de agentes en LangChain

24/26
Recursos

¿Qué es un Agente en LangChain?

Un agente es un sistema que utiliza un modelo de lenguaje como núcleo para tomar decisiones sobre qué acciones ejecutar y qué entradas proporcionar a esas acciones. Estos agentes pueden realizar tareas más complejas y específicas que las que se limitan a la generación de texto, ya que son capaces de:

  • Interactuar con herramientas externas (APIs, bases de datos, web scraping, etc.).
  • Tomar decisiones basadas en el contexto y las acciones previas.
  • Restringir sus respuestas utilizando reglas, memoria de conversaciones previas o datos en tiempo real.

Los agentes permiten controlar partes de código o acceder a información en tiempo real, lo que los hace mucho más útiles en aplicaciones que requieren integración con sistemas externos.

Uso de Toolkits en Agentes

En LangChain, los Toolkits son una colección de herramientas que se pueden integrar con un agente para que este realice acciones específicas. Cada tool (herramienta) puede conectarse a un servicio externo o sistema y actuar como un intermediario entre el modelo de lenguaje y la información que se necesita.

En este proyecto, estamos utilizando Tabli Search, una herramienta para realizar búsquedas en internet en tiempo real. Esto permite que el agente obtenga información actualizada sobre cualquier tema que se necesite, lo cual es ideal para consultas dinámicas o casos donde el modelo por sí solo no tenga acceso a datos específicos.

Ejemplo: Si el agente necesita obtener información reciente sobre un modelo de OpenAI, como el O1-Mini, puede utilizar Tabli Search para hacer la consulta, buscar en fuentes externas, y devolver una respuesta basada en los resultados encontrados.

Cómo Funcionan los Agentes con Múltiples Herramientas

En este caso, hemos combinado el uso de Tabli Search con un Retriever Tool. Esta segunda herramienta utiliza una base vectorial para almacenar y recuperar documentos fragmentados (como páginas web o PDFs) que ya hemos cargado y vectorizado.

El flujo general es el siguiente:

  1. Input del Usuario: El agente recibe una consulta del usuario.
  2. Elección de Herramienta: Basado en la naturaleza de la pregunta, el agente decide si utilizar su base de conocimientos local (almacenada en la base vectorial) o realizar una búsqueda en la web usando Tabli Search.
  3. Búsqueda y Respuesta: Si es necesario, el agente hace la búsqueda y genera una respuesta utilizando las herramientas seleccionadas.
  4. Respuesta Final: El modelo de lenguaje, integrado con las herramientas, procesa los resultados y genera una respuesta para el usuario.

Este enfoque permite que el agente sea más versátil y útil, pudiendo manejar tanto información almacenada previamente como datos obtenidos en tiempo real.

Integración de la Base Vectorial

La base vectorial permite al agente almacenar y buscar en documentos previamente vectorizados (convertidos en representaciones numéricas llamadas embeddings). Cada vez que un usuario hace una pregunta, el agente puede buscar en esta base vectorial para recuperar información relevante, que luego se procesa junto con los resultados de las búsquedas en internet.

Vectorización: Este proceso convierte los documentos (como PDFs o sitios web) en vectores, que son representaciones numéricas del contenido semántico. Esto permite realizar búsquedas por similitud en los documentos cargados. Los vectores similares se encuentran cerca en el espacio vectorial, lo que permite recuperar información relevante rápidamente.

Construcción del Prompt para el Agente

En este proyecto, el agente tiene un prompt personalizado que define cómo debe comportarse. El System Prompt indica las reglas que el agente debe seguir, como consultar los documentos o utilizar Tabli Search para información externa. Este prompt también define cómo debe interactuar con las diferentes herramientas disponibles y cómo estructurar las respuestas para los usuarios.

Aportes 4

Preguntas 0

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

La importacion de Tavily cambio, por si a alguien mas no le funciona: ```js # from langchain_community.tools.tavily_search import TavilySearchResults from langchain_community.tools import TavilySearchResults ```
El enlace al Google Colab requiere permisos
Genial!!! muchas gracias por hacer un curso tan organizado.
Bien, esto empieza a tomar forma😏