En la primera parte de esta serie construimos el agente Scope, que delimita la petición del usuario, y el agente Researcher, que investiga un tema buscando en internet. En este capítulo damos el siguiente paso: el **Research supervisor**, que coordina a varios Researcher en paralelo para abordar investigaciones más complejas.
⚠️ Este capítulo continúa el código de la parte anterior. Para ejecutarlo necesitas tener ya definidos el entorno y el agente
Researcherde la Parte 1.
📚 **Esta entrada es parte de la serie _Deep Research con LangGraph_**, dividida en tres capítulos que se leen en orden:
> * Parte 1: Agentes Scope y Researcher
* 👉 **Parte 2: Research Supervisor multiagente**
* Parte 3: Agente Writer e informe final
Research supervisor
Vamos a volver a recordar cómo iba a ser la arquitectura de nuestro deep researcher.
Ya hemos definido el Scope y el Researcher, ahora vamos a definir el Research supervisor que se encarga de asignar investigaciones a diferentes Researchers
Research supervisor prompts
En este caso definimos únicamente un prompt en el que se le dice al LLM
- Es un supervisor de investigación
- Tiene acceso a tres herramientas, una para delegar la investigación, otra para indicar que la investigación está completa y otra para la reflexión y la planificación estratégica durante la investigación
- Se le indica que debe usar la herramienta de reflexión antes de usar la herramienta que concluye si la investigación está terminada o no
- Se le indica que cuando tenga que realizar varias investigaciones lo haga llamando a la herramienta de investigación en paralelo, en vez de realizar las investigaciones una detrás de otra
- Se le indica que tiene un número máximo de investigaciones que puede realizar
InputPythonlead_researcher_prompt = """Eres un supervisor de investigación. Tu trabajo es llevar a cabo investigaciones llamando a la herramienta "ConductResearch". Para contextualizar, la fecha de hoy es {date}.<Task>Tu objetivo es llamar a la herramienta "ConductResearch" para realizar una investigación sobre la pregunta de investigación general planteada por el usuario.Cuando estés completamente satisfecho con los resultados de la investigación devueltos por las llamadas a la herramienta, entonces debes llamar a la herramienta "ResearchComplete" para indicar que has terminado con tu investigación.</Task><Available Tools>Tienes acceso a tres herramientas principales:1. **ConductResearch**: Delega las tareas de investigación a subagentes especializados.2. **ResearchComplete**: Indica que la investigación está completa.3. **think_tool**: Para la reflexión y la planificación estratégica durante la investigación.**CRÍTICO: Usa think_tool antes de llamar a ConductResearch para planificar tu enfoque, y después de cada ConductResearch para evaluar el progreso**.**CRÍTICO: Siempre debes proporcionar el parámetro 'reflection' con contenido detallado cuando llames a think_tool. Nunca llames a esta herramienta sin argumentos**.**INVESTIGACIÓN PARALELA**: Cuando identifiques múltiples subtemas independientes que se puedan explorar simultáneamente, realiza múltiples llamadas a la herramienta ConductResearch en una sola respuesta para permitir la ejecución de la investigación en paralelo. Esto es más eficiente que la investigación secuencial para preguntas comparativas o multifacéticas. Utiliza como máximo {max_concurrent_research_units} agentes paralelos por iteración.</Available Tools><Instructions>Piensa como un director de investigación con tiempo y recursos limitados. Sigue estos pasos:1. **Lee la pregunta con atención**: ¿Qué información específica necesita el usuario?2. **Decide cómo delegar la investigación**: Considera cuidadosamente la pregunta y decide cómo delegar la investigación. ¿Existen múltiples direcciones independientes que se puedan explorar simultáneamente?3. **Después de cada llamada a ConductResearch, haz una pausa y evalúa**: ¿Tengo suficiente para responder? ¿Qué falta todavía?</Instructions><Hard Limits>**Presupuestos de delegación de tareas** (Evitar la delegación excesiva):- **Preferencia por un solo agente**: Utiliza un solo agente por simplicidad, a menos que la solicitud del usuario tenga una clara oportunidad de paralelización.- **Detente cuando puedas responder con confianza**: No sigas delegando la investigación en busca de la perfección.- **Limita las llamadas a las herramientas**: Detente siempre después de {max_researcher_iterations} llamadas a las herramientas think_tool y ConductResearch si no puedes encontrar las fuentes adecuadas.</Hard Limits><Show Your Thinking>Antes de llamar a la herramienta ConductResearch, utiliza think_tool para planificar tu enfoque:- ¿Se puede dividir la tarea en subtareas más pequeñas?Después de cada llamada a la herramienta ConductResearch, utiliza think_tool para analizar los resultados:- ¿Qué información clave he encontrado?- ¿Qué falta?- ¿Tengo suficiente para responder a la pregunta de forma exhaustiva?- ¿Debo delegar más investigación o llamar a ResearchComplete?</Show Your Thinking><Scaling Rules>**La búsqueda de hechos simples, listas y clasificaciones** puede utilizar un único subagente:- *Ejemplo*: Enumera las 10 mejores cafeterías de San Francisco → Utiliza 1 subagente**Las comparaciones presentadas en la solicitud del usuario** pueden utilizar un subagente para cada elemento de la comparación:- *Ejemplo*: Compara los enfoques de OpenAI, Anthropic y DeepMind sobre la seguridad de la IA → Utiliza 3 subagentes- Delega subtemas claros, distintos y no superpuestos**Recordatorios importantes:**- Cada llamada a ConductResearch genera un agente de investigación dedicado para ese tema específico.- Un agente separado escribirá el informe final; solo necesitas recopilar información.- Al llamar a ConductResearch, proporciona instrucciones completas e independientes; los subagentes no pueden ver el trabajo de otros agentes.- NO utilices acrónimos ni abreviaturas en tus preguntas de investigación, sé muy claro y específico.</Scaling Rules>"""Copied
Research supervisor state
Definimos el estado del supervisor de investigación. En este caso solo vamos a tener un estado, no vamos a tener un estado de entrada y otro de salida como en los casos anteriores, por lo que va a ser más sencillo
InputPythonfrom typing_extensions import Annotated, TypedDict, Sequencefrom langchain_core.messages import BaseMessagefrom langgraph.graph.message import add_messagesimport operatorclass SupervisorState(TypedDict):"""State for the multi-agent research supervisor.Manages coordination between supervisor and research agents, trackingresearch progress and accumulating findings from multiple sub-agents."""# Messages exchanged with supervisor for coordination and decision-makingsupervisor_messages: Annotated[Sequence[BaseMessage], add_messages]# Detailed research brief that guides the overall research directionresearch_brief: str# Processed and structured notes ready for final report generationnotes: Annotated[list[str], operator.add] = []# Counter tracking the number of research iterations performedresearch_iterations: int = 0# Raw unprocessed research notes collected from sub-agent researchraw_notes: Annotated[list[str], operator.add] = []Copied
Tools del supervisor de investigación
Como hemos dicho, las tools son las herramientas que el LLM va a decidir cuándo y cómo usar, así que vamos a definirlas
Tool de investigación
Empezamos con una tool para que el supervisor de investigación pueda delegar la investigación en un Researcher
InputPythonfrom langchain_core.tools import toolfrom pydantic import BaseModel, Field@toolclass ConductResearch(BaseModel):"""Tool for delegating a research task to a specialized sub-agent."""research_topic: str = Field(description="The topic to research. Should be a single topic, and should be described in high detail (at least a paragraph).",)Copied
Se puede ver que esta tool no hace nada, más adelante explicaremos por qué
Tool de finalización de investigación
Cuando el agente considera que ya tiene suficiente información para responder a la pregunta de investigación general, puede usar esta tool para indicar que la investigación está completa
InputPython@toolclass ResearchComplete(BaseModel):"""Tool for indicating that the research process is complete."""passCopied
Esta tool tampoco hace nada, más adelante explicaremos por qué
Modelo de lenguaje del supervisor de investigación
Aquí vamos a tener solamente un modelo de lenguaje
InputPythonfrom langchain.chat_models import init_chat_modelSUPERVISOR_MODEL_NAME = "anthropic:claude-sonnet-4-5-20250929"SUPERVISOR_MODEL_MAX_TOKENS = 4096supervisor_model = init_chat_model(model=SUPERVISOR_MODEL_NAME,max_tokens=SUPERVISOR_MODEL_MAX_TOKENS)Copied
Una vez tenemos el modelo de lenguaje, le damos acceso a las tools que acabamos de definir y a la tool think_tool que definimos en el Researcher
InputPythonsupervisor_tools = [ConductResearch, ResearchComplete, think_tool]supervisor_model_with_tools = supervisor_model.bind_tools(supervisor_tools)Copied
Podemos ver que en la lista de tools están las dos que hemos definido como tools del supervisor (ConductResearch y ResearchComplete) y la tool think_tool que definimos en el Researcher. Así que cuando invoquemos el modelo de lenguaje podrá decidir usar alguna de estas tres tools.
Configuración de la investigación
Vamos a definir el número máximo de investigaciones que puede pedir al Researcher el supervisor
InputPythonmax_researcher_iterations = 6Copied
Ahora definimos el número máximo de investigaciones que se pueden realizar en paralelo
InputPythonmax_concurrent_researchers = 3Copied
Funciones del supervisor de investigación
Hemos definido las tools, que son las funciones que el LLM va a decidir cuándo y cómo usar, pero ahora vamos a definir las funciones que nosotros vamos a definir por código cuándo y cómo se van a ejecutar
Comenzamos con la función que se encarga de coordinar las investigaciones
- Coge la variable
supervisor_messagesdel estado - Crea el system prompt del LLM hidratándolo con la fecha actual, el número máximo de investigaciones que se pueden realizar en paralelo y el número máximo de iteraciones que se pueden realizar
- Creamos el mensaje con el que invocamos al modelo de lenguaje con el system prompt y el contenido de
supervisor_messages - Llama al modelo de lenguaje con el mensaje que hemos construido
- Como en el prompt del supervisor le hemos dicho que llame a una de las tres tools, el modelo de lenguaje va a devolver una de las tres tools
- Pasa el flujo del agente al nodo
supervisor_toolsque definiremos después. En dicho nodo se comprobará qué tool ha devuelto el modelo de lenguaje y se ejecutará la lógica de dicha tool
InputPythonfrom langgraph.types import Commandfrom typing_extensions import Literalasync def supervisor(state: SupervisorState) -> Command[Literal["supervisor_tools"]]:"""Coordinate research activities.Analyzes the research brief and current progress to decide:- What research topics need investigation- Whether to conduct parallel research- When research is completeArgs:state: Current supervisor state with messages and research progressReturns:Command to proceed to supervisor_tools node with updated state"""try:supervisor_messages = state.get("supervisor_messages", [])# Prepare system message with current date and constraintssystem_message = lead_researcher_prompt.format(date=get_today_str(),max_concurrent_research_units=max_concurrent_researchers,max_researcher_iterations=max_researcher_iterations)messages = [SystemMessage(content=system_message)] + supervisor_messages# Make decision about next research stepsprint("⏳ Supervisor agent:")with alive_bar(monitor=False, stats=False, title="", spinner='dots_waves', bar='blocks') as bar:response = await supervisor_model_with_tools.ainvoke(messages)bar()# Format and display the supervisor messagesif response.tool_calls is not None:response_tool_calls_name = response.tool_calls[0].get('name')if response_tool_calls_name == "think_tool":title = "Supervisor Agent tools - Call to think tool"elif response_tool_calls_name == "ConductResearch":title = "Supervisor Agent tools - Call to Conduct Research"else:title = "Supervisor Agent tools - Tool Calls"format_messages([response], title=title)else:format_messages([response], title="Supervisor Agent")# Increment research iterations if conduct research tool call is presentresearch_iterations = state.get("research_iterations", 0)if response.tool_calls is not None:response_tool_calls_name = response.tool_calls[0].get('name')if response_tool_calls_name == "ConductResearch":research_iterations += 1return Command(goto="supervisor_tools",update={"supervisor_messages": [response],"research_iterations": state.get("research_iterations", 0) + 1})except Exception as e:# Get the traceback informationexc_type, exc_obj, exc_tb = sys.exc_info()line_number = exc_tb.tb_lineno# Print detailed error informationprint(f" ❌ Error in supervisor function:")print(f" Line number: {line_number}")print(f" Error type: {type(e).__name__}")print(f" Error message: {str(e)}")print(f" Full traceback:")traceback.print_exc()# Re-raise the exception to let the caller handle itraiseCopied
Ahora definimos una función que obtiene las notas internas del modelo de lenguaje cuando infiere qué tool usar
InputPythondef get_notes_from_tool_calls(messages: list[BaseMessage]) -> list[str]:"""Extract research notes from ToolMessage objects in supervisor message history.This function retrieves the compressed research findings that sub-agentsreturn as ToolMessage content. When the supervisor delegates research tosub-agents via ConductResearch tool calls, each sub-agent returns itscompressed findings as the content of a ToolMessage. This functionextracts all such ToolMessage content to compile the final research notes.Args:messages: List of messages from supervisor's conversation historyReturns:List of research note strings extracted from ToolMessage objects"""try:return [tool_msg.content for tool_msg in filter_messages(messages, include_types="tool")]except Exception as e:# Get the traceback informationexc_type, exc_obj, exc_tb = sys.exc_info()line_number = exc_tb.tb_lineno# Print detailed error informationprint(f" ❌ Error in get_notes_from_tool_calls function:")print(f" Line number: {line_number}")print(f" Error type: {type(e).__name__}")print(f" Error message: {str(e)}")print(f" Full traceback:")traceback.print_exc()# Re-raise the exception to let the caller handle itraiseCopied
Por último, definimos la función que se encarga de ejecutar la tool que haya decidido usar el modelo de lenguaje
- Se obtienen del estado las variables
supervisor_messages, con el historial de la conversación del agente supervisor,research_iterations, con el número de iteraciones que se han realizado ymost_recent_message, con el último mensaje de la conversación del agente supervisor - Se comprueba si se ha superado el número máximo de iteraciones
- Se comprueba si el último mensaje contiene tool calls
- Se comprueba si el último mensaje contiene la tool
ResearchComplete - En el caso de que se haya superado el número máximo de iteraciones o el último mensaje contenga la tool
ResearchCompleteo el último mensaje no contenga tool calls, se pasa al nodoENDy termina el flujo del agente supervisor - En caso contrario, se ejecuta la tool que el modelo de lenguaje haya decidido usar
- Se recopilan las tool calls de tipo
think_tooly lasConductResearchdel último mensaje del historial de la conversación del agente supervisor - Se ejecutan las tool calls de tipo
think_toolque se han recopilado. Se ejecutan invocando a la toolthink_tool - Se lanza el paralelismo para ejecutar de forma asíncrona las
ConductResearchque se han recopilado. Se ejecuta invocando al agenteResearcher - Se recopilan los resultados de las
ConductResearchque se han ejecutado - Se recopilan las notas de las
ConductResearchque se han ejecutado
InputPythonasync def supervisor_tools(state: SupervisorState) -> Command[Literal["supervisor", "__end__"]]:"""Execute supervisor decisions - either conduct research or end the process.Handles:- Executing think_tool calls for strategic reflection- Launching parallel research agents for different topics- Aggregating research results- Determining when research is completeArgs:state: Current supervisor state with messages and iteration countReturns:Command to continue supervision, end process, or handle errors"""try:supervisor_messages = state.get("supervisor_messages", [])research_iterations = state.get("research_iterations", 0)most_recent_message = supervisor_messages[-1]# Create a System message to show supervisor messages and research iterationssystem_message = SystemMessage(content=f"Research iterations: {research_iterations}")format_messages([system_message], title="Supervisor Agent tools - Research iterations")# Initialize variables for single return patterntool_messages = []all_raw_notes = []next_step = "supervisor" # Default next stepshould_end = False# Check exit criteria firstexceeded_iterations = research_iterations >= max_researcher_iterationsno_tool_calls = not most_recent_message.tool_callsresearch_complete = any(tool_call["name"] == "ResearchComplete"for tool_call in most_recent_message.tool_calls)if exceeded_iterations or no_tool_calls or research_complete:# Create a System message to show the decisionsystem_message = SystemMessage(content=f"Exceeded iterations or no tool calls or research complete. Ending supervisor... Research iterations: {research_iterations} and supervisor messages: {supervisor_messages}")termination_message_info = ""if exceeded_iterations:termination_message_info += f" Exceeded iterations"if no_tool_calls:termination_message_info += f" No tool calls"if research_complete:termination_message_info += f" Research complete"format_messages([system_message], title=termination_message_info)should_end = Truenext_step = ENDelse:# Execute ALL tool calls before deciding next steptry:# Separate think_tool calls from ConductResearch callsthink_tool_calls = [tool_call for tool_call in most_recent_message.tool_calls if tool_call["name"] == "think_tool"]conduct_research_calls = [tool_call for tool_call in most_recent_message.tool_calls if tool_call["name"] == "ConductResearch"]# Handle think_tool calls (synchronous)for tool_call in think_tool_calls:observation = think_tool.invoke(tool_call["args"])tool_message = ToolMessage(content=observation,name=tool_call["name"],tool_call_id=tool_call["id"])format_messages([tool_message], title="Supervisor Agent - think tool result")tool_messages.append(tool_message)# Handle ConductResearch calls (asynchronous)if conduct_research_calls:# Launch parallel research agentscoros = [researcher_agent.ainvoke({"researcher_messages": [HumanMessage(content=tool_call["args"]["research_topic"])],"research_topic": tool_call["args"]["research_topic"]})for tool_call in conduct_research_calls]# Wait for all research to completetool_results = await asyncio.gather(*coros)# Format research results as tool messages# Each sub-agent returns compressed research findings in result["compressed_research"]# We write this compressed research as the content of a ToolMessage, which allows# the supervisor to later retrieve these findings via get_notes_from_tool_calls()research_tool_messages = [ToolMessage(content=result.get("compressed_research", "Error synthesizing research report"),name=tool_call["name"],tool_call_id=tool_call["id"]) for result, tool_call in zip(tool_results, conduct_research_calls)]tool_messages.extend(research_tool_messages)# Aggregate raw notes from all researchall_raw_notes = [" ".join(result.get("raw_notes", [])) for result in tool_results]except Exception as e:# Get the traceback information for inner exceptionexc_type, exc_obj, exc_tb = sys.exc_info()line_number = exc_tb.tb_lineno# Print detailed error informationprint(f" ❌ Error executing tool calls in supervisor_tools function:")print(f" Line number: {line_number}")print(f" Error type: {type(e).__name__}")print(f" Error message: {str(e)}")print(f" Full traceback:")traceback.print_exc()should_end = Truenext_step = END# Single return point with appropriate state updatesif should_end:return Command(goto=next_step,update={"notes": get_notes_from_tool_calls(supervisor_messages),"research_brief": state.get("research_brief", "")})else:return Command(goto=next_step,update={"supervisor_messages": tool_messages,"raw_notes": all_raw_notes})except Exception as e:# Get the traceback information for outer exceptionexc_type, exc_obj, exc_tb = sys.exc_info()line_number = exc_tb.tb_lineno# Print detailed error informationprint(f" ❌ Error in supervisor_tools function:")print(f" Line number: {line_number}")print(f" Error type: {type(e).__name__}")print(f" Error message: {str(e)}")print(f" Full traceback:")traceback.print_exc()# Re-raise the exception to let the caller handle itraiseCopied
Ahora que hemos definido las funciones, podemos explicar por qué las tools que habíamos definido para el agente supervisor no hacen nada.
El modelo de lenguaje del agente supervisor tiene una tool para reflexionar, pero no tiene una tool para invocar al agente Researcher. Porque, como su propio nombre indica, el agente Researcher es un agente, no una tool, así que no se puede invocar como una tool.
Por eso, cuando se invoca al modelo de lenguaje en la función supervisor, se le dice que tiene que usar una de las tres tools, para tener en el último mensaje la tool que se debe ejecutar.
Con esa información, en la función supervisor_tools se obtiene el nombre de la tool, de manera que
- Si el modelo de lenguaje decide usar la tool
think_tool, se ejecuta la toolthink_tool - Si el modelo de lenguaje decide usar la tool
ConductResearch, se ejecuta el agenteResearcher - Si el modelo de lenguaje decide usar la tool
ResearchComplete, se pasa al nodoENDy termina el flujo del agente supervisor
Grafo del supervisor de investigación
Creamos el grafo del supervisor de investigación
InputPythonfrom langgraph.graph import StateGraphsupervisor_builder = StateGraph(SupervisorState)Copied
Creamos los nodos del grafo con las funciones que hemos definido
InputPythonsupervisor_builder.add_node("supervisor", supervisor)supervisor_builder.add_node("supervisor_tools", supervisor_tools)Copied
<langgraph.graph.state.StateGraph at 0x1112bf800>
Añadimos las edges del grafo
- El flujo comienza en el nodo
supervisor - En la función
supervisorse indica que el siguiente nodo a ejecutar essupervisor_tools - En la función
supervisor_toolsse indica que el siguiente nodo a ejecutar essupervisorsi no se ha superado el número máximo de iteraciones o el último mensaje no contiene la toolResearchCompleteo el último mensaje contiene tool calls, en caso contrario se ejecuta el nodoEND
InputPythonfrom langgraph.graph import START, ENDsupervisor_builder.add_edge(START, "supervisor")Copied
<langgraph.graph.state.StateGraph at 0x1112bf800>
Lo compilamos y lo mostramos
InputPythonfrom langgraph.checkpoint.memory import InMemorySaverfrom IPython.display import Image, displaycheckpointer = InMemorySaver()supervisor_agent = supervisor_builder.compile(checkpointer=checkpointer)# Visualize the workflowdisplay(Image(supervisor_agent.get_graph(xray=True).draw_mermaid_png()))Copied
<IPython.core.display.Image object>
Ejecución del grafo del supervisor de investigación
Primero vamos a llamar al agente Scope para que nos ayude a definir el research_brief
Creamos un hilo para poder hacer varias llamadas al agente, por si nos pide más información
InputPythonthread = {"configurable": {"thread_id": "3"}}user_message = "Quiero investigar las mejores cafeterías de Madrid."result = await scope_agent.ainvoke({"messages": [HumanMessage(content=f"{user_message}.")]}, config=thread)Copied
⏳ Scope agent:
╭───────────────────────────────────────────── 🧑 Real Human Message ─────────────────────────────────────────────╮│ Quiero investigar las mejores cafeterías de Madrid.. │╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
|▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉| in 2.4s
╭─────────────────────────────────── 🤖 Scope Assistant - need clarification? ────────────────────────────────────╮│ need_clarification=True question='¿Podrías especificar qué criterios te interesan para considerar una cafetería ││ como "mejor"? Por ejemplo: calidad del café, ambiente, ubicación, opciones de comida, precio, etc. ¿Buscas ││ cafeterías para trabajar, para socializar, o simplemente para disfrutar buen café?' verification='' │╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭──────────────────────────────────────────── 🔧 Scope System Message ────────────────────────────────────────────╮│ Necesita aclaración por parte del usuario. Enviando pregunta aclaratoria... │╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
El agente nos pide más información, por lo que volvemos a invocar al agente con la información que nos pide
InputPythonuser_message = "Examina la calidad del café para evaluar las mejores cafeterías de Madrid."result = await scope_agent.ainvoke({"messages": [HumanMessage(content=f"{user_message}.")]}, config=thread)Copied
⏳ Scope agent:
╭───────────────────────────────────────────── 🧑 Real Human Message ─────────────────────────────────────────────╮│ Examina la calidad del café para evaluar las mejores cafeterías de Madrid.. │╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
|▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉| in 1.5s
╭─────────────────────────────────── 🤖 Scope Assistant - need clarification? ────────────────────────────────────╮│ need_clarification=False question='' verification='Gracias por la información. Entiendo que deseas un informe ││ sobre las mejores cafeterías de Madrid, evaluadas principalmente por la calidad del café. Ahora comenzaré la ││ investigación centrándome en este criterio.' │╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭──────────────────────────────────────────── 🔧 Scope System Message ────────────────────────────────────────────╮│ No necesita aclaración por parte del usuario. Enviando mensaje de verificación... │╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
⏳ Scope agent - Write research brief:
╭─────────────────────────────────── 🤖 Scope Assistant - Write research brief ───────────────────────────────────╮│ Gracias por la información. Entiendo que deseas un informe sobre las mejores cafeterías de Madrid, evaluadas ││ principalmente por la calidad del café. Ahora comenzaré la investigación centrándome en este criterio. │╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
|▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉| in 4.2s
╭───────────────────────────────── 🤖 Scope Assistant - Research brief generated ─────────────────────────────────╮│ research_brief='Quiero investigar cuáles son las mejores cafeterías de Madrid evaluadas principalmente por la ││ calidad del café que ofrecen. Para ello, me interesa identificar cafeterías en Madrid que destaquen por la ││ excelencia de su café, considerando factores como el origen y la frescura de los granos, los métodos de ││ tostado, las técnicas de preparación y la experiencia sensorial (sabor, aroma, textura). No he especificado ││ preferencias sobre ambiente, precio, ubicación, opciones de comida u otros servicios, por lo que estos aspectos ││ pueden considerarse abiertos y secundarios en la investigación. Solicito priorizar fuentes oficiales de las ││ propias cafeterías, reseñas de expertos en café y plataformas reconocidas de opinión de usuarios en español ││ para fundamentar la selección.' │╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
Ya tenemos el research_brief, por lo que podemos invocar al agente Research supervisor para que comience la investigación.
IMPORTANTE: En este caso lo que hacemos es invocar al agente
Research supervisorcon elresearch_briefque ya tenemos, para ello se lo pasamos como la variable del estadosupervisor_messagesy como la variable del estadoresearch_brief
Creamos también un cliente de la API de Tavily para poder hacer búsquedas en internet.
InputPythonfrom tavily import TavilyClientimport asyncioresearch_brief = result["research_brief"]tavily_client = TavilyClient(api_key=os.getenv("TAVILY_API_KEY"))result = await supervisor_agent.ainvoke({"supervisor_messages": [HumanMessage(content=f"{research_brief}.")], "research_brief": research_brief}, config=thread)Copied
⏳ Supervisor agent:|▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉| in 8.4s
╭──────────────────────────────── 🤖 Supervisor Agent tools - Call to think tool ─────────────────────────────────╮│ ││ 🔧 Tool Call: think_tool ││ Args: { ││ "reflection": " Analizando la solicitud del usuario: **Pregunta central**: Identificar las mejores ││ cafeterías de Madrid evaluadas por la calidad del café. **Criterios específicos prioritarios**: - Calidad ││ del café (origen y frescura de granos) - Métodos de tostado - Técnicas de preparación - Experiencia ││ sensorial (sabor, aroma, textura) **Fuentes preferidas**: - Fuentes oficiales de las cafeterías - Reseñas ││ de expertos en café - Plataformas de opinión de usuarios en español **Enfoque de investigación**: Esta es ││ una pregunta de búsqueda de hechos y listado que no requiere comparación entre elementos independientes. La ││ investigación debe centrarse en: 1. Identificar cafeterías especializadas en café de calidad en Madrid 2. ││ Evaluar la calidad según los criterios mencionados 3. Usar fuentes en español y reconocidas **Decisión**: ││ Utilizar UN SOLO subagente especializado que pueda realizar una investigación exhaustiva sobre las mejores ││ cafeterías de Madrid con enfoque en calidad del café. No hay necesidad de paralelización ya que se trata de una ││ búsqueda unificada en un solo mercado geográfico. Procederé con una única llamada a ConductResearch con ││ instrucciones detalladas y específicas. " ││ } ││ ID: toolu_013wtQKkjpYhEH6Bv6PqxgSE │╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭──────────────────────────────── 🔧 Supervisor Agent tools - Research iterations ────────────────────────────────╮│ Research iterations: 1 │╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭──────────────────────────────────── 🔧 Supervisor Agent - think tool result ────────────────────────────────────╮│ Reflection recorded: ││ Analizando la solicitud del usuario: ││ ││ **Pregunta central**: Identificar las mejores cafeterías de Madrid evaluadas por la calidad del café. ││ ││ **Criterios específicos prioritarios**: ││ - Calidad del café (origen y frescura de granos) ││ - Métodos de tostado ││ - Técnicas de preparación ││ - Experiencia sensorial (sabor, aroma, textura) ││ ││ **Fuentes preferidas**: ││ - Fuentes oficiales de las cafeterías ││ - Reseñas de expertos en café ││ - Plataformas de opinión de usuarios en español ││ ││ **Enfoque de investigación**: ││ Esta es una pregunta de búsqueda de hechos y listado que no requiere comparación entre elementos ││ independientes. La investigación debe centrarse en: ││ 1. Identificar cafeterías especializadas en café de calidad en Madrid ││ 2. Evaluar la calidad según los criterios mencionados ││ 3. Usar fuentes en español y reconocidas ││ ││ **Decisión**: Utilizar UN SOLO subagente especializado que pueda realizar una investigación exhaustiva sobre ││ las mejores cafeterías de Madrid con enfoque en calidad del café. No hay necesidad de paralelización ya que se ││ trata de una búsqueda unificada en un solo mercado geográfico. ││ ││ Procederé con una única llamada a ConductResearch con instrucciones detalladas y específicas. ││ │╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
⏳ Supervisor agent:|▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉| in 12.3s
╭───────────────────────────── 🤖 Supervisor Agent tools - Call to Conduct Research ──────────────────────────────╮│ ││ 🔧 Tool Call: ConductResearch ││ Args: { ││ "research_topic": "Investigar y identificar las mejores cafeterías de Madrid, España, evaluadas ││ principalmente por la calidad excepcional del café que ofrecen. La investigación debe centrarse ││ en: CRITERIOS PRIORITARIOS DE EVALUACIÓN: 1. Calidad del café: origen de los granos, frescura, variedad de ││ procedencias (café de especialidad, single origin, etc.) 2. Métodos de tostado: tueste artesanal, tostadores ││ propios, técnicas específicas 3. Técnicas de preparación: métodos utilizados (espresso, V60, Chemex, ││ AeroPress, cold brew, etc.), equipamiento profesional, baristas especializados 4. Experiencia sensorial: ││ perfil de sabor, aroma, textura, balance y complejidad del café FUENTES A PRIORIZAR: - Sitios web oficiales ││ de las cafeterías donde se describa su filosofía, proveedores de café, métodos de preparación - Artículos y ││ reseñas de expertos en café, críticos gastronómicos, blogs especializados en café de especialidad en español - ││ Plataformas de opinión de usuarios en español (Google Reviews, TripAdvisor, The Fork, etc.) que mencionen ││ específicamente la calidad del café - Guías gastronómicas y publicaciones especializadas en café en ││ Madrid INFORMACIÓN A RECOPILAR POR CADA CAFETERÍA: - Nombre y ubicación - Características distintivas de ││ su café (origen de granos, tostadores con los que trabajan) - Métodos de preparación disponibles - ││ Reconocimientos o menciones por expertos - Opiniones destacadas sobre la calidad del café - Cualquier ││ información relevante sobre su enfoque en el café de calidad La investigación debe proporcionar una ││ selección fundamentada de las cafeterías más destacadas por la excelencia de su café, con evidencia de fuentes ││ confiables en español." ││ } ││ ID: toolu_015cu6F5daj1282aodGJzUvU │╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭──────────────────────────────── 🔧 Supervisor Agent tools - Research iterations ────────────────────────────────╮│ Research iterations: 2 │╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
⏳ Researcher agent:
╭───────────────────────────────── 🧑 Researcher Agent - Simulated Human Message ─────────────────────────────────╮│ Investigar y identificar las mejores cafeterías de Madrid, España, evaluadas principalmente por la calidad ││ excepcional del café que ofrecen. La investigación debe centrarse en: ││ ││ CRITERIOS PRIORITARIOS DE EVALUACIÓN: ││ 1. Calidad del café: origen de los granos, frescura, variedad de procedencias (café de especialidad, single ││ origin, etc.) ││ 2. Métodos de tostado: tueste artesanal, tostadores propios, técnicas específicas ││ 3. Técnicas de preparación: métodos utilizados (espresso, V60, Chemex, AeroPress, cold brew, etc.), ││ equipamiento profesional, baristas especializados ││ 4. Experiencia sensorial: perfil de sabor, aroma, textura, balance y complejidad del café ││ ││ FUENTES A PRIORIZAR: ││ - Sitios web oficiales de las cafeterías donde se describa su filosofía, proveedores de café, métodos de ││ preparación ││ - Artículos y reseñas de expertos en café, críticos gastronómicos, blogs especializados en café de especialidad ││ en español ││ - Plataformas de opinión de usuarios en español (Google Reviews, TripAdvisor, The Fork, etc.) que mencionen ││ específicamente la calidad del café ││ - Guías gastronómicas y publicaciones especializadas en café en Madrid ││ ││ INFORMACIÓN A RECOPILAR POR CADA CAFETERÍA: ││ - Nombre y ubicación ││ - Características distintivas de su café (origen de granos, tostadores con los que trabajan) ││ - Métodos de preparación disponibles ││ - Reconocimientos o menciones por expertos ││ - Opiniones destacadas sobre la calidad del café ││ - Cualquier información relevante sobre su enfoque en el café de calidad ││ ││ La investigación debe proporcionar una selección fundamentada de las cafeterías más destacadas por la ││ excelencia de su café, con evidencia de fuentes confiables en español. │╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
|▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉| in 3.7s
╭───────────────────────────────────────── 🤖 Researcher Agent response ──────────────────────────────────────────╮│ Voy a investigar las mejores cafeterías de Madrid enfocándome en la calidad excepcional del café. Empezaré con ││ una búsqueda amplia sobre cafeterías de especialidad en Madrid. ││ ││ 🔧 Tool Call: tavily_search ││ Args: { ││ "query": "mejores cafeterías café de especialidad Madrid 2024 calidad granos" ││ } ││ ID: toolu_01PQr3EGV4RziYV33KrizSbz │╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭───────────────────────────────────── 🔧 Researcher Agent - Should continue ─────────────────────────────────────╮│ Last message contains tool calls. Continuing to tool execution... │╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭─────────────────────────────────────── 🔧 Researcher Agent - Tool calls ────────────────────────────────────────╮│ Tool Call Name: Tool Calls ││ ID: tool_call_id ││ ││ Tool Call 1: ││ Name: tavily_search ││ ID: toolu_01PQr3EGV4RziYV33KrizSbz ││ Type: tool_call ││ Args: ││ { ││ "query": "mejores cafeterías café de especialidad Madrid 2024 calidad granos" ││ } │╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
|▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉| in 24.1s
╭──────────────────────────────────── 🔧 Researcher Agent - Tool calls result ────────────────────────────────────╮│ Search results: ││ ││ ││ ││ --- SOURCE 1: Las 25 mejores cafeterías de especialidad de Madrid --- ││ URL: https://madridsecreto.co/mejor-cafe-de-madrid/ ││ ││ SUMMARY: ││ <summary> ││ El artículo presenta una guía detallada de las 27 mejores cafeterías de especialidad en Madrid, destacando la ││ evolución del café en la ciudad desde el predominio del café torrefacto hasta la actual fiebre por el café de ││ especialidad o "speciality coffee". Cada cafetería se describe con su nombre, ubicación, características ││ distintivas y especialidades, como tostadores propios, cafés de origen único, opciones veganas, pastelería de ││ alta calidad y ambientes singulares. Entre las mencionadas se encuentran Bianchi Kiosko Caffé en Malasaña, ││ Obrar en Chamberí, Ruda Café en La Latina, The Fix en Argüelles, Toma Café con varios locales, Pum Pum Café en ││ Lavapiés, Hola Coffee con formación de baristas, y muchas otras que ofrecen experiencias únicas para amantes ││ del café. El artículo también resalta la importancia de la calidad del grano, la trazabilidad, y la innovación ││ en preparaciones y maridajes, así como la presencia de tiendas online y espacios para teletrabajo. Además, se ││ mencionan iniciativas de comercio justo y sostenibilidad en la selección de proveedores. Esta lista es una │...│ <key_excerpts> ││ El café de especialidad no es una moda pasajera, es café bien hecho y con futuro., Y sí, la diferencia se nota… ││ y mucho., Marcas que dicen vender café de especialidad sin serlo realmente., Su carta cambia constantemente, ││ pero mantiene una línea clara: cafés de microlote, trazables y con perfiles muy cuidados., El café de ││ especialidad ha llegado para quedarse. ││ </key_excerpts> ││ ││ -------------------------------------------------------------------------------- ││ │╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
⏳ Researcher agent:|▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉| in 10.3s
╭───────────────────────────────────────── 🤖 Researcher Agent response ──────────────────────────────────────────╮│ ││ 🔧 Tool Call: think_tool ││ Args: { ││ "reflection": " ANÁLISIS DE RESULTADOS DE LA PRIMERA BÚSQUEDA: **Información clave encontrada:** - ││ He identificado varias cafeterías destacadas en Madrid: Bianchi Kiosco Caffé, Obrar, Ruda Café, The Fix, Toma ││ Café, Pum Pum Café, Hola Coffee - Información sobre tostadores propios: The Fix tiene tostado propio - ││ Reconocimientos: Hola Coffee - su dueño fue Spanish Barista Champion 2016 - El café de especialidad debe ││ obtener más de 80 puntos para ser considerado de alta calidad - Marcas mencionadas: Nubra Coffee Roasters, ││ Syra Coffee, Nomad Coffee **Brechas identificadas:** 1. Necesito información más específica sobre métodos ││ de preparación de cada cafetería 2. Faltan detalles sobre origen de granos y proveedores específicos 3. ││ Necesito opiniones de usuarios y reseñas específicas sobre la calidad del café 4. Falta información sobre ││ perfiles de sabor y características sensoriales 5. Necesito más detalles sobre técnicas de tostado y ││ equipamiento **Evaluación de calidad:** La información es buena como punto de partida, pero necesito ││ profundizar en criterios técnicos específicos. **Próximos pasos:** Realizar búsqueda específica sobre ││ cafeterías individuales mencionadas (Hola Coffee, The Fix, Toma Café) para obtener detalles sobre métodos de ││ preparación, origen de granos y reconocimientos. " ││ } ││ ID: toolu_01NXqSsNm5gxe4SGQct8WNzL │╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭───────────────────────────────────── 🔧 Researcher Agent - Should continue ─────────────────────────────────────╮│ Last message contains tool calls. Continuing to tool execution... │╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭─────────────────────────────────────── 🔧 Researcher Agent - Tool calls ────────────────────────────────────────╮│ Tool Call Name: Tool Calls ││ ID: tool_call_id ││ ││ Tool Call 1: ││ Name: think_tool ││ ID: toolu_01NXqSsNm5gxe4SGQct8WNzL ││ Type: tool_call ││ Args: ││ { ││ "reflection": " ANÁLISIS DE RESULTADOS DE LA PRIMERA BÚSQUEDA: **Información clave encontrada:** - ││ He identificado varias cafeterías destacadas en Madrid: Bianchi Kiosco Caffé, Obrar, Ruda Café, The Fix, Toma ││ Café, Pum Pum Café, Hola Coffee - Información sobre tostadores propios: The Fix tiene tostado propio - ││ Reconocimientos: Hola Coffee - su dueño fue Spanish Barista Champion 2016 - El café de especialidad debe ││ obtener más de 80 puntos para ser considerado de alta calidad - Marcas mencionadas: Nubra Coffee Roasters, ││ Syra Coffee, Nomad Coffee **Brechas identificadas:** 1. Necesito información más específica sobre métodos ││ de preparación de cada cafetería 2. Faltan detalles sobre origen de granos y proveedores específicos 3. ││ Necesito opiniones de usuarios y reseñas específicas sobre la calidad del café 4. Falta información sobre ││ perfiles de sabor y características sensoriales 5. Necesito más detalles sobre técnicas de tostado y ││ equipamiento **Evaluación de calidad:** La información es buena como punto de partida, pero necesito ││ profundizar en criterios técnicos específicos. **Próximos pasos:** Realizar búsqueda específica sobre ││ cafeterías individuales mencionadas (Hola Coffee, The Fix, Toma Café) para obtener detalles sobre métodos de ││ preparación, origen de granos y reconocimientos. " ││ } │╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
|▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉| in 0.0s
╭──────────────────────────────────── 🔧 Researcher Agent - Tool calls result ────────────────────────────────────╮│ Reflection recorded: ││ ANÁLISIS DE RESULTADOS DE LA PRIMERA BÚSQUEDA: ││ ││ **Información clave encontrada:** ││ - He identificado varias cafeterías destacadas en Madrid: Bianchi Kiosco Caffé, Obrar, Ruda Café, The Fix, Toma ││ Café, Pum Pum Café, Hola Coffee ││ - Información sobre tostadores propios: The Fix tiene tostado propio ││ - Reconocimientos: Hola Coffee - su dueño fue Spanish Barista Champion 2016 ││ - El café de especialidad debe obtener más de 80 puntos para ser considerado de alta calidad ││ - Marcas mencionadas: Nubra Coffee Roasters, Syra Coffee, Nomad Coffee ││ ││ **Brechas identificadas:** ││ 1. Necesito información más específica sobre métodos de preparación de cada cafetería ││ 2. Faltan detalles sobre origen de granos y proveedores específicos ││ 3. Necesito opiniones de usuarios y reseñas específicas sobre la calidad del café ││ 4. Falta información sobre perfiles de sabor y características sensoriales ││ 5. Necesito más detalles sobre técnicas de tostado y equipamiento ││ ││ **Evaluación de calidad:** ││ La información es buena como punto de partida, pero necesito profundizar en criterios técnicos específicos. ││ ││ **Próximos pasos:** ││ Realizar búsqueda específica sobre cafeterías individuales mencionadas (Hola Coffee, The Fix, Toma Café) para ││ obtener detalles sobre métodos de preparación, origen de granos y reconocimientos. ││ │╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
⏳ Researcher agent:|▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉| in 3.8s
╭───────────────────────────────────────── 🤖 Researcher Agent response ──────────────────────────────────────────╮│ ││ 🔧 Tool Call: tavily_search ││ Args: { ││ "query": "Hola Coffee Madrid barista champion métodos preparación origen granos tueste" ││ } ││ ID: toolu_01VnhQzDNNTLcY3TWh3ZZJss ││ ││ 🔧 Tool Call: tavily_search ││ Args: { ││ "query": "Toma Café Madrid specialty coffee métodos V60 Chemex origen granos" ││ } ││ ID: toolu_019Rag5iyjn7JQcts8YBNX4p │╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭───────────────────────────────────── 🔧 Researcher Agent - Should continue ─────────────────────────────────────╮│ Last message contains tool calls. Continuing to tool execution... │╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭─────────────────────────────────────── 🔧 Researcher Agent - Tool calls ────────────────────────────────────────╮│ Tool Call Name: Tool Calls ││ ID: tool_call_id ││ ││ Tool Call 1: ││ Name: tavily_search ││ ID: toolu_01VnhQzDNNTLcY3TWh3ZZJss ││ Type: tool_call ││ Args: ││ { ││ "query": "Hola Coffee Madrid barista champion métodos preparación origen granos tueste" ││ } ││ ││ Tool Call 2: ││ Name: tavily_search ││ ID: toolu_019Rag5iyjn7JQcts8YBNX4p ││ Type: tool_call ││ Args: ││ { ││ "query": "Toma Café Madrid specialty coffee métodos V60 Chemex origen granos" ││ } │╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
|▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉| in 20.7s
╭──────────────────────────────────── 🔧 Researcher Agent - Tool calls result ────────────────────────────────────╮│ Search results: ││ ││ ││ ││ --- SOURCE 1: Hola Coffee | Café De Especialidad --- ││ URL: https://www.cafesdespecialidad.com/hola-coffee/ ││ ││ SUMMARY: ││ <summary> ││ Hola Coffee es una cafetería de especialidad y tostador ubicada en el barrio de Lavapiés, Madrid, en la Calle ││ del Doctor Fourquet, 33. Se destaca por ofrecer café de alta calidad en un ambiente moderno y acogedor, con un ││ compromiso profundo hacia el respeto y cuidado de cada grano. Su propio tostador, Hola Coffee Roastery, ││ selecciona granos de micro-lotes y pequeños productores globales, ajustando el tueste para resaltar las notas ││ específicas de cada origen, lo que garantiza una experiencia auténtica y diferenciada en cada taza. El ││ establecimiento ofrece diversos métodos de preparación como espresso, V60, Aeropress y Chemex, y cuenta con un ││ menú que complementa la experiencia cafetera, incluyendo opciones de brunch, tostadas con aguacate, bowls ││ saludables y postres artesanales. El rango de precios del café oscila entre 3,00 € y 5,00 €, y el horario de ││ atención es de lunes a viernes de 8:00 a 18:00 y fines de semana de 9:00 a 19:00. Además, Hola Coffee ofrece ││ productos para llevar y vende sus granos tanto en el local como en su sitio web, con visitas guiadas │...│ URL: https://comacoffeeroasters.com/metodos-de-tueste-del-cafe-de-especialidad ││ ││ SUMMARY: ││ Eltuestedel café es una etapa esencial que transforma losgranosverdes en esa bebida aromática y llena de ││ matices que disfrutamos. En el ámbito del café de especialidad, eltuesteadquiere una relevancia aún mayor, ya ││ que busca resaltar las características únicas de cada lote. ││ ││ -------------------------------------------------------------------------------- ││ │╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
|▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉| in 22.7s
╭──────────────────────────────────── 🔧 Researcher Agent - Tool calls result ────────────────────────────────────╮│ Search results: ││ ││ ││ ││ --- SOURCE 1: My specialty coffee ▷ 10 Mejores Cafeterías de Especialidad 《 Madrid 》 --- ││ URL: https://myspecialtycoffee.es/madrid/ ││ ││ SUMMARY: ││ <summary> ││ La página web presenta una guía detallada de las mejores cafeterías de especialidad en Madrid, destacando 10 ││ locales principales como HanSo Café, Toma Café, Misión Café, Hola Coffee, Ruda Café, Acid Café, Geisha Coffee, ││ Santa Kafeina, The Fix y Cafelito. Cada cafetería se describe con su ubicación, horario, rango de precios, ││ especialidades en métodos de preparación (como V60, Chemex, espresso, Aeropress), tipos de granos (locales, ││ internacionales, de tueste ligero), y opciones gastronómicas complementarias (repostería artesanal, brunch, ││ opciones veganas). Además, se ofrece un listado extenso de otras cafeterías de especialidad en Madrid con ││ enlaces para más información. La página explica que el café de especialidad se caracteriza por su pureza, ││ trazabilidad, y perfiles de sabor complejos, resultado de cultivos sostenibles y técnicas precisas de ││ preparación. Madrid es presentada como una ciudad vibrante que ha adoptado esta cultura cafetera, con barrios ││ como Malasaña y Chamberí como epicentros. Las cafeterías no solo ofrecen café de alta calidad, sino también │...│ URL: https://cortadoconhielo.com/cafeteras/metodos-preparacion-cafe/ ││ ││ SUMMARY: ││ July 5, 2025 - Ambos métodos son tolerantes a errores y no requieren técnica específica de vertido como otros ││ métodos manuales. ... Los métodos por goteo manual como V60 o Chemex permiten destacar matices complejos del ││ grano . ││ ││ -------------------------------------------------------------------------------- ││ │╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
⏳ Researcher agent:|▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉| in 11.1s
╭───────────────────────────────────────── 🤖 Researcher Agent response ──────────────────────────────────────────╮│ ││ 🔧 Tool Call: think_tool ││ Args: { ││ "reflection": " ANÁLISIS DE RESULTADOS DE LA SEGUNDA Y TERCERA BÚSQUEDA: **Nueva información clave ││ encontrada:** HOLA COFFEE: - Ubicación: Calle del Doctor Fourquet, 33, Lavapiés, Madrid - Tostador propio: ││ Hola Coffee Roastery - Granos: microlotes y pequeños productores de todo el mundo - Métodos: espresso, V60, ││ Aeropress, Chemex - Tueste: ajustado para resaltar notas específicas de cada origen - Dos ubicaciones: ││ Tostadora en Sepúlveda 109 y Academia en Duque de Osuna 8 - Ofrecen cursos y talleres de baristas en su ││ Academia - Orígenes: Colombia, Guatemala, Costa Rica, Kenia - Precios: 3,00 € - 5,00 € TOMA CAFÉ: - ││ Trabajan con granos de tueste propio - Control de cada etapa del proceso - Mencionado como pionero y ││ referente en Madrid OTRAS CAFETERÍAS IDENTIFICADAS: - HanSo Café (Malasaña) - granos de tostadores locales ││ e internacionales - Misión Café - Acid Café - Geisha Coffee - Santa Kafeina - The Fix (mencionado ││ anteriormente con tostado propio) - Cafelito - Nomad Coffee (Barcelona y Madrid) - Satan's Coffee Corner ││ (Barcelona) **Brechas que persisten:** 1. Necesito más información específica sobre The Fix, Nomad Coffee y ││ otras cafeterías top 2. Faltan opiniones de usuarios y reseñas específicas 3. Necesito más detalles sobre ││ reconocimientos y premios 4. Falta información sobre perfiles sensoriales ││ específicos **Evaluación:** Tengo buena información sobre Hola Coffee, pero necesito profundizar en otras ││ cafeterías top mencionadas como The Fix, Nomad Coffee, HanSo Café, y buscar opiniones de ││ usuarios. **Próximos pasos:** Buscar información específica sobre The Fix, Nomad Coffee Madrid, y reseñas ││ de usuarios sobre calidad del café en estas cafeterías. " ││ } ││ ID: toolu_01EsFdpFFuPSnqv6BmdK8GTM │╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭───────────────────────────────────── 🔧 Researcher Agent - Should continue ─────────────────────────────────────╮│ Last message contains tool calls. Continuing to tool execution... │╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭─────────────────────────────────────── 🔧 Researcher Agent - Tool calls ────────────────────────────────────────╮│ Tool Call Name: Tool Calls ││ ID: tool_call_id ││ ││ Tool Call 1: ││ Name: think_tool ││ ID: toolu_01EsFdpFFuPSnqv6BmdK8GTM ││ Type: tool_call ││ Args: ││ { ││ "reflection": " ANÁLISIS DE RESULTADOS DE LA SEGUNDA Y TERCERA BÚSQUEDA: **Nueva información clave ││ encontrada:** HOLA COFFEE: - Ubicación: Calle del Doctor Fourquet, 33, Lavapiés, Madrid - Tostador propio: ││ Hola Coffee Roastery - Granos: microlotes y pequeños productores de todo el mundo - Métodos: espresso, V60, ││ Aeropress, Chemex - Tueste: ajustado para resaltar notas específicas de cada origen - Dos ubicaciones: ││ Tostadora en Sepúlveda 109 y Academia en Duque de Osuna 8 - Ofrecen cursos y talleres de baristas en su ││ Academia - Orígenes: Colombia, Guatemala, Costa Rica, Kenia - Precios: 3,00 € - 5,00 € TOMA CAFÉ: - ││ Trabajan con granos de tueste propio - Control de cada etapa del proceso - Mencionado como pionero y ││ referente en Madrid OTRAS CAFETERÍAS IDENTIFICADAS: - HanSo Café (Malasaña) - granos de tostadores locales ││ e internacionales - Misión Café - Acid Café - Geisha Coffee - Santa Kafeina - The Fix (mencionado ││ anteriormente con tostado propio) - Cafelito - Nomad Coffee (Barcelona y Madrid) - Satan's Coffee Corner ││ (Barcelona) **Brechas que persisten:** 1. Necesito más información específica sobre The Fix, Nomad Coffee y ││ otras cafeterías top 2. Faltan opiniones de usuarios y reseñas específicas 3. Necesito más detalles sobre ││ reconocimientos y premios 4. Falta información sobre perfiles sensoriales ││ específicos **Evaluación:** Tengo buena información sobre Hola Coffee, pero necesito profundizar en otras ││ cafeterías top mencionadas como The Fix, Nomad Coffee, HanSo Café, y buscar opiniones de ││ usuarios. **Próximos pasos:** Buscar información específica sobre The Fix, Nomad Coffee Madrid, y reseñas ││ de usuarios sobre calidad del café en estas cafeterías. " ││ } │╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
|▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉| in 0.0s
╭──────────────────────────────────── 🔧 Researcher Agent - Tool calls result ────────────────────────────────────╮│ Reflection recorded: ││ ANÁLISIS DE RESULTADOS DE LA SEGUNDA Y TERCERA BÚSQUEDA: ││ ││ **Nueva información clave encontrada:** ││ ││ HOLA COFFEE: ││ - Ubicación: Calle del Doctor Fourquet, 33, Lavapiés, Madrid ││ - Tostador propio: Hola Coffee Roastery ││ - Granos: microlotes y pequeños productores de todo el mundo ││ - Métodos: espresso, V60, Aeropress, Chemex ││ - Tueste: ajustado para resaltar notas específicas de cada origen ││ - Dos ubicaciones: Tostadora en Sepúlveda 109 y Academia en Duque de Osuna 8 ││ - Ofrecen cursos y talleres de baristas en su Academia ││ - Orígenes: Colombia, Guatemala, Costa Rica, Kenia ││ - Precios: 3,00 € - 5,00 € ││ ││ TOMA CAFÉ: ││ - Trabajan con granos de tueste propio ││ - Control de cada etapa del proceso │...│ ││ **Evaluación:** ││ Tengo buena información sobre Hola Coffee, pero necesito profundizar en otras cafeterías top mencionadas como ││ The Fix, Nomad Coffee, HanSo Café, y buscar opiniones de usuarios. ││ ││ **Próximos pasos:** ││ Buscar información específica sobre The Fix, Nomad Coffee Madrid, y reseñas de usuarios sobre calidad del café ││ en estas cafeterías. ││ │╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
⏳ Researcher agent:|▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉| in 3.9s
╭───────────────────────────────────────── 🤖 Researcher Agent response ──────────────────────────────────────────╮│ ││ 🔧 Tool Call: tavily_search ││ Args: { ││ "query": "The Fix Coffee Madrid tostadores propios Argüelles métodos preparación calidad" ││ } ││ ID: toolu_018NUFQQiPZYkyp3ndRjepQ2 ││ ││ 🔧 Tool Call: tavily_search ││ Args: { ││ "query": "Nomad Coffee Madrid café especialidad opiniones reseñas calidad granos" ││ } ││ ID: toolu_01RV9mXMF7YPMunwXFkLYYyL │╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭───────────────────────────────────── 🔧 Researcher Agent - Should continue ─────────────────────────────────────╮│ Last message contains tool calls. Continuing to tool execution... │╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭─────────────────────────────────────── 🔧 Researcher Agent - Tool calls ────────────────────────────────────────╮│ Tool Call Name: Tool Calls ││ ID: tool_call_id ││ ││ Tool Call 1: ││ Name: tavily_search ││ ID: toolu_018NUFQQiPZYkyp3ndRjepQ2 ││ Type: tool_call ││ Args: ││ { ││ "query": "The Fix Coffee Madrid tostadores propios Argüelles métodos preparación calidad" ││ } ││ ││ Tool Call 2: ││ Name: tavily_search ││ ID: toolu_01RV9mXMF7YPMunwXFkLYYyL ││ Type: tool_call ││ Args: ││ { ││ "query": "Nomad Coffee Madrid café especialidad opiniones reseñas calidad granos" ││ } │╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
|▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉| in 4.7s
╭──────────────────────────────────── 🔧 Researcher Agent - Tool calls result ────────────────────────────────────╮│ Search results: ││ ││ ││ ││ --- SOURCE 1: THE FIX COFFEE COMPANY S.L., Madrid - Opiniones y Fotos --- ││ URL: https://www.tripadvisor.es/Restaurant_Review-g187514-d14168047-Reviews-The_Fix-Madrid.html ││ ││ SUMMARY: ││ El cafe es de calidad, con Una Buena preparación, era exquisito. Ademas probe la tostada de feta con aguacate y ││ un toque de chili la cual estaba deliciosa ││ ││ -------------------------------------------------------------------------------- ││ ││ ││ --- SOURCE 2: The Fix --- ││ URL: https://www.thefixmadrid.com/ ││ ││ SUMMARY: ││ <summary> │...│ --- SOURCE 3: The Fix Coffee Roasters (@thefixcoffeeroasters) · Madrid - Instagram --- ││ URL: https://www.instagram.com/thefixcoffeeroasters/?hl=en ││ ││ SUMMARY: ││ Un lugar para aprender, compartir y dejarse llevar por el ritual del café. En @thefixcoffeeroasters, el café se ││ respira, se siente y se comparte. Maquina: ││ ││ -------------------------------------------------------------------------------- ││ │╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
|▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉| in 16.7s
╭──────────────────────────────────── 🔧 Researcher Agent - Tool calls result ────────────────────────────────────╮│ Search results: ││ ││ ││ ││ --- SOURCE 1: My specialty coffee Nomade Cafe de especialidad: opiniones y carta --- ││ URL: https://myspecialtycoffee.es/madrid/nomade-cafe/ ││ ││ SUMMARY: ││ <summary> ││ Nomade Café es un specialty coffee ubicado en Lavapiés, Madrid, en la Calle de los Tres Peces, 22. Este café se ││ destaca por su compromiso con la calidad y la salud, ofreciendo un menú de platos caseros, equilibrados y ││ elaborados con ingredientes frescos y de temporada, incluyendo opciones vegetarianas y veganas. El local es ││ acogedor, pet-friendly y adecuado para desayunos, almuerzos, meriendas y brunchs de fin de semana. Su horario ││ es de lunes a viernes de 9:00 a 18:00 y fines de semana de 9:30 a 18:00. Los clientes valoran positivamente la ││ calidad de la comida, el ambiente y el servicio, reflejado en una puntuación de 4.5 sobre 5 en Tripadvisor. ││ Entre sus productos destacan diversas modalidades de café gourmet, café para llevar, café expreso, café V60, ││ café batch, café en grano para comprar y cookies. ││ </summary> ││ │...│ URL: https://ccmagazine.es/es/nuestras-cafeterias-favoritas-de-madrid/ ││ ││ SUMMARY: ││ March 27, 2024 - Preciosa cafetería de especialidad (Nomad Coffee), en la que degustar de verdaderas ││ exquisiteces como su famoso bikini (sándwich de jamón y queso), en un espacio cuyo impecable interiorismo bien ││ merece una peregrinación. ││ ││ -------------------------------------------------------------------------------- ││ │╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
⏳ Researcher agent:|▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉| in 12.3s
╭───────────────────────────────────────── 🤖 Researcher Agent response ──────────────────────────────────────────╮│ ││ 🔧 Tool Call: think_tool ││ Args: { ││ "reflection": " ANÁLISIS DE RESULTADOS DE BÚSQUEDAS 4 Y 5: **Nueva información clave ││ encontrada:** THE FIX: - Fundado en 2018 en Madrid - Tostadores propios: The Fix Coffee Roasters - ││ Enfoque en calidad y evolución constante para explorar sabores - Proyecto basado en amor y respeto por el café ││ de calidad - Opiniones positivas en TripAdvisor sobre calidad del café y preparación - Mencionan ││ "exquisito" y "buena preparación" NOMAD COFFEE: - La búsqueda mostró principalmente Nomad Coffee ││ Barcelona (Passatge Sert, Born) - Café de origen único con carta en constante rotación - Granos tostados en ││ Barcelona - Calificación 4.5 sobre 5 en TripAdvisor (220+ opiniones) - Hay referencia a Nomad Coffee en ││ Madrid pero necesito más detalles específicos - También hay "Nomade Café" (diferente) en Lavapiés, ││ Madrid **Evaluación de progreso:** - Tengo buena información sobre 3 cafeterías principales: Hola Coffee, ││ The Fix, Toma Café - Hay confusión con Nomad Coffee (parece ser principalmente Barcelona) - He identificado ││ otras cafeterías mencionadas: HanSo Café, Misión Café, Acid Café, Geisha Coffee, etc. - Todavía faltan ││ opiniones específicas de usuarios sobre calidad del café **Brechas restantes:** 1. Necesito información más ││ detallada sobre HanSo Café, Misión Café, y otras cafeterías top 2. Buscar reseñas y opiniones específicas de ││ usuarios en español sobre calidad del café 3. Información sobre premios y reconocimientos ││ adicionales **Próxima acción:** Realizar una búsqueda final sobre opiniones de usuarios y reseñas de las ││ mejores cafeterías de especialidad de Madrid, enfocándome en calidad del café. Ya tengo suficiente información ││ base, esta última búsqueda completará con testimonios de usuarios. " ││ } ││ ID: toolu_01M8XomhoyPgXaUtF2jYAVwU │╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭───────────────────────────────────── 🔧 Researcher Agent - Should continue ─────────────────────────────────────╮│ Last message contains tool calls. Continuing to tool execution... │╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭─────────────────────────────────────── 🔧 Researcher Agent - Tool calls ────────────────────────────────────────╮│ Tool Call Name: Tool Calls ││ ID: tool_call_id ││ ││ Tool Call 1: ││ Name: think_tool ││ ID: toolu_01M8XomhoyPgXaUtF2jYAVwU ││ Type: tool_call ││ Args: ││ { ││ "reflection": " ANÁLISIS DE RESULTADOS DE BÚSQUEDAS 4 Y 5: **Nueva información clave ││ encontrada:** THE FIX: - Fundado en 2018 en Madrid - Tostadores propios: The Fix Coffee Roasters - ││ Enfoque en calidad y evolución constante para explorar sabores - Proyecto basado en amor y respeto por el café ││ de calidad - Opiniones positivas en TripAdvisor sobre calidad del café y preparación - Mencionan ││ "exquisito" y "buena preparación" NOMAD COFFEE: - La búsqueda mostró principalmente Nomad Coffee ││ Barcelona (Passatge Sert, Born) - Café de origen único con carta en constante rotación - Granos tostados en ││ Barcelona - Calificación 4.5 sobre 5 en TripAdvisor (220+ opiniones) - Hay referencia a Nomad Coffee en ││ Madrid pero necesito más detalles específicos - También hay "Nomade Café" (diferente) en Lavapiés, ││ Madrid **Evaluación de progreso:** - Tengo buena información sobre 3 cafeterías principales: Hola Coffee, ││ The Fix, Toma Café - Hay confusión con Nomad Coffee (parece ser principalmente Barcelona) - He identificado ││ otras cafeterías mencionadas: HanSo Café, Misión Café, Acid Café, Geisha Coffee, etc. - Todavía faltan ││ opiniones específicas de usuarios sobre calidad del café **Brechas restantes:** 1. Necesito información más ││ detallada sobre HanSo Café, Misión Café, y otras cafeterías top 2. Buscar reseñas y opiniones específicas de ││ usuarios en español sobre calidad del café 3. Información sobre premios y reconocimientos ││ adicionales **Próxima acción:** Realizar una búsqueda final sobre opiniones de usuarios y reseñas de las ││ mejores cafeterías de especialidad de Madrid, enfocándome en calidad del café. Ya tengo suficiente información ││ base, esta última búsqueda completará con testimonios de usuarios. " ││ } │╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
|▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉| in 0.0s
╭──────────────────────────────────── 🔧 Researcher Agent - Tool calls result ────────────────────────────────────╮│ Reflection recorded: ││ ANÁLISIS DE RESULTADOS DE BÚSQUEDAS 4 Y 5: ││ ││ **Nueva información clave encontrada:** ││ ││ THE FIX: ││ - Fundado en 2018 en Madrid ││ - Tostadores propios: The Fix Coffee Roasters ││ - Enfoque en calidad y evolución constante para explorar sabores ││ - Proyecto basado en amor y respeto por el café de calidad ││ - Opiniones positivas en TripAdvisor sobre calidad del café y preparación ││ - Mencionan "exquisito" y "buena preparación" ││ ││ NOMAD COFFEE: ││ - La búsqueda mostró principalmente Nomad Coffee Barcelona (Passatge Sert, Born) ││ - Café de origen único con carta en constante rotación ││ - Granos tostados en Barcelona ││ - Calificación 4.5 sobre 5 en TripAdvisor (220+ opiniones) ││ - Hay referencia a Nomad Coffee en Madrid pero necesito más detalles específicos ││ - También hay "Nomade Café" (diferente) en Lavapiés, Madrid ││ ││ **Evaluación de progreso:** ││ - Tengo buena información sobre 3 cafeterías principales: Hola Coffee, The Fix, Toma Café ││ - Hay confusión con Nomad Coffee (parece ser principalmente Barcelona) ││ - He identificado otras cafeterías mencionadas: HanSo Café, Misión Café, Acid Café, Geisha Coffee, etc. ││ - Todavía faltan opiniones específicas de usuarios sobre calidad del café ││ ││ **Brechas restantes:** ││ 1. Necesito información más detallada sobre HanSo Café, Misión Café, y otras cafeterías top ││ 2. Buscar reseñas y opiniones específicas de usuarios en español sobre calidad del café ││ 3. Información sobre premios y reconocimientos adicionales ││ ││ **Próxima acción:** ││ Realizar una búsqueda final sobre opiniones de usuarios y reseñas de las mejores cafeterías de especialidad de ││ Madrid, enfocándome en calidad del café. Ya tengo suficiente información base, esta última búsqueda completará ││ con testimonios de usuarios. ││ │╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
⏳ Researcher agent:|▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉| in 3.5s
╭───────────────────────────────────────── 🤖 Researcher Agent response ──────────────────────────────────────────╮│ ││ 🔧 Tool Call: tavily_search ││ Args: { ││ "query": "HanSo Café Misión Café Madrid opiniones Google reviews calidad café métodos preparación" ││ } ││ ID: toolu_017T1RxD5jXXkfsZ54TfhGFU │╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭───────────────────────────────────── 🔧 Researcher Agent - Should continue ─────────────────────────────────────╮│ Last message contains tool calls. Continuing to tool execution... │╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭─────────────────────────────────────── 🔧 Researcher Agent - Tool calls ────────────────────────────────────────╮│ Tool Call Name: Tool Calls ││ ID: tool_call_id ││ ││ Tool Call 1: ││ Name: tavily_search ││ ID: toolu_017T1RxD5jXXkfsZ54TfhGFU ││ Type: tool_call ││ Args: ││ { ││ "query": "HanSo Café Misión Café Madrid opiniones Google reviews calidad café métodos preparación" ││ } │╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
|▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉| in 13.4s
╭──────────────────────────────────── 🔧 Researcher Agent - Tool calls result ────────────────────────────────────╮│ Search results: ││ ││ ││ ││ --- SOURCE 1: ▷ HANSO Café《 Cafés, Carta y Opiniones 》 - Specialty Coffee --- ││ URL: https://myspecialtycoffee.es/madrid/hanso-cafe/ ││ ││ SUMMARY: ││ <summary> ││ HanSo Café es un establecimiento de café de especialidad en Madrid con dos ubicaciones céntricas: Corredera ││ Baja de San Pablo, 51 y Costanilla de los Ángeles, 7. Abierto de lunes a viernes de 9:00 a 20:00 y fines de ││ semana de 10:00 a 20:00, ofrece una experiencia acogedora y minimalista para amantes del café. Su menú incluye ││ cafés de origen de Etiopía, Colombia y Burundi, preparados mediante métodos como espresso, V60 y AeroPress, ││ además de bebidas alternativas como matcha latte y chai latte. Complementan su oferta con brunch y repostería ││ artesanal, con opciones vegetarianas y posiblemente veganas. HanSo también vende accesorios para preparar café ││ en casa, como AeroPress, V60 y molinillos Porlex Tall, disponibles en sus locales y tienda online. Organizan ││ catas y talleres para fomentar la comunidad cafetera en Madrid. Cuenta con una alta valoración en Google Maps ││ (4.5 estrellas con más de 1,000 reseñas) y TripAdvisor (4.5/5 con más de 500 opiniones), destacando la calidad ││ del café, el ambiente y la atención. Se recomienda consultar su Instagram para novedades y ofertas. │...│ --- SOURCE 3: HANSO CAFÉ, Madrid - Restaurante Opiniones, Carta y Fotos --- ││ URL: https://www.tripadvisor.es/Restaurant_Review-g187514-d5870249-Reviews-HanSo_Cafe-Madrid.html ││ ││ SUMMARY: ││ Hanso café un buena opción para un desayuno en modo fast y sin tantas exigencias. El coconut matcha toda una ││ experiencia . El sándwich nada extraordinario, ││ ││ -------------------------------------------------------------------------------- ││ │╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
⏳ Researcher agent:|▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉| in 15.0s
╭───────────────────────────────────────── 🤖 Researcher Agent response ──────────────────────────────────────────╮│ ││ 🔧 Tool Call: think_tool ││ Args: { ││ "reflection": " ANÁLISIS DE RESULTADOS DE LA BÚSQUEDA FINAL: **Nueva información clave sobre HanSo ││ Café:** - Dos ubicaciones: Corredera Baja de San Pablo, 51 y Costanilla de los Ángeles, 7 - Orígenes de café: ││ Etiopía, Colombia y Burundi - Métodos de preparación: espresso, V60, AeroPress - Calificación: 4.5 estrellas ││ en Google Maps (1,000+ reseñas) y TripAdvisor (500+ opiniones) - Organizan catas y talleres - Venden ││ accesorios para café (AeroPress, V60, molinillos Porlex Tall) - Opiniones destacadas: "café aromático", ││ "fuerte y suave", "gran café", "experiencia auténtica" **EVALUACIÓN COMPLETA DEL PROGRESO:** He ││ recopilado información sustancial sobre las mejores cafeterías de café de especialidad en Madrid: CAFETERÍAS ││ PRINCIPALES INVESTIGADAS: 1. Hola Coffee - información completa ✓ 2. The Fix - información completa ✓ 3. ││ Toma Café - información básica ✓ 4. HanSo Café - información completa ✓ OTRAS CAFETERÍAS IDENTIFICADAS: 5. ││ Misión Café 6. Acid Café 7. Geisha Coffee 8. Ruda Café 9. Pum Pum Café 10. Bianchi Kiosco Caffé 11. ││ Obrar 12. Santa Kafeina 13. Cafelito **CRITERIOS CUMPLIDOS:** ✓ Calidad del café: información sobre ││ origen de granos, procedencias ✓ Métodos de tostado: identificadas cafeterías con tostado propio ✓ Técnicas ││ de preparación: múltiples métodos documentados (V60, Chemex, AeroPress, espresso) ✓ Reconocimientos: Spanish ││ Barista Champion 2016 (Hola Coffee) ✓ Opiniones de usuarios: reseñas de TripAdvisor, Google Maps ✓ Fuentes en ││ español: todas las fuentes principales están en español **DECISIÓN:** Tengo información suficiente y de ││ calidad para proporcionar una respuesta completa y fundamentada. He realizado 6 búsquedas y tengo datos ││ detallados sobre las principales cafeterías, sus métodos, orígenes de café, reconocimientos y opiniones de ││ usuarios. Puedo proceder a entregar el informe final sin necesidad de más búsquedas. " ││ } ││ ID: toolu_01NzcxsSb1t2QkUQK5ydMmm3 │╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭───────────────────────────────────── 🔧 Researcher Agent - Should continue ─────────────────────────────────────╮│ Last message contains tool calls. Continuing to tool execution... │╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭─────────────────────────────────────── 🔧 Researcher Agent - Tool calls ────────────────────────────────────────╮│ Tool Call Name: Tool Calls ││ ID: tool_call_id ││ ││ Tool Call 1: ││ Name: think_tool ││ ID: toolu_01NzcxsSb1t2QkUQK5ydMmm3 ││ Type: tool_call ││ Args: ││ { ││ "reflection": " ANÁLISIS DE RESULTADOS DE LA BÚSQUEDA FINAL: **Nueva información clave sobre HanSo ││ Café:** - Dos ubicaciones: Corredera Baja de San Pablo, 51 y Costanilla de los Ángeles, 7 - Orígenes de café: ││ Etiopía, Colombia y Burundi - Métodos de preparación: espresso, V60, AeroPress - Calificación: 4.5 estrellas ││ en Google Maps (1,000+ reseñas) y TripAdvisor (500+ opiniones) - Organizan catas y talleres - Venden ││ accesorios para café (AeroPress, V60, molinillos Porlex Tall) - Opiniones destacadas: "café aromático", ││ "fuerte y suave", "gran café", "experiencia auténtica" **EVALUACIÓN COMPLETA DEL PROGRESO:** He ││ recopilado información sustancial sobre las mejores cafeterías de café de especialidad en Madrid: CAFETERÍAS ││ PRINCIPALES INVESTIGADAS: 1. Hola Coffee - información completa ✓ 2. The Fix - información completa ✓ 3. ││ Toma Café - información básica ✓ 4. HanSo Café - información completa ✓ OTRAS CAFETERÍAS IDENTIFICADAS: 5. ││ Misión Café 6. Acid Café 7. Geisha Coffee 8. Ruda Café 9. Pum Pum Café 10. Bianchi Kiosco Caffé 11. ││ Obrar 12. Santa Kafeina 13. Cafelito **CRITERIOS CUMPLIDOS:** ✓ Calidad del café: información sobre ││ origen de granos, procedencias ✓ Métodos de tostado: identificadas cafeterías con tostado propio ✓ Técnicas ││ de preparación: múltiples métodos documentados (V60, Chemex, AeroPress, espresso) ✓ Reconocimientos: Spanish ││ Barista Champion 2016 (Hola Coffee) ✓ Opiniones de usuarios: reseñas de TripAdvisor, Google Maps ✓ Fuentes en ││ español: todas las fuentes principales están en español **DECISIÓN:** Tengo información suficiente y de ││ calidad para proporcionar una respuesta completa y fundamentada. He realizado 6 búsquedas y tengo datos ││ detallados sobre las principales cafeterías, sus métodos, orígenes de café, reconocimientos y opiniones de ││ usuarios. Puedo proceder a entregar el informe final sin necesidad de más búsquedas. " ││ } │╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
|▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉| in 0.0s
╭──────────────────────────────────── 🔧 Researcher Agent - Tool calls result ────────────────────────────────────╮│ Reflection recorded: ││ ANÁLISIS DE RESULTADOS DE LA BÚSQUEDA FINAL: ││ ││ **Nueva información clave sobre HanSo Café:** ││ - Dos ubicaciones: Corredera Baja de San Pablo, 51 y Costanilla de los Ángeles, 7 ││ - Orígenes de café: Etiopía, Colombia y Burundi ││ - Métodos de preparación: espresso, V60, AeroPress ││ - Calificación: 4.5 estrellas en Google Maps (1,000+ reseñas) y TripAdvisor (500+ opiniones) ││ - Organizan catas y talleres ││ - Venden accesorios para café (AeroPress, V60, molinillos Porlex Tall) ││ - Opiniones destacadas: "café aromático", "fuerte y suave", "gran café", "experiencia auténtica" ││ ││ **EVALUACIÓN COMPLETA DEL PROGRESO:** ││ ││ He recopilado información sustancial sobre las mejores cafeterías de café de especialidad en Madrid: ││ ││ CAFETERÍAS PRINCIPALES INVESTIGADAS: ││ 1. Hola Coffee - información completa ✓ ││ 2. The Fix - información completa ✓ │...│ ✓ Opiniones de usuarios: reseñas de TripAdvisor, Google Maps ││ ✓ Fuentes en español: todas las fuentes principales están en español ││ ││ **DECISIÓN:** ││ Tengo información suficiente y de calidad para proporcionar una respuesta completa y fundamentada. He realizado ││ 6 búsquedas y tengo datos detallados sobre las principales cafeterías, sus métodos, orígenes de café, ││ reconocimientos y opiniones de usuarios. Puedo proceder a entregar el informe final sin necesidad de más ││ búsquedas. ││ │╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
⏳ Researcher agent:|▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉| in 1:07.6
╭───────────────────────────────────────── 🤖 Researcher Agent response ──────────────────────────────────────────╮│ # INFORME: LAS MEJORES CAFETERÍAS DE MADRID POR CALIDAD EXCEPCIONAL DEL CAFÉ ││ ││ ## INTRODUCCIÓN ││ ││ Madrid ha experimentado una auténtica revolución del café de especialidad en los últimos años, alejándose del ││ tradicional café torrefacto para abrazar una cultura cafetera basada en la calidad, trazabilidad y métodos ││ artesanales. El café de especialidad debe obtener **más de 80 puntos sobre 100** en evaluaciones de catadores ││ certificados para ser considerado de alta calidad. ││ ││ --- ││ ││ ## 🏆 TOP CAFETERÍAS DE ESPECIALIDAD EN MADRID ││ ││ ### 1. **HOLA COFFEE** ⭐⭐⭐⭐⭐ ││ ││ **Ubicación:** ││ - Cafetería principal: Calle del Doctor Fourquet, 33, Lavapiés ││ - Tostadora: Calle Sepúlveda, 109 ││ - Academia: Duque de Osuna, 8, Local 3 │...│ Todas estas cafeterías representan la excelencia en el café de especialidad madrileño, con evidencia ││ documentada de calidad superior, métodos artesanales, y reconocimiento tanto de expertos como de la comunidad ││ de usuarios. ││ ││ --- ││ ││ **Fecha de investigación**: Enero 2025 ││ **Fuentes**: En español, especializadas en café de especialidad ││ **Criterio**: Calidad excepcional del café verificada por múltiples fuentes │╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭──────────────────────────────── 🔧 Researcher Agent - Should compress research ─────────────────────────────────╮│ No tool calls found. Stopping research and compressing findings... │╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
⏳ Compressing Research:|▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉| in 1:32.0
╭─────────────────────────────────── 🤖 Researcher Agent - Compressed Research ───────────────────────────────────╮│ **Lista de consultas y llamadas a herramientas realizadas** ││ ││ 1. Búsqueda general: "mejores cafeterías café de especialidad Madrid 2024 calidad granos" ││ 2. Búsqueda específica: "Hola Coffee Madrid barista champion métodos preparación origen granos tueste" ││ 3. Búsqueda específica: "Toma Café Madrid specialty coffee métodos V60 Chemex origen granos" ││ 4. Búsqueda específica: "The Fix Coffee Madrid tostadores propios Argüelles métodos preparación calidad" ││ 5. Búsqueda específica: "Nomad Coffee Madrid café especialidad opiniones reseñas calidad granos" ││ 6. Búsqueda específica: "HanSo Café Misión Café Madrid opiniones Google reviews calidad café métodos ││ preparación" ││ ││ --- ││ ││ **Resultados completos** ││ ││ --- ││ ││ **Fuente 1: Las 25 mejores cafeterías de especialidad de Madrid** ││ El artículo presenta una guía detallada de las 27 mejores cafeterías de especialidad en Madrid, destacando la ││ evolución del café en la ciudad desde el predominio del café torrefacto hasta la actual fiebre por el café de │...│ [8] https://www.tripadvisor.es/Restaurant_Review-g187514-d14168047-Reviews-The_Fix-Madrid.html ││ [9] https://www.thefixmadrid.com/ ││ [10] https://www.instagram.com/thefixcoffeeroasters/?hl=en ││ [11] https://myspecialtycoffee.es/madrid/nomade-cafe/ ││ [12] https://the.specialtycoffeeguide.es/barcelona/nomad-coffee-bar/ ││ [13] https://ccmagazine.es/es/nuestras-cafeterias-favoritas-de-madrid/ ││ [14] https://myspecialtycoffee.es/madrid/hanso-cafe/ ││ [15] https://us.trip.com/restaurant/spain/madrid/detail/hanso-caf-19369878 ││ [16] https://www.tripadvisor.es/Restaurant_Review-g187514-d5870249-Reviews-HanSo_Cafe-Madrid.html │╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
⏳ Supervisor agent:|▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉| in 23.5s
╭──────────────────────────────── 🤖 Supervisor Agent tools - Call to think tool ─────────────────────────────────╮│ ││ 🔧 Tool Call: think_tool ││ Args: { ││ "reflection": " Análisis de los resultados de la investigación: **Información clave ││ encontrada**: La investigación ha proporcionado información exhaustiva sobre las mejores cafeterías de café ││ de especialidad en Madrid. He identificado varios establecimientos destacados con información detallada ││ sobre: 1. **Hola Coffee** - Muy bien documentado: - Tostador propio (Hola Coffee Roastery) - Granos ││ de micro-lotes y pequeños productores globales - Ajustan el tueste para resaltar notas específicas de cada ││ origen - Métodos: espresso, V60, Aeropress, Chemex - Dueño: Spanish Barista Champion 2016 - ││ Ubicación: Lavapiés (Doctor Fourquet, 33) - Fuentes: sitio oficial, guías especializadas, reseñas 2. ││ **The Fix Coffee Roasters** - Bien documentado: - Tostadores propios desde 2018 - Dos locales en ││ Argüelles - Enfoque en calidad y desarrollo de sabores - Excelente brunch - Reseñas positivas en ││ TripAdvisor sobre calidad del café - Fuentes: sitio oficial, guías, reseñas de usuarios 3. **Toma Café** ││ - Bien mencionado: - Tostadores propios - Control de todo el proceso - Varios locales en Madrid ││ - Cafetería pionera en el movimiento de café de especialidad 4. **HanSo Café** - Bien documentado: - Dos ││ ubicaciones céntricas - Cafés de origen: Etiopía, Colombia, Burundi - Métodos: espresso, V60, ││ AeroPress - 4.5 estrellas en Google Maps y TripAdvisor (más de 1,000 reseñas) - Organizan catas y ││ talleres 5. **Nomad Coffee** - Mencionado: - Referente en Barcelona (información mixta sobre Madrid) ││ - Cafés de origen único - Carta en rotación 6. Otras mencionadas: Misión Café, Ruda Café, Acid Café, ││ Geisha Coffee, Santa Kafeina, Cafelito, Obrar, Bianchi Kiosko Caffé, Pum Pum Café **Calidad de las ││ fuentes**: ✅ Sitios web oficiales (Hola Coffee, The Fix) ✅ Guías especializadas en café de especialidad en ││ español (Madrid Secreto, My Specialty Coffee, conCAFÉ, Specialty Coffee Guide) ✅ Plataformas de opinión en ││ español (TripAdvisor, Google Reviews mencionadas) ✅ Información sobre origen de granos, métodos de tostado y ││ preparación ✅ Reconocimientos (Spanish Barista Champion) **Evaluación de completitud**: La investigación ││ cubre todos los criterios solicitados: - ✅ Calidad del café (origen, frescura, tostadores propios) - ✅ ││ Métodos de tostado (artesanal, ajustado por origen) - ✅ Técnicas de preparación (V60, Chemex, AeroPress, ││ espresso) - ✅ Experiencia sensorial (perfiles de sabor, notas específicas) - ✅ Fuentes en español - ✅ ││ Múltiples cafeterías identificadas y evaluadas **Gaps menores**: - Podría tener más detalle sobre ││ experiencias sensoriales específicas (notas de cata) - Algunas cafeterías tienen menos información detallada ││ que otras **Decisión**: Tengo suficiente información de calidad para proporcionar una respuesta ││ exhaustiva. Las fuentes son confiables, están en español, incluyen sitios oficiales, guías especializadas y ││ opiniones de usuarios. He identificado las cafeterías más destacadas con detalles sobre origen de granos, ││ métodos de tostado, técnicas de preparación y reconocimientos. Puedo proceder a llamar a ResearchComplete. " ││ } ││ ID: toolu_01TJzHi1ZZ1wn2q5rjrvQJE9 │╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭──────────────────────────────── 🔧 Supervisor Agent tools - Research iterations ────────────────────────────────╮│ Research iterations: 3 │╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭──────────────────────────────────── 🔧 Supervisor Agent - think tool result ────────────────────────────────────╮│ Reflection recorded: ││ Análisis de los resultados de la investigación: ││ ││ **Información clave encontrada**: ││ ││ La investigación ha proporcionado información exhaustiva sobre las mejores cafeterías de café de especialidad ││ en Madrid. He identificado varios establecimientos destacados con información detallada sobre: ││ ││ 1. **Hola Coffee** - Muy bien documentado: ││ - Tostador propio (Hola Coffee Roastery) ││ - Granos de micro-lotes y pequeños productores globales ││ - Ajustan el tueste para resaltar notas específicas de cada origen ││ - Métodos: espresso, V60, Aeropress, Chemex ││ - Dueño: Spanish Barista Champion 2016 ││ - Ubicación: Lavapiés (Doctor Fourquet, 33) ││ - Fuentes: sitio oficial, guías especializadas, reseñas ││ ││ 2. **The Fix Coffee Roasters** - Bien documentado: ││ - Tostadores propios desde 2018 │...│ - Podría tener más detalle sobre experiencias sensoriales específicas (notas de cata) ││ - Algunas cafeterías tienen menos información detallada que otras ││ ││ **Decisión**: ││ Tengo suficiente información de calidad para proporcionar una respuesta exhaustiva. Las fuentes son confiables, ││ están en español, incluyen sitios oficiales, guías especializadas y opiniones de usuarios. He identificado las ││ cafeterías más destacadas con detalles sobre origen de granos, métodos de tostado, técnicas de preparación y ││ reconocimientos. Puedo proceder a llamar a ResearchComplete. ││ │╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
⏳ Supervisor agent:|▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉| in 2.5s
╭──────────────────────────────────── 🤖 Supervisor Agent tools - Tool Calls ─────────────────────────────────────╮│ ││ 🔧 Tool Call: ResearchComplete ││ Args: {} ││ ID: toolu_011hadAPLeHdbBaC23KkmNMh │╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭──────────────────────────────── 🔧 Supervisor Agent tools - Research iterations ────────────────────────────────╮│ Research iterations: 4 │╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭───────────────────────────────────────────── 🔧 Research complete ─────────────────────────────────────────────╮│ Exceeded iterations or no tool calls or research complete. Ending supervisor... Research iterations: 4 and ││ supervisor messages: [HumanMessage(content='Quiero investigar cuáles son las mejores cafeterías de Madrid ││ evaluadas principalmente por la calidad del café que ofrecen. Para ello, me interesa identificar cafeterías en ││ Madrid que destaquen por la excelencia de su café, considerando factores como el origen y la frescura de los ││ granos, los métodos de tostado, las técnicas de preparación y la experiencia sensorial (sabor, aroma, textura). ││ No he especificado preferencias sobre ambiente, precio, ubicación, opciones de comida u otros servicios, por lo ││ que estos aspectos pueden considerarse abiertos y secundarios en la investigación. Solicito priorizar fuentes ││ oficiales de las propias cafeterías, reseñas de expertos en café y plataformas reconocidas de opinión de ││ usuarios en español para fundamentar la selección..', additional_kwargs={}, response_metadata={}, ││ id='c88f5c72-567b-415b-a8aa-c20478442dcb'), AIMessage(content=[{'id': 'toolu_013wtQKkjpYhEH6Bv6PqxgSE', ││ 'input': {'reflection': ' Analizando la solicitud del usuario: **Pregunta central**: Identificar las ││ mejores cafeterías de Madrid evaluadas por la calidad del café. **Criterios específicos prioritarios**: - ││ Calidad del café (origen y frescura de granos) - Métodos de tostado - Técnicas de preparación - Experiencia ││ sensorial (sabor, aroma, textura) **Fuentes preferidas**: - Fuentes oficiales de las cafeterías - Reseñas ││ de expertos en café - Plataformas de opinión de usuarios en español **Enfoque de investigación**: Esta es ││ una pregunta de búsqueda de hechos y listado que no requiere comparación entre elementos independientes. La ││ investigación debe centrarse en: 1. Identificar cafeterías especializadas en café de calidad en Madrid 2. ││ Evaluar la calidad según los criterios mencionados 3. Usar fuentes en español y reconocidas **Decisión**: ││ Utilizar UN SOLO subagente especializado que pueda realizar una investigación exhaustiva sobre las mejores │...│ 'tool_use'}], additional_kwargs={}, response_metadata={'id': 'msg_01FQ5eJ5Wcq1iJNXzNihr1YC', 'model': ││ 'claude-sonnet-4-5-20250929', 'stop_reason': 'tool_use', 'stop_sequence': None, 'usage': {'cache_creation': ││ {'ephemeral_1h_input_tokens': 0, 'ephemeral_5m_input_tokens': 0}, 'cache_creation_input_tokens': 0, ││ 'cache_read_input_tokens': 0, 'input_tokens': 13287, 'output_tokens': 36, 'server_tool_use': None, ││ 'service_tier': 'standard'}, 'model_name': 'claude-sonnet-4-5-20250929', 'model_provider': 'anthropic'}, ││ id='lc_run--0005dac5-b0eb-4522-8404-faec1c1f5753-0', tool_calls=[{'name': 'ResearchComplete', 'args': {}, 'id': ││ 'toolu_011hadAPLeHdbBaC23KkmNMh', 'type': 'tool_call'}], usage_metadata={'input_tokens': 13287, ││ 'output_tokens': 36, 'total_tokens': 13323, 'input_token_details': {'cache_read': 0, 'cache_creation': 0, ││ 'ephemeral_5m_input_tokens': 0, 'ephemeral_1h_input_tokens': 0}})] │╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
Como podemos ver el agente supervisor ha hecho uso varias veces de la tool think_tool para reflexionar sobre la información que tiene y ha llamado al agente Researcher para que realice la investigación. Finalmente considera que ha encontrado suficiente información y llama a la tool ResearchComplete para terminar la investigación y generar el reporte final.
---
➡️ **Continúa en la Parte 3: agente Writer e informe final**, donde generaremos el informe final y ejecutaremos el deep researcher completo.