18#include <neograph/provider.h>
25namespace neograph::graph {
45 std::uint64_t clarify_max_output_tokens = 200;
46 std::uint64_t supervisor_max_output_tokens = 2048;
47 std::uint64_t researcher_max_output_tokens = 2048;
48 std::uint64_t compress_max_output_tokens = 2048;
49 std::uint64_t report_max_output_tokens = 4096;
50 std::uint64_t max_output_budget = 16384;
95 std::shared_ptr<Provider> provider,
96 std::vector<std::unique_ptr<Tool>> tools,
std::unique_ptr< GraphEngine > create_deep_research_graph(std::shared_ptr< Provider > provider, std::vector< std::unique_ptr< Tool > > tools, DeepResearchConfig cfg={})
Build the Deep Research graph.
Main graph execution engine with super-step loop and HITL support.
Typed per-call controls translated into the selected SDK provider family.
Configuration knobs for the Deep Research graph.
int max_supervisor_iterations
Supervisor planning rounds.
bool enable_human_review
When true, inserts a human_review node between final_report and __end__.
RetryPolicy retry
The node retry policy of every step that calls the model: by default twice, after 15 s and 30 s.
std::uint64_t brief_max_output_tokens
The output cap of each step.
int max_researcher_iterations
Inner LLM↔tools loop cap per researcher.
int max_concurrent_researchers
Cap per conduct_research fan-out batch.
ProviderControls controls
Controls every step sends with its model call (temperature, reasoning effort, routing,...
std::string model
The model every step calls. Required.
bool enable_clarification
When true, inserts a clarify node between __start__ and brief.
Retry policy for node execution with exponential backoff.