Objetivo
Completar el set de tools del agente a cinco o más, agregando dos fuentes de
datos nuevas (noticias tech y Wikipedia).
Contexto
Con una sola tool el agente no tiene decisiones interesantes que tomar. Con
cinco, la elección de herramienta se vuelve el comportamiento central del agente
y el enrutamiento se puede evaluar.
Criterios de aceptación
Capas afectadas
application/agents/research_agent/tools.py — cuatro tools nuevas
infrastructure/data/news.py — nuevo cliente
infrastructure/data/wikipedia.py — nuevo cliente
config.py — claves nuevas
.env.example
Decisiones a documentar
Fuente de noticias. NewsAPI tiene tier gratuito con límites de request y
retraso de 24h en el plan free. RSS con feedparser es gratis e ilimitado pero
requiere curar la lista de feeds. Elegir y justificar el trade-off.
¿query_vector_store como tool o como nodo fijo? Si es tool, el agente
decide si buscar localmente — más flexible, pero puede decidir mal y omitir
contexto disponible. Si es nodo fijo, siempre busca local primero. Decidir.
Objetivo de aprendizaje
Diseño de tools: cómo el docstring y el esquema determinan si el LLM elige bien.
Aprender que la calidad del enrutamiento depende más de la descripción de la tool
que del modelo.
Fuente de verdad para "el agente eligió bien"
Sin un criterio explícito, este issue no se puede cerrar. Definir en el issue,
antes de codear, las 4 queries de prueba y qué tool debería elegir cada una.
Fuera de alcance
Briefing, memoria, Docker.
Estimación
9h
Depende de
T19.
Objetivo
Completar el set de tools del agente a cinco o más, agregando dos fuentes de
datos nuevas (noticias tech y Wikipedia).
Contexto
Con una sola tool el agente no tiene decisiones interesantes que tomar. Con
cinco, la elección de herramienta se vuelve el comportamiento central del agente
y el enrutamiento se puede evaluar.
Criterios de aceptación
fetch_paper(paper_id)— recupera un paper específico por ID de arXivsearch_news(query)— noticias tech; cliente nuevo eninfrastructure/data/query_vector_store(query)— expone la búsqueda local como tool explícitaen vez de nodo fijo
explain_concept(concept)— definiciones vía Wikipedia APIelige la tool esperada en cada caso
config.pyvía Pydantic Settings, nuncahardcodeadas
.env.exampleactualizadoCapas afectadas
application/agents/research_agent/tools.py— cuatro tools nuevasinfrastructure/data/news.py— nuevo clienteinfrastructure/data/wikipedia.py— nuevo clienteconfig.py— claves nuevas.env.exampleDecisiones a documentar
Fuente de noticias. NewsAPI tiene tier gratuito con límites de request y
retraso de 24h en el plan free. RSS con
feedparseres gratis e ilimitado perorequiere curar la lista de feeds. Elegir y justificar el trade-off.
¿
query_vector_storecomo tool o como nodo fijo? Si es tool, el agentedecide si buscar localmente — más flexible, pero puede decidir mal y omitir
contexto disponible. Si es nodo fijo, siempre busca local primero. Decidir.
Objetivo de aprendizaje
Diseño de tools: cómo el docstring y el esquema determinan si el LLM elige bien.
Aprender que la calidad del enrutamiento depende más de la descripción de la tool
que del modelo.
Fuente de verdad para "el agente eligió bien"
Sin un criterio explícito, este issue no se puede cerrar. Definir en el issue,
antes de codear, las 4 queries de prueba y qué tool debería elegir cada una.
Fuera de alcance
Briefing, memoria, Docker.
Estimación
9h
Depende de
T19.