Documentation PHP & Laravel

Source selection

Choose quick or deep research, select AI answer engines by name, and save source lists.

Librarium::research($question)->only(['exa', 'claude']);
Librarium::research($question)->deep()->only(['exa', 'openai']);
Librarium::research($question)->only(['chatgpt', 'copilot']);

Quick is the default; deep selects research reports. Sources without a deep variant are skipped as no_deep_variant. Recovery support depends on the retrieval service: quick DataForSEO standard tasks and Firecrawl agent retrieval can also save recovery details.

Omit only() to use every configured research source, never engines. skip() removes names after expansion. Unknown and explicitly unconfigured names fail. Inspect Librarium::sources() or librarium:sources for language and variant availability.

Saved groups

// config/librarium.php
'groups' => ['editorial' => ['exa', 'claude']],
$plan = Librarium::research($question)->only(['editorial'])->dryRun();

Groups are source lists you save and choose by name. Their names must be distinct from sources and AI answer engines.

Cost and execution

Use maxCost('1.00') to limit which sources start; see costs and limits for the exact rules and billing caveats.

run() waits in the calling process; queue() dispatches one encrypted job. PHP’s runtime owns sequential driver execution, not the JS concurrency implementation. Both expose the same semantic Run shape, not interchangeable private runtimes.

AI answer-engine observations are surface, while research answers are api. Engines retrieved through the same service are correlated, not independent proof. Choose research sources by name to add an API comparison.