Integrações
CrewAI
Dê aos Agents do CrewAI uma Tool de pesquisa web movida pela Thunderbit
Agents do CrewAI precisam de conteúdo web fresco e limpo como entrada. Envolva /distill como uma Tool do CrewAI para que qualquer Agent na crew possa ler URLs sob demanda.
Instalação
pip install crewai httpxTool customizada
from crewai.tools import BaseTool
import httpx
API = "https://openapi.thunderbit.com/openapi/v1"
H = {"Authorization": "Bearer YOUR_API_KEY"}
class ReadUrlTool(BaseTool):
name: str = "read_url"
description: str = (
"Fetch a URL and return clean Markdown. Use for any web research task: "
"docs, articles, product pages, search results."
)
def _run(self, url: str) -> str:
resp = httpx.post(f"{API}/distill",
headers=H,
json={"url": url, "renderMode": "basic"},
timeout=60.0)
resp.raise_for_status()
return resp.json()["data"]["markdown"]Conectar a uma Crew
from crewai import Agent, Task, Crew
researcher = Agent(
role="Web Researcher",
goal="Gather authoritative information from public web pages",
backstory="Skilled at distilling long pages into key facts.",
tools=[ReadUrlTool()],
)
task = Task(
description="Research how vector databases compare in 2026.",
expected_output="A concise comparison table.",
agent=researcher,
)
Crew(agents=[researcher], tasks=[task]).kickoff()Dicas
- Para pesquisa multi-fonte, exponha
/batch/distillcomo uma segunda Tool (read_urls) para que o Agent possa fazer fan-out - Limite o Markdown retornado a ~8k tokens antes de entregá-lo ao Agent — evite inflar o contexto
Relacionados
Esta integração está sendo expandida com templates de crew multi-agent — volte em breve.