Repositorio para aprender a usar LangGraph básico con Google Gemini Flash
Este repositorio contiene ejemplos prácticos en Jupyter notebooks para aprender a construir agentes y flujos de trabajo usando LangGraph con Google Gemini Flash.
- 📚 Repositorio educativo para aprender LangGraph desde cero
- 🤖 Ejemplos prácticos con Google Gemini Flash
- 📓 Notebooks interactivos listos para ejecutar
- ⚡ Configuración simple - cada notebook maneja sus propias variables
- 🛠️ Herramientas para desarrollo rápido con IA
1 LLM estructurado.ipynb- Salidas estructuradas con Pydantic2 Encadenamiento de Prompts.ipynb- Encadenamiento secuencial avanzado3 Paralelizado.ipynb- Procesamiento paralelo de tareas4 Enrutador copy.ipynb- Enrutamiento condicional de flujos5 Orquestador.ipynb- Orquestación compleja de agentes6 evaluador-optimizador.ipynb- Evaluación y optimización de respuestas7 Agente con memoria.ipynb- Agentes con persistencia y memoria
Agente expuesto en un API/- API completa con FastAPI para el agente con memoria
demo_gemini.py- Demo interactivo con chat en terminalrequirements.txt- Todas las dependencias necesarias.gitignore- Protección automática de archivos sensibles
pip install -r requirements.txt- Ve a: Google AI Studio
- Inicia sesión con tu cuenta de Google
- Crea una nueva API key
- Copia la key (empieza con
AIza...)
¡Eso es todo! 🎉
# Iniciar Jupyter Notebook
jupyter notebook
# O usar Jupyter Lab
jupyter labCada notebook te pedirá tu API key la primera vez que lo ejecutes. Si usas VS Code, el prompt puede aparecer en la parte superior de la ventana. Solo pégala cuando aparezca el prompt y ¡listo!
Ten en cuenta que esta key desaparecerá al reiniciar el kernel de Python si estás usando un entorno virtual, que es lo recomendado para trabajar.
Cada notebook incluye esta configuración automática:
import os
import getpass
from langchain_google_genai import ChatGoogleGenerativeAI
# Configuración automática de API key
def _set_env(var: str):
if not os.environ.get(var):
os.environ[var] = getpass.getpass(f"{var}: ")
_set_env("GOOGLE_API_KEY")
llm = ChatGoogleGenerativeAI(model="gemini-1.5-pro")- ✅ LLM Estructurado - Salidas estructuradas con Pydantic
- ✅ Encadenamiento de Prompts - Secuencias avanzadas de prompts
- ✅ Procesamiento Paralelo - Ejecutar tareas en paralelo
- ✅ Enrutador - Flujos condicionales y decisiones
- ✅ Orquestador - Coordinación de múltiples agentes
- ✅ Evaluador-Optimizador - Evaluación y mejora automática
- ✅ Agente con Memoria - Persistencia entre conversaciones
- ✅ API REST - Exposición del agente vía FastAPI
- 🔄 Estados y grafos de procesamiento
- 🔄 Nodos y aristas en flujos de trabajo
- 🔄 Manejo de datos entre pasos
- 🔄 Agentes con múltiples herramientas
- 🔮 Más ejemplos avanzados
- 🔮 Integración con herramientas externas
- 🔮 Casos de uso con MCP
Para obtener el máximo aprendizaje, sigue este orden:
-
📓 Notebooks (en orden numérico):
1 LLM estructurado.ipynb→ Fundamentos de salidas estructuradas2 Encadenamiento de Prompts.ipynb→ Secuencias y flujos3 Paralelizado.ipynb→ Procesamiento simultáneo4 Enrutador copy.ipynb→ Decisiones y enrutamiento5 Orquestador.ipynb→ Coordinación avanzada6 evaluador-optimizador.ipynb→ Evaluación y mejora7 Agente con memoria.ipynb→ Persistencia y memoria
-
🚀 Proyecto Final:
Agente expuesto en un API/→ Implementación completa en producción
¿Quieres probar Gemini Flash inmediatamente?
python demo_gemini.pyTe pedirá tu API key y podrás chatear directamente con Gemini en la terminal.
Demo_Lg/
├── 📁 Ejemplos/ # Notebooks de LangGraph
│ ├── 1 LLM estructurado.ipynb # Salidas estructuradas
│ ├── 2 Encadenamiento de Prompts.ipynb # Secuencias de prompts
│ ├── 3 Paralelizado.ipynb # Procesamiento paralelo
│ ├── 4 Enrutador.ipynb # Enrutamiento condicional
│ ├── 5 Orquestador.ipynb # Orquestación de agentes
│ ├── 6 evaluador-optimizador.ipynb # Evaluación automática
│ ├── 7 Agente con memoria.ipynb # Agentes con memoria
│ └── 🚀 Agente expuesto en un API/ # API REST con FastAPI
├── 📦 requirements.txt # Dependencias del proyecto
├── 🤖 demo_gemini.py # Demo interactivo en terminal
├── 🛡️ .gitignore # Protección de archivos
└── 📖 README.md # Este archivo
🛡️ API Keys protegidas automáticamente:
- Cada notebook usa
getpasspara ocultar tu API key - Las keys no se guardan en archivos
- No hay riesgo de subir keys al repositorio si lo clona a uno propio
¡Las contribuciones son bienvenidas!
- 🐛 Reportar bugs o problemas
- 💡 Sugerir mejoras o nuevos ejemplos
- 📚 Agregar más casos de uso
- 📝 Mejorar documentación
- Instalación:
pip install -r requirements.txt - API Key: Google AI Studio
- Jupyter:
jupyter notebookojupyter lab
🎉 ¡Comienza con pip install -r requirements.txt y abre los notebooks!
- Jorge Moreno
LinkedIn