Physical Address
304 North Cardinal St.
Dorchester Center, MA 02124
Physical Address
304 North Cardinal St.
Dorchester Center, MA 02124

Aprende a construir agentes de IA desde cero con este marco técnico de 10 pasos: Pydantic AI, ReAct, RAG, LangGraph, CrewAI, FastAPI y benchmarking en producción.
Construir un agente de inteligencia artificial no es escribir un chatbot. Es diseñar un sistema que razona, planifica y ejecuta tareas de forma autónoma. En Estudio Naranja hemos destilado el proceso en 10 pasos técnicos que cualquier equipo de desarrollo puede replicar: desde la definición del propósito hasta el benchmarking en producción. Este es el marco definitivo.
Un agente de IA es un sistema de software que percibe su entorno mediante herramientas y datos, razona sobre esa información utilizando un modelo de lenguaje de gran escala (LLM), y actúa de forma autónoma para alcanzar un objetivo definido sin necesidad de intervención humana en cada paso. A diferencia de un chatbot reactivo, un agente posee cuatro capacidades fundamentales:
🧭 Nota sobre el Stack Tecnológico
Este marco es agnóstico al proveedor de LLM. Puedes implementarlo con Claude (Anthropic), GPT-4o (OpenAI), Gemini (Google) o modelos open-weight como Llama 3.3 o GLM-5.2. Lo que cambia es la API; la arquitectura permanece igual.
La pregunta más ignorada en IA: ¿Para qué existe este agente?
Antes de escribir una sola línea de código, debes responder con precisión quirúrgica: ¿qué hará el agente, a quién apoyará y qué forma tendrá su salida? Un agente sin propósito claro se convierte en un sistema costoso que no resuelve ningún problema real.
Definir el alcance también significa definir los límites. Un agente de investigación de contenido no debe también gestionar tu CRM. La especialización es una ventaja, no una limitación.


Los agentes sin esquemas son sistemas sin contrato
La entrada y salida no estructurada es el origen del 80% de los fallos en producción. La librería Pydantic AI permite definir modelos tipados que validan la entrada antes de que el LLM la procese, y validan la salida antes de que llegue al sistema receptor. Combinado con JSON Schema, obtienes salidas predecibles y parseables automáticamente.
▸ Python · Pydantic AI Definición de esquema de entrada/salida
from pydantic_ai import Agent
from pydantic import BaseModel
from typing import List
class ResearchInput(BaseModel):
query: str
max_sources: int = 5
language: str = "es"
class ResearchOutput(BaseModel):
summary: str
key_points: List[str]
sources: List[str]
confidence_score: float
agent = Agent(
model="claude-sonnet-4-5",
result_type=ResearchOutput,
system_prompt="Eres un investigador experto. Devuelve resultados estructurados."
)El System Prompt es la Constitución del Agente
El system prompt no es una descripción de trabajo; es un contrato de comportamiento. Define el rol, el tono, las restricciones, el formato de respuesta y los casos extremos. Un system prompt débil genera un agente impredecible. Un system prompt fuerte genera un sistema confiable.


ReAct: El Ciclo Razonar → Actuar → Observar
El patrón ReAct (Reasoning + Acting) es el corazón de los agentes modernos. En cada iteración, el agente: (1) Razona sobre el estado actual del problema, (2) Actúa llamando a una herramienta, y (3) Observa el resultado antes de decidir el siguiente paso.
▸ Python · LangChain Registro de herramientas con @tool
from langchain.tools import tool
from langchain_community.tools.tavily_search import TavilySearchResults
@tool
def search_web(query: str) -> str:
search = TavilySearchResults(max_results=5)
return str(search.invoke(query))
@tool
def execute_python(code: str) -> str:
import subprocess
result = subprocess.run(["python", "-c", code],
capture_output=True, text=True, timeout=30)
return result.stdout or result.stderr
tools = [search_web, execute_python]Cuando un agente no es suficiente: Orquestación Multi-Agente

