Conexión a Huggingface GPT-2 en Google Collaboratory

Clase 1 de 26Curso de Agentes AI

Contenido del curso

Resumen

Construir aplicaciones inteligentes que no solo respondan preguntas, sino que anticipen necesidades y actúen de forma autónoma, es posible gracias a LangChain y los Large Language Models. Entender cómo conectarse a estos modelos es el primer paso para crear chatbots, asistentes virtuales y herramientas de búsqueda avanzada que transforman la experiencia del usuario.

¿Por qué LangChain es esencial para trabajar con Large Language Models?

LangChain facilita todas las etapas del ciclo de vida de una aplicación basada en Large Language Models (LLMs): desde la creación y selección del modelo, pasando por la puesta en producción, hasta la evaluación de la aplicación [0:22]. Su enfoque modular permite encadenar componentes para resolver tareas complejas de manera eficiente.

Los componentes clave de LangChain son:

  • Cadenas (chains): secuencias de pasos que combinan LLMs con otras herramientas como APIs para ejecutar tareas complejas [0:36].
  • Memoria: permite a las aplicaciones recordar interacciones previas, mejorando la experiencia en diálogos continuos [0:45].
  • Herramientas: integración con servicios externos como Google Search o Wolfram Alpha [0:52].
  • Agentes: entidades que toman decisiones autónomas sobre qué acción ejecutar, basándose en las entradas del usuario y los recursos disponibles [0:58].

¿Qué es un agente y cómo funciona en LangChain?

Un agente es un sistema que percibe su entorno, procesa información y toma decisiones autónomas [1:09]. Según el libro Artificial Intelligence: A Modern Approach, un agente actúa basándose en la percepción de su entorno. En LangChain, los agentes usan LLMs para analizar entradas, razonar y actuar [1:22].

Un ejemplo práctico: un asistente virtual que recibe la solicitud de reservar un vuelo desde Nueva York. El agente percibe la entrada de texto, razona usando el LLM para comprender los detalles y actúa interactuando con APIs de aerolíneas para buscar y reservar vuelos [1:32].

¿Cómo conectarse a un LLM usando Hugging Face y LangChain?

La documentación de LangChain incluye una sección de integraciones donde se listan todos los proveedores disponibles: Azure, Azure OpenAI, Google AI, Google Cloud Vertex AI, entre otros [2:10]. Para esta práctica se utiliza Hugging Face, que ofrece dos formas de conexión: mediante un endpoint o descargando los modelos con pipeline locales [2:28].

El modelo seleccionado es GPT-2, disponible de manera gratuita en Hugging Face [2:38].

¿Cuáles son los pasos para ejecutar el código en Google Colab?

Primero se instalan las dependencias necesarias. Se requieren dos librerías principales:

python !pip install transformers langchain-huggingface

Una vez instaladas las dependencias [2:55], se carga el modelo importando la clase correspondiente desde langchain_huggingface:

python from langchain_huggingface import HuggingFacePipeline

hf = HuggingFacePipeline.from_model_id( model_id="gpt2", task="text-generation", pipeline_kwargs={"max_new_tokens": 10} )

En este bloque se define el ID del modelo como gpt2, se especifica que la tarea es generación de texto (text-generation) y se limita la respuesta a diez tokens [3:15].

Para generar texto a partir de una entrada, se utiliza el método invoke:

python resultado = hf.invoke("Explain what is an electroencephalogram") print(resultado)

Cada vez que se ejecuta, el modelo construye una nueva cadena de texto a partir de la pregunta proporcionada, generando respuestas distintas en cada llamada [4:02].

¿Qué modelos están disponibles en la documentación de LangChain?

La documentación ofrece una tabla detallada con todos los LLMs accesibles desde LangChain. Esto permite comparar proveedores y elegir el más adecuado según las necesidades del proyecto [2:05]. Entre las opciones se encuentran modelos de Azure, Google y Hugging Face, cada uno con sus particularidades de conexión y configuración.

Esta conexión con Hugging Face representa la forma más sencilla de acceder a un modelo open source [4:22]. Todos estos fragmentos de código realizados en Google Colab serán integrados posteriormente en un proyecto completo usando Visual Studio Code.

¿Cuáles serían los tres modelos que seleccionarías para tu próximo proyecto y por qué? Comparte tu respuesta en los comentarios.

      Conexión a Huggingface GPT-2 en Google Collaboratory