Skip to content

deep_research

deep_research

DeepResearchAgent -- multi-hop retrieval agent with cited reports.

Searches personal data across sources (email, Slack, documents) using native function calling (OpenAI tool_calls format), cross-references results, and produces narrative answers with inline source citations.

Classes

DeepResearchAgent

DeepResearchAgent(engine: InferenceEngine, model: str, *, tools: Optional[List[BaseTool]] = None, bus: Optional[EventBus] = None, max_turns: Optional[int] = None, temperature: Optional[float] = None, max_tokens: Optional[int] = None, interactive: bool = False, confirm_callback=None, system_prompt: Optional[str] = None, **kwargs: Any)

Bases: ToolUsingAgent

Multi-hop research agent with native function calling and citations.

Source code in src/openjarvis/agents/deep_research.py
def __init__(
    self,
    engine: InferenceEngine,
    model: str,
    *,
    tools: Optional[List[BaseTool]] = None,
    bus: Optional[EventBus] = None,
    max_turns: Optional[int] = None,
    temperature: Optional[float] = None,
    max_tokens: Optional[int] = None,
    interactive: bool = False,
    confirm_callback=None,
    system_prompt: Optional[str] = None,
    **kwargs: Any,
) -> None:
    super().__init__(
        engine,
        model,
        tools=tools,
        bus=bus,
        max_turns=max_turns,
        temperature=temperature,
        max_tokens=max_tokens,
        interactive=interactive,
        confirm_callback=confirm_callback,
    )