▸ Python · CrewAI Equipo de agentes especializados
from crewai import Agent, Task, Crew
planner = Agent(
role="Planificador Estratégico",
goal="Descomponer el objetivo en un plan ejecutable",
backstory="Director de proyectos senior con metodología OKR",
verbose=True, allow_delegation=True
)
researcher = Agent(
role="Investigador de Mercado",
goal="Encontrar datos precisos y fuentes verificables",
backstory="Analista con acceso a datos en tiempo real",
tools=[search_web], verbose=True
)
writer = Agent(
role="Redactor Ejecutivo",
goal="Transformar datos en narrativa clara y accionable",
backstory="Escritor técnico con experiencia en reportes C-Suite",
verbose=True
)
crew = Crew(agents=[planner, researcher, writer], verbose=True)
Tres Tipos de Memoria para Tres Tipos de Contexto
▸ Python · LangChain + Chroma Pipeline RAG semántico
from langchain_community.vectorstores import Chroma
from langchain_openai import OpenAIEmbeddings
from langchain.chains import RetrievalQA
embeddings = OpenAIEmbeddings()
vectorstore = Chroma.from_documents(
documents=corporate_docs,
embedding=embeddings,
persist_directory="./chroma_db"
)
retriever = vectorstore.as_retriever(
search_type="similarity",
search_kwargs={"k": 5}
)
rag_chain = RetrievalQA.from_chain_type(
llm=llm, retriever=retriever, return_source_documents=True
)Capacidades Multimodales: El Agente que Ve y Habla
Para Voz:
Para Visión:


La Salida Debe Ser Predecible, Limpia y Accionable
mistune.WeasyPrint, pdfkit o reportlab.Convierte tu Agente en un Producto Real

▸ Python · FastAPI Endpoint REST para invocar el agente
from fastapi import FastAPI
from pydantic import BaseModel
app = FastAPI(title="Research Agent API", version="1.0")
class AgentRequest(BaseModel):
query: str
max_sources: int = 5
@app.post("/research", response_model=ResearchOutput)
async def run_research(request: AgentRequest):
result = await agent.run(request.query)
return result.data
# uvicorn main:app --host 0.0.0.0 --port 8000 --reload
Un Agente sin Benchmarks es un Sistema sin Garantías
Los agentes en producción se degradan con el tiempo: los modelos cambian, los datos cambian, los casos de uso evolucionan. Sin un sistema de evaluación estructurado, no sabes cuándo tu agente dejó de ser confiable.
Herramientas: RAGAS (para pipelines RAG), LangSmith (trazabilidad), OpenAI Evaluation API, Prometheus + Grafana.
El Pipeline del Agente: Integración de Flujo Completo
Cada paso en el diseño de un agente debe fluir armónicamente hacia el siguiente. El pipeline de datos conecta la entrada estructurada, los bucles de razonamiento y las salidas validadas de forma continua y modular.

| Paso | Función | Stack Recomendado | Nivel |
|---|---|---|---|
| 1 | Propósito y Resultado | Framework propio / Diseño | ⬛ Conceptual |
| 2 | Entrada y Salida Estructurada | Pydantic AI, JSON Schema | 🟩 Básico |
| 3 | Comportamiento del Agente | Claude, GPT-4o, Prompt Tuning | 🟩 Básico |
| 4 | Razonamiento y Herramientas | ReAct, LangChain, OpenAI Tools | 🟨 Intermedio |
| 5 | Orquestación Multi-Agente | LangGraph, CrewAI, Swarm | 🟨 Intermedio |
| 6 | Memoria y RAG | Chroma, Zep, Pinecone | 🟨 Intermedio |
| 7 | Voz y Visión | ElevenLabs, Coqui, Whisper | 🟧 Avanzado |
| 8 | Formateo de Salida | Pydantic AI, LangChain Parsers | 🟩 Básico |
| 9 | UI y Capa de API | Streamlit, Gradio, FastAPI | 🟨 Intermedio |
| 10 | Evaluación y Benchmarking | RAGAS, LangSmith, OpenAI Evals | 🟧 Avanzado |

La Arquitectura del Sistema como Solución Holística
Una solución robusta no depende únicamente del modelo de lenguaje, sino del sistema orquestado que lo rodea, garantizando escalabilidad, persistencia e independencia tecnológica.
La principal trampa al construir agentes de IA es confundirlos con prompts avanzados. Un agente bien construido es un sistema de software con arquitectura, contratos de datos, flujos de razonamiento, memoria y mecanismos de evaluación. Este marco de 10 pasos no es una receta mágica es una guía de arquitectura que te obliga a tomar decisiones de diseño en el orden correcto.
En Estudio Naranja acompañamos a organizaciones en todo el proceso: desde la definición del caso de uso (PASO 1) hasta el despliegue en producción y el monitoreo continuo (PASO 10). No vendemos chatbots diseñamos ecosistemas agénticos que automatizan procesos reales y generan ventaja competitiva medible.